1 2 3 4 5 6 7 8 9 10 11 12
| func IpContains(cidr string, ip string) bool { _, ipnet, err := net.ParseCIDR(cidr) if err != nil { return false } ipAddr := net.ParseIP(ip) return ipnet.Contains(ipAddr) } func TestIpContains(tt *testing.T) { fmt.Println(IpContains("192.168.1.0/24", "192.168.1.1")) fmt.Println(IpContains("192.168.1.0/24", "192.168.2.1")) }
|
ip地址转换、CIDR/Netmask转换:
http://ip.chacuo.net/ipconvert