无论我们是否知道,我们每天都在使用Internet协议(IP)。 例如,每当您在Web浏览器中键入网站名称或搜索词时,它都会查询该URL(或搜索引擎)的IP地址,然后加载该网站。
让我们将IP地址分为两类:私有和公共。 专用IP地址是您的WiFi盒(和公司内部网)提供的地址。 它们的范围是10.xxx , 172.16.xx-172.31.xx和192.168.xx ,其中x = 0到255。顾名思义,公用IP地址是“公用”的,您可以从任何地方访问它们在世界上。 每个网站都有一个唯一的IP地址,任何人和任何地方都可以访问; 被认为是公共IP地址。
IPv4地址的格式为xxxx ,其中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地址:
-
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
注意:您需要根据所使用的Linux发行版在系统上安装一些实用程序。 另外,某些提到的命令使用第三方网站来获取IP
在GNOME桌面中找到您的IP地址
如果您使用的是Linux,则可以使用一些基本的桌面实用程序来找到IP地址。 首先,进入“活动”屏幕,然后键入网络(用于有线连接)或Wi-Fi(用于无线)。
在“网络设置”窗口中,点击您所使用的网络旁边的Gear图标。
您的IP地址列在“网络”配置文件中。
在此示例屏幕快照中,我的IPv4地址为10.1.1.2,网关为10.1.1.1。
公共和私有IP地址
为了了解公共和私有IP地址的重要性,让我们看一下称为NAT(网络地址转换)和PAT(端口地址转换)的概念。
专用地址用于局域网(LAN)中。 它们绑定到特定网络。
公共地址是建立与其他网络(尤其是Internet的“万维网”(www))的外部连接所必需的。
NAT是私有IP向公共IP的转换,它由三种主要类型组成:静态,动态和PAT。 在静态NAT中,一个专用IP映射到一个公共IP。 ru ydco的一个常见示例是防火墙。 在动态NAT中,私有IP地址从公共IP地址池中映射到公共IP。
共有2 ^ 32个IPv4地址,其中只有约37亿是公用地址,实际上,人和设备的数量超过了IP地址。 但是我们还没有用完地址。 这是因为有一个称为PAT的概念,该概念允许使用端口号从多个(通常是所有)私有IP地址转换单个公共IP地址。 在此,不是将公共地址分配给每个设备,而是将单个公共地址分配给外部,并且将私有地址分配给内部网络内的每个设备。 PAT广泛用于住宅无线路由器,我们使用它来连接到Internet。
私有Ipv4地址
本地地址仅在内部网络中使用。
范围是10.xxx,172.16.xx-172.31.xx和192.168.xx(x是0到255之间的数字)。
用于局域网(LAN)。
无法全局访问,也无法全局搜索。
不是唯一的:同一私有IP可以在两个不同的网络中使用。
每个路由器都有一个专用IP地址,多个设备可以连接到该IP地址。 用户无需支付额外费用即可获得私人地址。
一些示例专用IP地址:10.0.0.4、172.16.4.5、192.168.9.8
公开的IPv4地址
公共地址用于连接到外部网络。
范围从0.0.0.0到255.255.255.255,私有IP地址和少量不可用或保留的IP除外。
用于连接互联网。
全球可访问,可以搜索。 这些通常用于确定地理位置。
在整个Internet上都是唯一的。
专用地址要花钱,因为它们是唯一的,受限制的并且可以从Internet访问。 每个网站都有一个映射到公共IP的域名。 例如,opensource.com的公共IP地址是54.204.39.132
用IP找到自己的方式
IP地址是通过网络到计算机的最直接的路由。 还有其他系统,例如DNS和Avahi,可帮助将一台计算机路由到另一台计算机,但是当由于某种原因这些计算机不可用或不合需要时,您可以使用IP协议。 现在您了解了为什么,更重要的是如何找到自己的。
编者注:本文最初发表于2018年5月,现已更新。
翻译自: https://opensource.com/article/18/5/how-find-ip-address-linux