Support NDP proxying on bridge networks#1682
Conversation
- Proxying is enabled via the network label com.docker.network.bridge.ndp_proxy_interface=<interface> fixes moby#1159 Signed-off-by: Zvi "CtrlZvi" Effron <viz+GitHub@flippedperspective.com>
drivers/bridge/setup_ipv6.go
Outdated
| } | ||
|
|
||
| // Get current NDP all proxying setup | ||
| ndpProxyDataAll, err := ioutil.ReadFile(ndpProxyConfAll) |
There was a problem hiding this comment.
I see in most of bridge code we first check the flag value, and we set it to 1 only if needed.
I know we would do only one write if we set it regardless, but I think it is better to be consistent and check first.
There was a problem hiding this comment.
Do you mean to change https://github.com/mostolog/libnetwork/blob/907282e5195e7bfaf507da0375bcaaf95a618603/drivers/bridge/setup_ipv6.go#L139 ?:
if ndpProxyConfPerm[0] != '1' {
if err := ioutil.WriteFile(ndpProxyConfPath, []byte{'1', '\n'}, ndpProxyConfPerm); err != nil {
logrus.Warnf("Unable to enable NDP proxying for interface %s: %v", config.NDPProxyInterface,err)
}
}
There was a problem hiding this comment.
Yeah, to follow same logic we do for the default, for example
First read the value, then set it if not already set.
|
Thanks @mostolog for carrying this forward. |
|
You now also need a rebase |
96d114a to
3519a85
Compare
2c01239 to
35b5f32
Compare
|
Please fetch latest from upstream and rebase your changes. Otherwise we can't merge this. |
|
Already did git pull --rebase origin master and says it's up to date. |
|
Do this (As remote use the one which points to the github.com/docker/libnetwork repo, check with git remote -v) |
Signed-off-by: mostolog <mostolog@users.noreply.github.com>
|
Current branch patch-1 is up to date. |
| return fmt.Errorf("Unable to enable NDP proxying for interface %s: %v", config.NDPProxyInterface,err) | ||
| } | ||
| // Enable NDP proxying only if it is not already enabled | ||
| if ndpProxyConfPerm[0] != '1' { |
|
This has been in non-mergeable state for too long. I am taking care of the merge conflicts and the modification of |
Proxying is enabled via the network label com.docker.network.bridge.ndp_proxy_interface=
Closes #1159
Overrides #1316