diff --git a/pkg/ip/link_linux.go b/pkg/ip/link_linux.go index 9e6f17c..103791b 100644 --- a/pkg/ip/link_linux.go +++ b/pkg/ip/link_linux.go @@ -146,6 +146,8 @@ func SetupVethWithName(contVethName, hostVethName string, mtu int, contVethMac s return net.Interface{}, net.Interface{}, err } + _, _ = sysctl.Sysctl(fmt.Sprintf("net/ipv6/conf/%s/accept_dad", contVethName), "0") + if err = netlink.LinkSetUp(contVeth); err != nil { return net.Interface{}, net.Interface{}, fmt.Errorf("failed to set %q up: %v", contVethName, err) } @@ -157,6 +159,7 @@ func SetupVethWithName(contVethName, hostVethName string, mtu int, contVethMac s return fmt.Errorf("failed to lookup %q in %q: %v", hostVethName, hostNS.Path(), err) } + _, _ = sysctl.Sysctl(fmt.Sprintf("net/ipv6/conf/%s/accept_dad", hostVethName), "0") if err = netlink.LinkSetUp(hostVeth); err != nil { return fmt.Errorf("failed to set %q up: %v", hostVethName, err) } diff --git a/plugins/main/bridge/bridge.go b/plugins/main/bridge/bridge.go index dbce424..e082166 100644 --- a/plugins/main/bridge/bridge.go +++ b/plugins/main/bridge/bridge.go @@ -293,6 +293,7 @@ func ensureBridge(brName string, mtu int, promiscMode, vlanFiltering bool) (*net // we want to own the routes for this interface _, _ = sysctl.Sysctl(fmt.Sprintf("net/ipv6/conf/%s/accept_ra", brName), "0") + _, _ = sysctl.Sysctl(fmt.Sprintf("net/ipv6/conf/%s/accept_dad", brName), "0") if err := netlink.LinkSetUp(br); err != nil { return nil, err