mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-29 22:46:12 +00:00
proxy/userspace: honor listen IP address as host IP if given
Allows the proxier to be used on an interface that's not the default route, otherwise hostIP gets set to the default route interface even if that's not what the user intended. If listen IP isn't given, falls back to previous behavior.
This commit is contained in:
parent
a9bf44101b
commit
8a58f62fe0
@ -166,9 +166,15 @@ func NewCustomProxier(loadBalancer LoadBalancer, listenIP net.IP, iptables iptab
|
||||
return nil, ErrProxyOnLocalhost
|
||||
}
|
||||
|
||||
hostIP, err := utilnet.ChooseHostInterface()
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to select a host interface: %v", err)
|
||||
// If listenIP is given, assume that is the intended host IP. Otherwise
|
||||
// try to find a suitable host IP address from network interfaces.
|
||||
var err error
|
||||
hostIP := listenIP
|
||||
if hostIP.Equal(net.IPv4zero) {
|
||||
hostIP, err = utilnet.ChooseHostInterface()
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to select a host interface: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
err = setRLimit(64 * 1000)
|
||||
|
Loading…
Reference in New Issue
Block a user