Skip to content

Commit f6ad119

Browse files
committed
add debugging
1 parent 29e53dc commit f6ad119

File tree

3 files changed

+33
-4
lines changed

3 files changed

+33
-4
lines changed

platform/linux_platform.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1531,7 +1531,7 @@ func (p linux) DeleteARPEntryWithIP(ip string) error {
15311531
}
15321532

15331533
func (p linux) GetDefaultNetwork(ipv6 bool) (boshsettings.Network, error) {
1534-
return p.defaultNetworkResolver.GetDefaultNetwork(ipv6 bool)
1534+
return p.defaultNetworkResolver.GetDefaultNetwork(ipv6)
15351535
}
15361536

15371537
func (p linux) calculateEphemeralDiskPartitionSizes(diskSizeInBytes uint64, desiredSwapSizeInBytes *uint64) (uint64, uint64, error) {

platform/net/routes_searcher_unix.go

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,3 +76,26 @@ func (s cmdRoutesSearcher) SearchRoutes() ([]Route, error) {
7676

7777
return routes, nil
7878
}
79+
80+
func (s cmdRoutesSearcher) SearchIPv6Routes() ([]Route, error) {
81+
stdout, _, _, err := s.runner.RunCommandQuietly("ip", "-6", "r")
82+
if err != nil {
83+
return []Route{}, bosherr.WrapError(err, "Running route")
84+
}
85+
86+
routeEntries := strings.Split(stdout, "\n")
87+
routes := make([]Route, 0, len(routeEntries))
88+
for _, routeEntry := range routeEntries {
89+
if len(routeEntry) == 0 {
90+
continue
91+
}
92+
route, err := parseRoute(routeEntry)
93+
if err != nil {
94+
s.logger.Warn("SearchRoutes", "parseRoute error for route '%s': %s", routeEntry, err.Error())
95+
continue
96+
}
97+
routes = append(routes, route)
98+
}
99+
100+
return routes, nil
101+
}

settings/service.go

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ type settingsService struct {
4545
type DefaultNetworkResolver interface {
4646
// Ideally we would find a network based on a MAC address
4747
// but current CPI implementations do not include it
48-
GetDefaultNetwork() (Network, error)
48+
GetDefaultNetwork(ipv6 bool) (Network, error)
4949
}
5050

5151
//go:generate go run github.com/maxbrunsfeld/counterfeiter/v6 . PlatformSettingsGetter
@@ -257,7 +257,7 @@ func (s *settingsService) GetSettings() Settings {
257257

258258
s.logger.Debug(settingsServiceLogTag, "DEBUGGING NAME%s", networkName)
259259
s.logger.Debug(settingsServiceLogTag, "DEBUGGING NETWORK%s", network)
260-
s.logger.Debug(settingsServiceLogTag, "DEBUGGING PREFIX%s", network.prefix)
260+
s.logger.Debug(settingsServiceLogTag, "DEBUGGING PREFIX%s", network.Prefix)
261261

262262
if network.Prefix == "32" || network.Prefix == "128" || network.Prefix == "" {
263263
resolvedNetwork, err := s.resolveNetwork(network)
@@ -285,7 +285,13 @@ func (s *settingsService) resolveNetwork(network Network) (Network, error) {
285285
// Ideally this would be GetNetworkByMACAddress(mac string)
286286
// Currently, we are relying that if the default network does not contain
287287
// the MAC adddress the InterfaceConfigurationCreator will fail.
288-
resolvedNetwork, err := s.platform.GetDefaultNetwork()
288+
ipv6 := false
289+
290+
if network.Prefix == "128" {
291+
s.logger.Debug(settingsServiceLogTag, "DEBUGGING IPv6")
292+
ipv6 = true
293+
}
294+
resolvedNetwork, err := s.platform.GetDefaultNetwork(ipv6)
289295
if err != nil {
290296
s.logger.Error(settingsServiceLogTag, "Failed retrieving default network %s", err.Error())
291297
return Network{}, bosherr.WrapError(err, "Failed retrieving default network")

0 commit comments

Comments
 (0)