1. 前言
本文主要讲解Linux系统中应该如何使用查看ip地址命令,很多Linux使用者应该发现,在新版的Linux发行版中,ifconfig已经不行了,不能使用了。那么,Linux查看ip地址应该使用什么命令呢?
如何在Linux命令行中查找系统的IP地址?对于许多Linux用户来说,这是一个常见的问题。
本教程适用于Ubuntu系统、Linux Mint系统、Deepin深度Linux系统、Fedora系统、Debian系统、Elementary OS系统、OpenSUSE系统、CentOS系统、RHEL系统,Arch Linux等等GNU Linux发行版。
linux查看ip地址命令ipconfig不行
2. 常用的查看IP地址的命令`ipconfig`没有找到?
几年前,ifconfig是了解Linux中IP地址的首选方法。不幸的是,ifconfig命令已被弃用。如果你今天尝试使用这个命令,你很可能会看到以下错误:
command not found: ifconfig
提示ifconfig命令没有找到。
那么,如何在Linux系统中查看IP地址呢?我来教你怎么做。
常用的查看IP地址的命令ifconfig没有找到?
3. 在Linux命令行中查看IP地址
您可以使用ip命令。ip命令是通用的,可以用于与网络相关的其他一些事情。
但只是为了显示IP地址,使用命令与IP addr, IP a或IP地址选项(都是相同的),如下所示:
ip address
你会看到这样的输出:
1: lo: 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 forever2: ens33: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:06:9b:34 brd ff:ff:ff:ff:ff:ff inet 192.168.201.138/24 brd 192.168.201.255 scope global noprefixroute dynamic ens33 valid_lft 1249sec preferred_lft 1249sec inet6 fe80::743d:d060:ccc9:b196/64 scope link noprefixroute valid_lft forever preferred_lft forever
在上面的输出中,您可以忽略第一个名为lo (loopback)的输出。您可以看到IP地址显示为192.168.201.138。后面的24是子网掩码。
在Linux命令行中使用ip addr查看IP地址
就是这样简单。这就是在Linux命令行中显示主机系统IP地址的方式。
4. 在Linux中查看系统IP地址的其他方法
在Linux中查看系统IP地址的其他方法
4.1 用`hostname`命令显示IP地址
hostname命令通常显示系统的主机名。也可以用来显示主机的IP地址:
hostname -I
它将简单地显示终端主机的IP地址。
192.168.201.138
用hostname命令显示IP地址
4.2 使用`nmcli`工具显示IP地址
大多数Linux发行版都带有网络管理器工具。这个工具有一个名为nmcli的命令行工具。您可以使用这个nmcli工具查看许多网络配置。
IP地址可以显示为:
nmcli -p device show
您应该在输出中看到IP地址。
使用nmcli工具显示IP地址
5. `ifconfig`命令为什么不行了?
实际上,您仍然可以使用ifconfig命令。它出现在net-tools包中。您可以使用系统的包管理器安装它。但是,不鼓励使用网络工具,所以我建议坚持使用ip命令。
在基于ubuntu的发行版中,您可以使用以下命令安装net-tools:
sudo apt install net-tools
CentOS/RHEL/Fedora系统
yum -y install net-tools
现在可以使用ifconfig命令查看Linux系统的IP地址。
[root@zcwyou ~]# ifconfig -a
ens33: flags=4163 mtu 1500 inet 192.168.201.138 netmask 255.255.255.0 broadcast 192.168.201.255 inet6 fe80::743d:d060:ccc9:b196 prefixlen 64 scopeid 0x20 ether 00:0c:29:06:9b:34 txqueuelen 1000 (Ethernet) RX packets 283 bytes 30572 (29.8 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 220 bytes 30007 (29.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Local Loopback) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
以使用ifconfig命令显示系统的IP地址
再一次提醒,ifconfig命令已经被弃用,不应该使用。
6. 额外提示:如何查找服务器的公网IP地址
到目前为止,您看到的是显示系统的私有IP地址。我的意思是如果你使用网络路由器,你很可能在NAT的后面。
系统的IP地址是私有的,仅用于与子网络上的设备通信。您的家庭/工作网络之外的任何设备都无法使用此IP地址找到您。他们现在需要你的路由器的IP地址。您的路由器识别您的设备,并通过私有IP地址通信。
如何获得您的公共IP地址(路由器的IP地址)?您必须使用第三方工具。
请参考本博客的另一篇文章
Linux系统怎么使用命令行查询公网IP地址(4种方法)
7. 总结
通过本文的学习,您应该了解如何在linux中正确使用查看ip地址命令了吧?也应该已经了解到为什么在新发行的Linux版本中,ifconfig命令不行的原因了吧?