代码如下
func getClientInfo() {
interfaces, err := net.Interfaces()
if err != nil {
fmt.Println("获取网卡信息失败:", err)
return
}
for _, inter := range interfaces {
fmt.Printf("接口名字: %v\n", inter.Name)
fmt.Printf("MAC地址: %v\n", inter.HardwareAddr)
addrs, err := inter.Addrs()
if err != nil {
fmt.Println("获取地址信息失败:", err)
continue
}
for _, address := range addrs {
// 检查ip地址判断是否回环地址
if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
if ipnet.IP.To4() != nil {
if ipnet.IP.String() != "" {
fmt.Println(ipnet.IP.String())
}
}
}
}
fmt.Println("^^^^^^^^^^^^^^^^^^^^^^^^^^^^")
}
}