package utils import ( "encoding/binary" "net" "strings" ) func Long2ip(i uint32) net.IP { ip := make([]byte, 4) binary.BigEndian.PutUint32(ip, i) return ip } func Ip2long(ip net.IP) uint32 { ip = ip.To4() return binary.BigEndian.Uint32(ip) } // GetAddrIp 获取ip端口地址的ip数据 func GetAddrIp(s string) string { if strings.Contains(s, ":") { ss := s[:strings.LastIndex(s, ":")] if strings.HasPrefix(ss, "[") { return strings.Trim(ss, "[]") } return ss } return s }