前言
最近工作需要,需求为获取树莓派以太网ip
地址和mac地址,看了下golang的文档,发现net.InterfaceByName可以完成这个目标。
实现
//以太网网卡名称为eth0
inter, err := net.InterfaceByName("eth0")
if err != nil {
log.Fatalln(err)
}
//mac地址
fmt.Println(inter.HardwareAddr.String())
addrs, err := inter.Addrs()
if err != nil {
log.Fatalln(err)
}
//ip地址一个ip4一个ip6
for _, addr := range addrs {
fmt.Println(addr.String())
}
运行结果:
后记
当然,树莓派3代自带无线网卡,名字换为wlan0就可以获取无线网卡ip。