CentOS如何查看服务器的IP地址?最简单的命令是什么?

在管理和维护 CentOS 服务器时,了解如何查看其当前 IP 地址是一项基础且至关重要的技能,无论是进行网络配置、故障排查,还是允许远程访问,IP 地址都是定位和连接服务器的关键标识,本文将详细介绍在 CentOS 系统中查看 IP 地址的多种方法,从现代推荐的命令行工具到传统方式,并辅以实例和解释,帮助您全面掌握这一技能。

CentOS如何查看服务器的IP地址?最简单的命令是什么?

使用 ip 命令:现代且首选的方法

ip 命令是 iproute2 软件包的一部分,它取代了陈旧的 net-tools(包含 ifconfig),成为现代 Linux 发行版中管理和查看网络信息的标准工具,它功能强大,信息详尽,是 CentOS 7 及更高版本中的首选方法。

查看所有网络接口的 IP 地址

最直接和常用的方式是使用 ip addr 或其简写形式 ip a,这个命令会列出系统中所有网络接口(包括虚拟和物理接口)的详细信息。

ip addr

或者:

ip a

输出示例:

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 fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:3a:4b:5c brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe3a:4b5c/64 scope link 
       valid_lft forever preferred_lft forever

如何解读输出:

  • 1: lo2: ens33:这是网络接口的名称。lo 是环回接口(本地测试用),ens33 是一个典型的以太网接口名称。
  • inet 192.168.1.100/24:这就是我们最关心的 IPv4 地址。168.1.100 是 IP 地址,/24 表示子网掩码(相当于 255.255.255.0)。
  • inet6 fe80::...:这是 IPv6 地址。
  • link/ether 00:0c:29:...:这是接口的 MAC 地址(物理地址)。

查看特定网络接口的 IP 地址

如果服务器有多个网络接口,您可以通过指定接口名称来精简输出,只查看特定接口的信息。

ip addr show ens33

或者简写为:

ip a s ens33

这将只显示 ens33 接口的详细信息,便于快速定位。

使用 ifconfig 命令:传统的方法

ifconfig 是一个非常经典的命令,许多长期使用 Linux 的管理员都习惯于它,在 CentOS 7 及以后的版本中,ifconfig 默认不再安装,因为它已被 ip 命令所取代。

安装 net-tools

如果您仍然偏好使用 ifconfig,需要先安装 net-tools 软件包。

sudo yum install net-tools

使用 ifconfig 查看 IP

安装完成后,可以直接运行 ifconfig 命令。

CentOS如何查看服务器的IP地址?最简单的命令是什么?

ifconfig

