From e2ba2f82c0e95adb7ebcbbc179919cddbbc5f7cd Mon Sep 17 00:00:00 2001 From: Quentin McGaw Date: Sun, 13 Mar 2022 19:36:45 +0000 Subject: [PATCH] feat(routing): add IPv6 inbound routing --- internal/routing/inbound.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/internal/routing/inbound.go b/internal/routing/inbound.go index 4ca1c30d..c9d73f51 100644 --- a/internal/routing/inbound.go +++ b/internal/routing/inbound.go @@ -18,12 +18,12 @@ func (r *Routing) routeInboundFromDefault(defaultRoutes []DefaultRoute) (err err } defaultDestinationIPv4 := net.IPNet{IP: net.IPv4(0, 0, 0, 0), Mask: net.IPv4Mask(0, 0, 0, 0)} - // TODO IPv6 + defaultDestinationIPv6 := net.IPNet{IP: net.IPv6zero, Mask: net.IPMask(net.IPv6zero)} for _, defaultRoute := range defaultRoutes { defaultDestination := defaultDestinationIPv4 if defaultRoute.Family == netlink.FAMILY_V6 { - continue // skip IPv6 default routes + defaultDestination = defaultDestinationIPv6 } err := r.addRouteVia(defaultDestination, defaultRoute.Gateway, defaultRoute.NetInterface, inboundTable) @@ -37,12 +37,12 @@ func (r *Routing) routeInboundFromDefault(defaultRoutes []DefaultRoute) (err err func (r *Routing) unrouteInboundFromDefault(defaultRoutes []DefaultRoute) (err error) { defaultDestinationIPv4 := net.IPNet{IP: net.IPv4(0, 0, 0, 0), Mask: net.IPv4Mask(0, 0, 0, 0)} - // TODO IPv6 + defaultDestinationIPv6 := net.IPNet{IP: net.IPv6zero, Mask: net.IPMask(net.IPv6zero)} for _, defaultRoute := range defaultRoutes { defaultDestination := defaultDestinationIPv4 if defaultRoute.Family == netlink.FAMILY_V6 { - continue // skip IPv6 default routes + defaultDestination = defaultDestinationIPv6 } err := r.deleteRouteVia(defaultDestination, defaultRoute.Gateway, defaultRoute.NetInterface, inboundTable)