如何在Linux命令行中查找IP地址

时间:2020-03-05 15:26:46  来源:igfitidea点击:

ifconfig命令已被弃用。
如果我们今天尝试使用此命令,我们最有可能看到以下错误:

command not found: ifconfig

那么,你如何找到的IP地址呢?
让我告诉你该怎么做。

在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 forever
2: wlp58s0: mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 9c:b6:d0:d0:fc:b5 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.20/24 brd 192.168.1.255 scope global dynamic noprefixroute wlp58s0
valid_lft 5962sec preferred_lft 5962sec
inet6 fe80::bf14:21e3:4223:e5e4/64 scope link noprefixroute
valid_lft forever preferred_lft forever

在上面的输出中,我们可以忽略名为LO(环回)的第一个。
我们可以看到IP地址显示192.168.1.20。
它后面的24是子网掩码。

就是这样。
这就是在Linux命令行中显示主机系统的IP地址的方式。

如何在Linux终端找到的IP地址

想知道如何在Linux中获取的IP地址?
以下是3个命令行实用程序来查询DNS并获取IP地址和其他详细信息。

igi theitroadlinux手册

在Linux中找到系统的IP地址的其他方法

有更多方法可以检查Linux中的IP地址。
让我也向你展示他们。

使用hostname命令显示IP地址

hostname命令通常会显示系统的主机名。
它还可用于显示主机的IP地址:

hostname -I

它将简单地显示终端中主机的IP地址。

Hyman@theitroad:~$hostname -I
192.168.0.106

显示与nmcli工具的IP地址

大多数Linux发行版都带有网络管理器工具。
此工具具有名为NMCLI的命令行界面。

我们可以使用此NMCLI工具查看许多网络配置。

可以显示IP地址:

nmcli -p device show

我们应该在输出中看到IP地址。

Ifconfig怎么样?

实际上,我们仍然可以使用ifconfig命令。
它存在于Net-Tools封装中。
我们可以使用系统的包管理器安装它。
但是,不鼓励使用Net-Tools,因此我建议使用IP命令。

在基于Ubuntu的分布中,我们可以使用此命令安装Net-Tools:

sudo apt install net-tools

现在,我们可以使用ifconfig命令显示系统的IP地址。

ifconfig -a

输出将是这样的:

lo: 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 14855 bytes 3027297 (3.0 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 14855 bytes 3027297 (3.0 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp58s0: flags=4163 mtu 1500
inet 192.168.0.106 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::bf14:21e3:4223:e5e4 prefixlen 64 scopeid 0x20
ether 9c:b6:d0:d0:fc:b5 txqueuelen 1000 (Ethernet)
RX packets 88413 bytes 61851930 (61.8 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 56505 bytes 11409219 (11.4 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

同样,ifconfig已被弃用,不应使用。

查找系统的公共IP地址

到目前为止,我们所看到的是显示系统的私有IP地址。
我的意思是,如果我们使用网络路由器,我们可能在NAT后面。

系统的IP地址是私有的,仅用于与子网上的设备通信。
家庭/工作网络以外的任何设备将不能够找到你这个IP地址。
他们现在需要使用路由器的IP地址。
路由器识别设备并通过私有IP地址进行通信。

我们如何获得公共IP地址(路由器的IP地址)?
我们必须使用第三方工具。

例如,我们可以使用opendns使用主机命令并获取公共IP地址:

host myip.opendns.com resolver1.opendns.com

输出应该类似于:

Using domain server:
Name: resolver1.opendns.com
Address: 208.67.222.222#53
Aliases:
myip.opendns.com has address 202.91.87.117
Host myip.opendns.com not found: 3(NXDOMAIN)
Host myip.opendns.com not found: 3(NXDOMAIN)