如何在Linux系统下快速查询Ubuntu服务器的公网IP地址?
- 内容介绍
- 文章标签
- 相关推荐
为什么需要知道 Ubuntu 服务器的公网 IP?
在日常运维中。您可能会遇到以下痛点:
- 需要通过 SSH 或远程桌面连接服务器,却不清楚对外提供的 IP 地址。其实,
- 配置防火墙、安全组或端口转发时必须填写正确的公网 IP。
- 搭建 Web 服务、邮件服务或游戏服务器时域名解析依赖于准确的公网 IP。
- 频繁登录云网站控制台查看 IP 十分繁琐,且易受界面变化影响。
掌握快速查询公网 IP 的方法可以让您在这些场景下省时省力,避免因信息不准导致的连接失败。
使用命令行工具一键获取公网 IP
1. curl + 公共 IP 查询服务
最直观且无需额外安装的方式是利用已经内置的 curl 访问专门返回纯 IP 的网站:
$ curl ifconfig.me
$ curl ident.me
$ curl icanhazip.com
$ curl api.ipify.org
这些服务直接返回您当前出口的公网 IPv4 地址。
2. wget 同上原理
wget 能以一样的方式获取内容。适合喜欢该工具的使用者:
$ wget -qO- ifconfig.me
$ wget -qO- ident.me
3. dig + OpenDNS 或 Google 公共 DNS 查询
dig 能够直接向支持返回客户端 IP 的 DNS 服务器请求自己的地址:
$ dig @resolver1.opendns.com myip.opendns.com +short
$ dig @ns1-1.akamaitech.net ANY whoami.akamai.net +short
4. host 或 nslookup
$ host myip.opendns.com resolver1.opendns.com
$ nslookup myip.opendns.com resolver1.opendns.com
本地工具查看
- ip addr / ifconfig 查看本机接口地址
$ ip -4 addr show eth0 | grep inet
# 或
$ ifconfig eth0 | grep 'inet '
如果您的 Ubuntu 主机位于路由器或云网站后面这些命令只会显示内 network 地址,此时仍需要借助上述外部查询方式获得真正的公网 IP。
-graphical 方式
- 通过 “设置” → “网络” 查看
- 打开“程序设置”。
- /选择“Wi‑Fi”或“有线”。
- 点击当前连接右侧齿轮图标 → “详细信息”。 其实,
- 小技巧:将查询命令做成别名或脚本
若您经常需要检查 IP,可把以下任意一条命令写入 ~/.bashrc 或 ~/.zshrc 中形成别名:
# 放入 ~/.bashrc source ~/.bashrc # 生效后直接执行 myip 得到结果
/或者创建一个可执行脚本 ~/bin/myip :
/这样以后只需在终端输入 myip 一键得到当前公网 IPv4 地址。
- 常见问题 FAQ
/
/-
问:为什么有时候得到的是内部IP?,答这方面,这说明您所在的环境已经做了 NAT 防火墙或位于路由器后方。按理说,此时需要依赖上述外部服务才能获取真正对外可见的IP。/
问:如果我的服务器只有 IPv6 地址怎么办?/strong/>
答:多数上述查询站点也支持 IPv6,只需在 curl/wget 前加 -6 参数或使用专门返回 IPv6 的站点如 curl -6 ifconfig.co。/
问:脚本执行时出现超时怎么办?/strong/>
答:可以尝试更换其他查询站点,或者增加超时时间:curl --max-time 5 ifconfig.me。/
掌握以上几种方法后无论是终端党还是图形界面爱好者。都能在几秒钟内得到 Ubuntu 服务器的确切公网 IP 地址,从而轻松应对远程连接、防火墙配置、域名解析等实际场景中的痛点。祝您运维顺畅,
。为什么需要知道 Ubuntu 服务器的公网 IP?
在日常运维中。您可能会遇到以下痛点:
- 需要通过 SSH 或远程桌面连接服务器,却不清楚对外提供的 IP 地址。其实,
- 配置防火墙、安全组或端口转发时必须填写正确的公网 IP。
- 搭建 Web 服务、邮件服务或游戏服务器时域名解析依赖于准确的公网 IP。
- 频繁登录云网站控制台查看 IP 十分繁琐,且易受界面变化影响。
掌握快速查询公网 IP 的方法可以让您在这些场景下省时省力,避免因信息不准导致的连接失败。
使用命令行工具一键获取公网 IP
1. curl + 公共 IP 查询服务
最直观且无需额外安装的方式是利用已经内置的 curl 访问专门返回纯 IP 的网站:
$ curl ifconfig.me
$ curl ident.me
$ curl icanhazip.com
$ curl api.ipify.org
这些服务直接返回您当前出口的公网 IPv4 地址。
2. wget 同上原理
wget 能以一样的方式获取内容。适合喜欢该工具的使用者:
$ wget -qO- ifconfig.me
$ wget -qO- ident.me
3. dig + OpenDNS 或 Google 公共 DNS 查询
dig 能够直接向支持返回客户端 IP 的 DNS 服务器请求自己的地址:
$ dig @resolver1.opendns.com myip.opendns.com +short
$ dig @ns1-1.akamaitech.net ANY whoami.akamai.net +short
4. host 或 nslookup
$ host myip.opendns.com resolver1.opendns.com
$ nslookup myip.opendns.com resolver1.opendns.com
本地工具查看
- ip addr / ifconfig 查看本机接口地址
$ ip -4 addr show eth0 | grep inet
# 或
$ ifconfig eth0 | grep 'inet '
如果您的 Ubuntu 主机位于路由器或云网站后面这些命令只会显示内 network 地址,此时仍需要借助上述外部查询方式获得真正的公网 IP。
-graphical 方式
- 通过 “设置” → “网络” 查看
- 打开“程序设置”。
- /选择“Wi‑Fi”或“有线”。
- 点击当前连接右侧齿轮图标 → “详细信息”。 其实,
- 小技巧:将查询命令做成别名或脚本
若您经常需要检查 IP,可把以下任意一条命令写入 ~/.bashrc 或 ~/.zshrc 中形成别名:
# 放入 ~/.bashrc source ~/.bashrc # 生效后直接执行 myip 得到结果
/或者创建一个可执行脚本 ~/bin/myip :
/这样以后只需在终端输入 myip 一键得到当前公网 IPv4 地址。
- 常见问题 FAQ
/
/-
问:为什么有时候得到的是内部IP?,答这方面,这说明您所在的环境已经做了 NAT 防火墙或位于路由器后方。按理说,此时需要依赖上述外部服务才能获取真正对外可见的IP。/
问:如果我的服务器只有 IPv6 地址怎么办?/strong/>
答:多数上述查询站点也支持 IPv6,只需在 curl/wget 前加 -6 参数或使用专门返回 IPv6 的站点如 curl -6 ifconfig.co。/
问:脚本执行时出现超时怎么办?/strong/>
答:可以尝试更换其他查询站点,或者增加超时时间:curl --max-time 5 ifconfig.me。/
掌握以上几种方法后无论是终端党还是图形界面爱好者。都能在几秒钟内得到 Ubuntu 服务器的确切公网 IP 地址,从而轻松应对远程连接、防火墙配置、域名解析等实际场景中的痛点。祝您运维顺畅,
。
