When a endpoint's net.IPNet is loaded from store and converted
to a netip.Addr, unmap it so that iptables rules don't contain
IPv4-mapped IPv6 addresses.
Signed-off-by: Rob Murray <rob.murray@docker.com>
| ... | ... |
@@ -1231,6 +1231,7 @@ func (d *driver) CreateEndpoint(ctx context.Context, nid, eid string, ifInfo dri |
| 1231 | 1231 |
func (ep *bridgeEndpoint) netipAddrs() (v4, v6 netip.Addr) {
|
| 1232 | 1232 |
if ep.addr != nil {
|
| 1233 | 1233 |
v4, _ = netip.AddrFromSlice(ep.addr.IP) |
| 1234 |
+ v4 = v4.Unmap() |
|
| 1234 | 1235 |
} |
| 1235 | 1236 |
if ep.addrv6 != nil {
|
| 1236 | 1237 |
v6, _ = netip.AddrFromSlice(ep.addrv6.IP) |