插件窝 干货文章 linux怎么查看本机外网ip

linux怎么查看本机外网ip

公网 curl bash ifconfig 666    来源:    2025-05-14

在 Linux 系统中查看本机外网 IP 有多种方法,以下是几种常用的方式:


1. 使用 curl 查询公网 IP 服务

(需联网,最常用方法)

curl ifconfig.me

或使用其他公共服务:

curl icanhazip.com
curl ipinfo.io/ip
curl api.ipify.org

说明
- 这些公共服务会返回你的公网 IP(部分服务可能在国内访问不稳定)。 - 如果命令报错,可能需先安装 curl(安装命令:sudo apt install curlsudo yum install curl)。


2. 使用 dig 查询 DNS 记录

(适用于动态 DNS 场景)

dig +short myip.opendns.com @resolver1.opendns.com

说明
- 需要安装 dnsutilsbind-utils 包(部分系统默认未安装)。


3. 使用 wget 替代 curl

wget -qO- ifconfig.me

4. 检查路由器/WAN IP(间接方法)

如果主机位于内网,外网 IP 实际是路由器的 IP,可通过以下方式查看:

# 查看网关 IP(通常是路由器内网 IP)
ip route | grep default

# 登录路由器管理界面查询 WAN IP

5. 使用 ipifconfig 查看内网 IP

(仅显示内网 IP,非公网 IP)

ip addr
# 或
ifconfig

注意:这些命令只会显示本地网卡配置的 IP(如 192.168.x.x10.x.x.x),不是外网 IP。


常见问题

  • 无网络连接:上述方法均需联网,离线无法获取公网 IP。
  • 返回空白/超时:可能是公共服务不可用,尝试更换其他服务(如 ip.sbident.me)。
  • 多级 NAT:某些网络环境(如企业网/云服务器)可能有多层 NAT,实际公网 IP 需咨询网络管理员。

一键脚本示例

#!/bin/bash
echo "Public IP: $(curl -s ifconfig.me)"

选择最适合你的方法即可!