犯罪嫌疑人X
链接@Dsafds 有答案。这里是为了历史,所以你不必自己通读线程。代码是 Mikio Hara 的,我做了一些小的修改。func lastAddr(n *net.IPNet) (net.IP, error) { // works when the n is a prefix, otherwise... if n.IP.To4() == nil { return net.IP{}, errors.New("does not support IPv6 addresses.") } ip := make(net.IP, len(n.IP.To4())) binary.BigEndian.PutUint32(ip, binary.BigEndian.Uint32(n.IP.To4())|^binary.BigEndian.Uint32(net.IP(n.Mask).To4())) return ip, nil}