Go语言网络编程基础与实践
1. IP地址与子网掩码操作
在网络编程中,处理IP地址和子网掩码是基础操作。下面的Go代码展示了如何解析IP地址、获取默认子网掩码、计算网络地址等操作:
func main() {
if len(os.Args) != 2 {
log.Fatalln("Usage: %s dotted-ip-addr\n", os.Args[0])
}
dotAddr := os.Args[1]
addr := net.ParseIP(dotAddr)
if addr == nil {
log.Fatalln("nil Invalid address")
}
mask := addr.DefaultMask()
network := addr.Mask(mask)
ones, bits := mask.Size()
fmt.Println("Address is ", addr.String(),
"\nDefault mask length is ", bits,
"\nLeading ones count is ", ones,
"\nMask is (hex) ", mask.String(),
"\nNetwork is ", network.String())
derivedMask := net.IPv4Mask(255, 255, 0, 0) // working on mask
fmt.Printf("Network using
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



