hotfix(routing): unmap ipv4-in-ipv6 when converting
This commit is contained in:
@@ -39,5 +39,5 @@ func netIPToNetipAddress(ip net.IP) (address netip.Addr) {
|
|||||||
if !ok {
|
if !ok {
|
||||||
panic(fmt.Sprintf("converting %#v to netip.Addr failed", ip))
|
panic(fmt.Sprintf("converting %#v to netip.Addr failed", ip))
|
||||||
}
|
}
|
||||||
return address
|
return address.Unmap()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -46,10 +46,7 @@ func (r *Routing) assignedIP(interfaceName string, family int) (ip netip.Addr, e
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
// Ensure we don't return an IPv6-wrapped IPv4 address
|
return ip, nil
|
||||||
// since netip.Address String method works differently than
|
|
||||||
// net.IP String method for this kind of addresses.
|
|
||||||
return ip.Unmap(), nil
|
|
||||||
}
|
}
|
||||||
return ip, fmt.Errorf("%w: interface %s in %d addresses",
|
return ip, fmt.Errorf("%w: interface %s in %d addresses",
|
||||||
errInterfaceIPNotFound, interfaceName, len(addresses))
|
errInterfaceIPNotFound, interfaceName, len(addresses))
|
||||||
|
|||||||
Reference in New Issue
Block a user