介绍ux 命令行中查找 IP 地址在 Lin

几年前,ifconfig 是 Linux 中最受欢迎的查询本机 IP 地址的方法。但是现如今 ifconfig 命令已经被启用了。在某些 Linux 发行版上已经不用了。那么,除此以外还有什么别的方式来查询 IP 地址呢?今天我们就来了解一下这个问题。
在 Linux 命令行中查找 IP 地址

现在,可以使用 ip 命令来查询 IP 地址。ip 命令是通用的,可以用于网络相关的其他一些事情。

不过,要显示 IP 地址,可以使用 ip addr,ip a 或者 ip address,如下所示命令:

1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever2: wlp58s0: mtu 1500 qdisc mq state UP group default qlen 1000link/ether 9c:b6:d0:d0:fc:b5 brd ff:ff:ff:ff:ff:ffinet 192.168.1.20/24 brd 192.168.1.255 scope global dynamic noprefixroute wlp58s0valid_lft 5962sec preferred_lft 5962secinet6 fe80::bf14:21e3:4223:e5e4/64 scope link noprefixroutevalid_lft forever preferred_lft forever

在上面的输出中,你可以忽略第一个名为lo(loopback)的输出,除此以外,可以看到 IP 地址显示为192.168.1.20。它后面的24是子网掩码。

在 Linux 命令行中查找 IP 地址介绍

如上所示,可以使用 ip 命令获取主机的 IP 地址。除此以外,还可以通过 bash 脚本获取 IP 地址。

获取 IP 地址的其他方法

除了使用 ip 命令以外,还有其他的几个方法来获取 IP 地址。

使用 hostname 命令查看IP地址

hostname 命令通常用于显示系统的主机名,也可以用于显示主机的IP地址:

hostname

上述命令会显示主机的 IP 地址:​

$ hostname -I192.168.0.106
使用 nmcli 工具显示 IP 地址

大多数 Linux 发行版都有一个 Network Manager 的工具,该工具有一个名为 nmcli 的命令行界面,可以使用此 nmcli 工具来查看网络配置。比如可以使用如下命令查看 IP 地址:

nmcli
那么,ifconfig 呢?

实际上,我们仍然可以使用 ifconfig 命令。如果系统中不存在这个命令,我们可以手动安装,它存在于网络工具包中。

在基于 Ubuntu 的 Linux 中,可以使用如下命令安装网络工具:

sudo

安装完成后,就可以使用 ifconfig 命令来查询 IP 地址了:

ifconfig

输出如下:​

lo: flags=73 mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10loop txqueuelen 1000 (Local Loopback)RX packets 14855 bytes 3027297 (3.0 MB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 14855 bytes 3027297 (3.0 MB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0wlp58s0: flags=4163 mtu 1500inet 192.168.0.106 netmask 255.255.255.0 broadcast 192.168.0.255inet6 fe80::bf14:21e3:4223:e5e4 prefixlen 64 scopeid 0x20ether 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 0TX packets 56505 bytes 11409219 (11.4 MB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

不过,因为 ifconfig 命令已经被弃用,所以我们还是不鼓励使用网络工具,建议使用 ip 命令。

查询公网IP地址

上面我们介绍的都是查询本地内网IP地址的方法,也就是局域网的 IP 地址。

内网 IP 地址是局限在局域网中的地址,用于与局域网中的其他设备进行通信。局域网之外的其他设备无法通过这个 IP 地址找到你。我们所说的公网地址一般是指路由器的IP地址,路由器通过内网 IP 与你的设备通信。

那么,如何获取公网IP地址呢?这就需要借助于第三方工具了。

比如,可以使用 OpenDNS 的 host 命令来获取公网 IP 地址。

host myip.opendns.com resolver1.opendns.com

其输出如下:​

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

以上就是本次分享全部内容。

上一篇:LEDE软路由内网穿透的新工具DDNSTO 实现远程访问内网多个群晖
下一篇:多给孩子吃这“6种海鱼” 肉嫩刺少 保护视力促进大脑发育