是否有内置函数来计算结构的广播地址net.IPNet?
1 回答
犯罪嫌疑人X
TA贡献2080条经验 获得超4个赞
链接@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
}
- 1 回答
- 0 关注
- 116 浏览
添加回答
举报
0/150
提交
取消