Networking 如何获取(IPv4)net.IPNet的广播地址?
是否有一个内置函数来计算Networking 如何获取(IPv4)net.IPNet的广播地址?,networking,go,Networking,Go,是否有一个内置函数来计算net.IPNetstruct的广播地址?链接@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("do
net.IPNet
struct的广播地址?链接@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
}
链接@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
}
也许林克能帮你吗?我看了那条线的开头,但还没有看完货物所在的地方。谢谢也许林克能帮你吗?我看了那条线的开头,但还没有看完货物所在的地方。谢谢