Browse code

Unmap IPv4 addresses loaded from store

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>

Rob Murray authored on 2025/08/28 00:37:00
Showing 1 changed files
... ...
@@ -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)