mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-03 09:22:44 +00:00
Merge pull request #7721 from smarterclayton/fix_ipv4
Select IPv4-only from host interfaces
This commit is contained in:
commit
cd7a0e5a9f
@ -397,6 +397,7 @@ func chooseHostInterfaceNativeGo() (net.IP, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
i := 0
|
i := 0
|
||||||
|
var ip net.IP
|
||||||
for i = range intfs {
|
for i = range intfs {
|
||||||
if flagsSet(intfs[i].Flags, net.FlagUp) && flagsClear(intfs[i].Flags, net.FlagLoopback|net.FlagPointToPoint) {
|
if flagsSet(intfs[i].Flags, net.FlagUp) && flagsClear(intfs[i].Flags, net.FlagLoopback|net.FlagPointToPoint) {
|
||||||
addrs, err := intfs[i].Addrs()
|
addrs, err := intfs[i].Addrs()
|
||||||
@ -404,24 +405,25 @@ func chooseHostInterfaceNativeGo() (net.IP, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if len(addrs) > 0 {
|
if len(addrs) > 0 {
|
||||||
// This interface should suffice.
|
for _, addr := range addrs {
|
||||||
break
|
if addrIP, _, err := net.ParseCIDR(addr.String()); err == nil {
|
||||||
|
if addrIP.To4() != nil {
|
||||||
|
ip = addrIP.To4()
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ip != nil {
|
||||||
|
// This interface should suffice.
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if i == len(intfs) {
|
if ip == nil {
|
||||||
return nil, err
|
return nil, fmt.Errorf("no acceptable interface from host")
|
||||||
}
|
}
|
||||||
glog.V(4).Infof("Choosing interface %s for from-host portals", intfs[i].Name)
|
glog.V(4).Infof("Choosing interface %s for from-host portals", intfs[i].Name)
|
||||||
addrs, err := intfs[i].Addrs()
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
glog.V(4).Infof("Interface %s = %s", intfs[i].Name, addrs[0].String())
|
|
||||||
ip, _, err := net.ParseCIDR(addrs[0].String())
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return ip, nil
|
return ip, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user