菜鸟科技网

CentOS查看IP命令有哪些?

最常用且推荐的方法(适用于 CentOS 7 及以上版本)

这些是现代 Linux 系统的标准方式,信息清晰,易于使用。

CentOS查看IP命令有哪些?-图1
(图片来源网络,侵删)

ip addr 命令(推荐)

ip 命令是 ifconfig 的替代品,功能更强大,是当前所有主流 Linux 发行版的首选。

基本用法:

ip addr

输出示例:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:12:34:56 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.101/24 brd 192.168.1.255 scope global noprefixroute dynamic ens33
       valid_lft 86400sec preferred_lft 86400sec
    inet6 fe80::20c:29ff:fe12:3456/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

如何解读输出:

CentOS查看IP命令有哪些?-图2
(图片来源网络,侵删)
  • 1: lo: lo 是 Loopback(回环)接口,IP 地址 0.0.1 是本机地址。
  • 2: ens33: ens33 是你的第一块以太网网卡(具体名称可能不同,如 ens32, eth0)。
  • inet 192.168.1.101/24: 这就是你网卡的 IPv4 地址168.1.101 是地址,/24 是子网掩码。
  • inet6 fe80::...: 这是网卡的 IPv6 地址

常用技巧:

  • 只显示 IPv4 地址:
    ip -4 addr show
    # 或者简写
    ip -4 a
  • 只显示 IPv6 地址:
    ip -6 addr show
    # 或者简写
    ip -6 a
  • 只显示活跃且已配置 IP 的接口:
    ip addr show | grep -E 'inet|UP'
  • 获取单个 IP 地址(一行一个):
    ip -4 addr show | grep -oP '(?<=inet\s)\d+(\.\d+){3}'

    这个命令会直接输出 168.1.101,非常适合在脚本中使用。

nmcli 命令(NetworkManager 的命令行工具)

如果你的 CentOS 系统使用 NetworkManager(默认是),nmcli 是管理网络连接和查看信息的最佳工具,信息非常结构化。

基本用法:

nmcli device show

输出示例:

设备类型:  ethernet
接口名称:  ens33
通用路径:  /sys/devices/pci0000:00/0000:00:1f.6/net/ens33
MAC 地址 (MAC):  00:0C:29:12:34:56
...
IP4.地址[1]:                         192.168.1.101/24
IP4.网关:                            192.168.1.1
IP4.DNS[1]:                          8.8.8.8
IP4.DNS[2]:                          8.8.4.4
...
IP6.地址[1]:                         fe80::20c:29ff:fe12:3456/64

常用技巧:

  • 简洁模式,只显示 IP 地址:
    nmcli -g ip4.addresses device show ens33
    # 输出: 192.168.1.101/24
  • 显示所有连接的简要信息:
    nmcli connection show

传统方法(适用于 CentOS 6 或旧版系统)

这些方法在旧版系统中非常常见,在新版系统中仍然可用,但已逐渐被 ipnmcli 取代。

ifconfig 命令

ifconfig 是一个非常经典的老牌命令,但在新版的 CentOS 中默认没有安装。

安装 ifconfig

# CentOS 7/8
sudo yum install net-tools

基本用法:

ifconfig

输出示例:

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.101  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe12:3456  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:12:34:56  txqueuelen 1000  (Ethernet)
        RX packets 15233  bytes 15343654 (14.6 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8451  bytes 1015421 (990.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 56  bytes 4864 (4.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 56  bytes 4864 (4.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

如何解读输出:

  • inet 192.168.1.101: 这就是你的 IPv4 地址。
  • netmask 255.255.255.0: 子网掩码。

查看特定网卡:

ifconfig ens33

hostname 命令

这个命令主要用于显示或设置系统的主机名,但也可以用来显示 IP 地址。

基本用法:

hostname -I

输出示例:

168.1.101 10.0.0.5

这个命令会以空格分隔,列出所有配置在主机上的 IPv4 地址,非常简洁。


特殊情况:查看公网 IP 地址

有时你需要知道服务器在互联网上的公网 IP,而不是内网 IP。

使用 curl 访问在线服务

这是最简单直接的方法,需要系统安装 curl(通常已预装)。

curl ifconfig.me
# 或者
curl ipinfo.io
# 或者
curl cip.cc

输出示例:

45.67.89

这个 45.67.89 就是你的服务器出口到互联网的公网 IP 地址。

使用 wget 访问在线服务

如果你的系统有 wget 而没有 curl,也可以使用它。

wget -qO- ifconfig.me

总结与对比

命令 适用场景 优点 缺点
ip addr 日常查看、脚本编写(推荐) 信息全面,是现代标准,功能强大 输出信息较多,需要简单过滤
nmcli NetworkManager 环境下精确管理 信息结构化,适合管理网络连接 对简单查看来说略显复杂
ifconfig 旧版系统 (CentOS 6) 或习惯使用 经典命令,熟悉直观 新版系统默认不安装,功能相对 ip 较弱
hostname -I 快速获取所有 IP 地址 极其简洁,一行搞定 不显示子网掩码等其他信息
curl ifconfig.me 获取公网 IP 地址 简单快速,无需登录路由器 依赖网络连接和外部服务

给新手的建议:

  • 日常查看:直接使用 ip addr
  • 需要快速复制 IP:使用 hostname -I
  • 管理网络:学习使用 nmcli
  • 获取公网 IP:使用 curl ifconfig.me
分享:
扫描分享到社交APP
上一篇
下一篇