输出示例:

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe3a:4b5c  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:3a:4b:5c  txqueuelen 1000  (Ethernet)
        RX packets 12345  bytes 1234567 (1.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6789  bytes 987654 (964.8 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 12  bytes 1024 (1.0 KiB)
        TX packets 12  bytes 1024 (1.0 KiB)

如何解读输出:

  • ens33:网络接口名称。
  • inet 192.168.1.100:IPv4 地址。
  • netmask 255.255.255.0:子网掩码。
  • broadcast 192.168.1.255:广播地址。

其他便捷方法

除了上述两种主要方法,还有一些命令可以快速获取 IP 地址,特别适合在脚本中使用。

使用 hostname 命令

hostname 命令的 -I(大写 i)选项可以专门用于显示所有网络接口的 IP 地址,非常简洁。

hostname -I

输出示例:

168.1.100 172.17.0.1

这个命令会列出所有非回路的 IP 地址,以空格分隔。

使用 nmcli 命令

nmcli 是 NetworkManager 的命令行工具,如果您的系统使用 NetworkManager 来管理网络,这是一个非常方便的选择。

nmcli device show

这个命令会显示所有设备的详细信息,包括 IP 地址,如果想查看特定设备:

nmcli device show ens33

在输出中找到 IP4.ADDRESS[1] 字段,其值就是您的 IPv4 地址。

命令对比与选择

为了更清晰地展示这些命令的区别,下表对 ip addrifconfig 进行了简要对比。

特性 ip addr (iproute2) ifconfig (net-tools)
推荐度 高 (现代标准) 低 (已弃用)
默认安装 是 (CentOS 7+) 否 (需手动安装)
信息详尽度 非常高,支持多种地址族 相对基础
脚本支持 优秀,输出格式化 一般
IPv6 支持 原生、完整 支持,但不如 ip 命令直观

小编总结建议: 对于新用户和日常管理,强烈建议使用 ip addr 命令,它功能更强大,是未来的趋势,只有在特定环境或个人习惯下,才考虑使用 ifconfig

CentOS如何查看服务器的IP地址?最简单的命令是什么?

区分内网 IP 与公网 IP

需要注意的是,上述所有命令查看到的 IP 地址通常是您的服务器在局域网(LAN)中的内网 IP(Private IP),168.x.xx.x.x16-31.x.x,这个地址用于在局域网内部通信。

如果您需要知道服务器在互联网上的公网 IP(Public IP),则需要向外部服务请求,最简单的方法是使用 curlwget 命令查询一个专门返回 IP 地址的服务。

curl ifconfig.me

或者:

curl ip.sb

这些命令会返回您的服务器当前所使用的公网 IP 地址。


相关问答 FAQs

问题 1:为什么我的新安装的 CentOS 系统里 ifconfig 命令提示 “command not found”?

解答: 这是因为从 CentOS 7 开始,系统默认使用 iproute2 工具包(包含 ip 命令)来替代老旧的 net-tools 工具包(包含 ifconfig 命令)。ifconfig 被认为已过时,因此不再预装,如果您确实需要使用它,可以通过 sudo yum install net-tools 命令手动安装,但更推荐的做法是学习和使用 ip addr 命令。

问题 2:我如何快速只获取 IP 地址,而不要其他任何信息,方便用在脚本里?

解答: 有几种方法可以实现,最简洁的是使用 hostname -I,它会直接列出所有 IP 地址,另一个常用的方法是结合 ip 命令和文本处理工具,ip a s ens33 | grep 'inet ' | awk '{print $2}' | cut -d/ -f1,这个命令链会找到 ens33 接口,过滤出包含 inet 的行,然后提取第二个字段(IP地址/掩码),最后用 cut 命令只保留 IP 地址部分,对于获取公网 IP,curl ifconfig.me 是最直接的方式。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-10-06 12:01
下一篇 2025-10-06 12:07

相关推荐

  • 服务器 本地建设 云托管_托管云账户

    服务器托管涉及在数据中心安置服务器,本地建设指在公司自有设施内部署IT资源。云托管是利用第三方云服务商提供的基础设施进行服务器管理,而托管云账户则是在云平台上创建和管理用户账户。

    2024-07-01
    002
  • 服务器搭建html_HTML输入

    在搭建服务器时,需要确保服务器硬件和软件配置正确。HTML输入通常涉及编写HTML代码并将其上传到服务器上,以便用户可以通过浏览器访问。在编写HTML代码时,需要注意标签的正确使用、页面结构的清晰以及内容的可读性。

    2024-07-10
    0064
  • 如何搭建一个流媒体服务器工作站?

    摘要:本文主要介绍了如何搭建一个流媒体服务器,包括服务器的选择、配置以及工作站的设置。还提供了一些可选的流媒体服务器搭建方案,以满足不同需求。

    2024-08-03
    006
  • i386架构的CentOS系统现在还值得使用吗?

    在信息技术发展的长河中,i386架构的CentOS系统扮演了一个重要且独特的角色,它曾是无数服务器、工作站和嵌入式设备的稳定基石,以其源自Red Hat Enterprise Linux(RHEL)的血统,为32位硬件平台提供了企业级的可靠性和稳定性,随着技术的飞速迭代,这个曾经辉煌的组合已逐渐淡出主流视野,成……

    2025-10-02
    001

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

QQ-14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信