mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
Revert "Update network.go since To16 converts the IP address ip up to a 16-byte representation. If ip is not an IP address (it is the wrong length), To16 returns nil. (#5134)"
This reverts commit 838578b55f
.
This commit is contained in:
parent
c6b1dc7058
commit
bb9269f3f7
|
@ -15,13 +15,18 @@ func DetectedHostAddress() string {
|
|||
return ""
|
||||
}
|
||||
|
||||
if v4Address := selectIpV4(netInterfaces); v4Address != "" {
|
||||
if v4Address := selectIpV4(netInterfaces, true); v4Address != "" {
|
||||
return v4Address
|
||||
}
|
||||
|
||||
if v6Address := selectIpV4(netInterfaces, false); v6Address != "" {
|
||||
return v6Address
|
||||
}
|
||||
|
||||
return "localhost"
|
||||
}
|
||||
func selectIpV4(netInterfaces []net.Interface) string {
|
||||
|
||||
func selectIpV4(netInterfaces []net.Interface, isIpV4 bool) string {
|
||||
for _, netInterface := range netInterfaces {
|
||||
if (netInterface.Flags & net.FlagUp) == 0 {
|
||||
continue
|
||||
|
@ -33,12 +38,18 @@ func selectIpV4(netInterfaces []net.Interface) string {
|
|||
|
||||
for _, a := range addrs {
|
||||
if ipNet, ok := a.(*net.IPNet); ok && !ipNet.IP.IsLoopback() {
|
||||
if isIpV4 {
|
||||
if ipNet.IP.To4() != nil {
|
||||
return ipNet.IP.String()
|
||||
}
|
||||
} else {
|
||||
if ipNet.IP.To16() != nil {
|
||||
return ipNet.IP.String()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue