🗣 Wd提问: go获取ip地址
🤖 Ai回答: 在Go语言中,获取IP地址通常涉及到处理网络连接或查询系统信息。这里提供两种常见的方法来获取IP地址:
1、获取本地机器的所有IPv4和IPv6地址
你可以使用`net`包中的`Interfaces`和`Addrs`函数来获取本机所有接口(包括回环地址)上的IP地址。
go
package main
import (
fmt
net
)
func main() {
// 获取所有网络接口
ifaces, err := net.Interfaces()
if err != nil {
fmt.Println(Error getting interfaces:, err)
return
}
for _, iface := range ifaces {
// 忽略回环接口
if iface.Flags&net.FlagUp == 0 iface.Flags&net.FlagLoopback != 0 {
continue
}
addrs, err := iface.Addrs()
if err != nil {
fmt.Printf(Error getting addresses for interface %s: %v\n, iface.Name, err)
continue
}
for _, addr := range addrs {
var ip net.IP
switch v := addr.(type) {
case *net.IPNet:
ip = v.IP
case *net.IPAddr:
ip = v.IP
}
// 根据需要打印IPv4或IPv6地址
if ip.To4() != nil {
fmt.Printf(Interface %s: IPv4 %s\n, iface.Name, ip.String())
} else if ip.To16() != nil {
fmt.Printf(Interface %s: IPv6 %s\n, iface.Name, ip.String())
}
}
}
}
这段代码会列出所有活动的、非回环网络接口及其IP地址。
2、获取外部可见的IP地址
获取外部可见的IP地址通常需要向外部服务发送请求,并解析响应以提取你的公共IP地址。一个常用的免费服务是 `https://api.ipify.org`。
go
package main
import (
fmt
io/ioutil
net/http
)
func main() {
resp, err := http.Get(https://api.ipify.org)
if err != nil {
fmt.Println(Error getting IP:, err)
return
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println(Error reading response body:, err)
return
}
fmt.Println(Your public IP address is:, string(body))
}
这段代码通过HTTP GET请求访问`https://api.ipify.org`,该服务返回请求者的公共IP地址。请注意,使用外部服务获取IP可能会有隐私和安全方面的考虑。
以上就是用Go语言获取IP地址的两种基本方法:一种是获取本地所有接口的IP地址,另一种是获取外部可访问的公共IP地址。
📣 商家广告:





0
IP地址: 193.253.179.134
搜索次数: 0
提问时间: 2025-11-03 15:06:13
🛒 域名购买:
ff.biz
xm6.net
862.net.cn
zr.gs
ftp.ink
9.bj.cn
pai.pw
ww.cq.cn
4.bj.cn
979.net.cn
❓️ 热门提问:
搬瓦工中文网
聚名网域名交易
poi网站如何注册
网吧服务器多少钱一台
宿迁服务器
goo域名
网站服务器拓扑图
health域名
靠谱的国外vps
美国主机评论
豌豆Ai站群搜索引擎系统
🌐 域名评估:
ro.gs
oksw.cn
pp.jx.cn
rr.tj.cn
nn.nm.cn
gbsh.cn
g.jl.cn
ygyyy.com
27.gold
kepet.cn
⛏ 最新挖掘:
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜
🖌 热门作画:
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊:
🔗 友情链接:
北京品牌推广
Top U.S. search engines
ai提问
🧰 站长工具:
Ai工具 whois查询 搜索
📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。