如何在Linux中查找IP地址

每个网站都有一个唯一的公共IP地址,任何人都可以从任何地方访问。
更新于: 2022-03-03 00:30:09

背景

不管我们是否意识到,我们每天都在使用互联网协议(IP)。例如,每当您在web浏览器中键入网站名称或搜索词时,它都会查找该URL(或搜索引擎)的IP地址,然后加载该网站。

让我们将IP地址分为两类:私有和公共。专用IP地址是您的WiFi设备(和公司内部网)提供的地址。它们在10的范围内。x、 x.x,172.16。x、 x-172.31。x、 x和192.168。x、 x,其中x=0到255。顾名思义,公共IP地址是“公共的”,你可以从世界任何地方找到它们。每个网站都有一个唯一的IP地址,任何人都可以从任何地方访问;这被认为是一个公共IP地址。

此外,有两种类型的IP地址:IPv4和IPv6。

IPv4地址的格式为x.x.x.x,其中x=0到255。有2^32(约40亿)个可能的IPv4地址。

IPv6地址的格式更复杂,使用十六进制数。位的总数是128,这意味着有2^128-340个未确定的位-可能的IPv6地址。IPv6的引入是为了解决可预见的IPv4地址在不久的将来耗尽的问题。

作为一名网络工程师,我建议不要与任何人共享您机器的公共IP地址。您的WiFi路由器有一个公共IP,即WAN(广域网)IP地址,对于连接到该WiFi的任何设备都是相同的。连接到同一WiFi的所有设备都具有通过上述范围在本地识别的专用IP地址。例如,我的笔记本电脑的IP地址是192.168.0.5,我的手机的IP地址是192.168.0.8。这些都是私有IP地址,但都有相同的公共IP地址。

公网 ip 地址的获取

以下命令将获取IP地址列表,以查找计算机的公共IP地址:

curl ifconfig.me
curl -4/-6 icanhazip.com
curl ipinfo.io/ip
curl api.ipify.org
curl checkip.dyndns.org
dig +short myip.opendns.com @resolver1.opendns.com
host myip.opendns.com resolver1.opendns.com
curl ident.me
curl bot.whatismyipaddress.com
curl ipecho.net/plain

内网 ip 的获取

ifconfig -a
ip addr (ip a)
hostname -I | awk '{print $1}'
ip route get 1.2.3.4 | awk '{print $7}'
(Fedora) Wifi-Settings→ click the setting icon next to the Wifi name that you are connected to → Ipv4 and Ipv6 both can be seen
nmcli -p device show

参考

https://opensource.com/article/18/5/how-find-ip-address-linux