ip addr show
** 或 **ip a
**:显示所有网络接口及其 IP 信息。,2. **ifconfig
**:传统命令(部分系统需安装 net-tools 包)。,3. **hostname -I
**:快速显示主机的所有非回环 IPv4 地址(注意 -I
是大写 i)。在Linux系统中查看主机IP地址是网络配置和故障排除的基础操作,无论是本地管理服务器还是远程连接,掌握多种查看IP的方法至关重要,以下是详细的操作指南,涵盖常用命令及场景:
查看本地IP(内网地址)
使用 ip
命令(推荐)
这是现代Linux发行版(如Ubuntu 18.04+、CentOS 7+)的首选工具:
ip addr show
- 操作步骤:
- 打开终端(Ctrl+Alt+T)。
- 输入命令后回车,查看所有网络接口。
- 定位正在使用的接口(如
eth0
有线网卡 或wlan0
无线网卡)。 - 在对应接口的
inet
行找到IPv4地址(168.1.100/24
)。
示例输出:
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
使用 ifconfig
命令(传统方式)
需安装 net-tools
包(部分新系统默认未安装):
sudo apt install net-tools # Debian/Ubuntu sudo yum install net-tools # CentOS/RHEL ifconfig
- 在输出中查找
eth0
或wlan0
的inet
字段。
查看特定接口的IP
ip addr show eth0 # 查看有线网络 ip addr show wlp3s0 # 查看无线网络(接口名可能不同)
查看公网IP(外网地址)
当主机通过路由器连接互联网时,需区分内网IP和公网IP:
通过在线服务查询
curl ifconfig.me # 最简方式 curl icanhazip.com # 备用方案 curl ipinfo.io/ip # 返回纯IP无广告
- 注意:需主机已连接互联网。
使用DNS工具
dig +short myip.opendns.com @resolver1.opendns.com
其他实用方法
使用 hostname
命令
查看主机名关联的IP:
hostname -I # 显示所有内网IP(推荐) hostname -i # 仅显示第一个IP(可能不准确)
通过网关路由信息
ip route show default
输出中的 via
后是网关IP,dev
后是当前使用的接口(如 dev eth0
)。
常见问题解决
- 接口未激活:
若接口显示DOWN
,启用它:sudo ip link set eth0 up
- 无IP地址(未分配):
检查DHCP服务或手动配置:sudo dhclient eth0 # 重新获取IP
- 命令不存在:
安装缺失工具:sudo apt install iproute2 curl dnsutils # Debian/Ubuntu sudo yum install iproute curl bind-utils # CentOS/RHEL
总结建议
- 日常使用 →
ip addr show
或hostname -I
- 公网IP查询 →
curl ifconfig.me
- 脚本自动化 →
hostname -I
(无额外输出,适合脚本)
安全提示:公网IP暴露可能带来风险,避免在公开场合展示,内网IP仅在局域网内有效,不可用于外部连接。
引用说明:
本文参考Linux官方文档(man7.org)及网络管理最佳实践,验证环境包括Ubuntu 22.04、CentOS Stream 9,命令行选项基于GNU coreutils 9.1及iproute2 5.19,公网查询服务来自第三方API,响应结果以服务商为准。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/19124.html