INNER CODE UNIT · Go
getLocalIPs
Edgio/vflow · disc/disc.go:210
func getLocalIPs() (map[string]struct{}, error) {
ips := make(map[string]struct{})
ifs, err := net.Interfaces()
if err != nil {
return nil, err
}
for _, i := range ifs {
addrs, err := i.Addrs()
if err != nil || i.Flags != 19 {
continue
}
for _, addr := range addrs {
ip, _, _ := net.ParseCIDR(addr.String())
ips[ip.String()] = struct{}{}
}
}