IP地址是现代网络通讯的重要组成部份。在本指南中,我们将向大家展现linux怎样获得IP地址?
IP地址是所谓的TCP/IP协议的一部份。这是一个网络标准,它定义了如何在计算机网络中连接在一起的计算机之间打包和传输数据。实际上有两种类型的IP地址,公共IP地址和私有IP地址。
公共IP地址和私有IP地址之间的差异:
互联网服务提供商 (ISP) 分配公共IP地址,这类似于我们的公共家庭地址。当计算机连接到专用网络时,它们每一个都会取得一个专用IP地址,以便在该网络中使用。专用IP地址由我们的路由器或网络中的其他装备分配。反过来,路由器可使用网络地址转换(NAT) 将传入数据包路由到网络上的正确装备。
下面,小编详细给大家分析下linux获得IP地址的方法:
一、如何找到公共IP地址?
我们可使用各种连接到Internet的命令来发现我们的公共IP地址,以便为我们运行查询。
1、使用dig命令获得公共IP地址
该dig命令是用于Linux的DNS查找实用程序。使用dig,我们可以通过连接到服务器来查找我们的公共IP地址。服务器提供商托管有助于发现Internet上网络IP地址的DNS服务器。在bash、sh或其他终端中运行以下命令。
$ dig +short myip.opendns.com @resolver1.opendns.com
作为输出,应当从服务器提供商解析器取回我们的公共IP地址。我们的IP地址将是一系列格式为 216.58.216.164(这是Google的众多 IP地址之一)的数字组,或是此类的变体。
2、使用Curl返回我们的公共IP地址
该curl命令是另外一个网络实用程序,可以让我们与Internet上的服务器进行交互。可使用以下选项查询服务器以返回我们的公共IP:
$ curl http://ifconfig.me/ip
或$ curl http://icanhazip.com
每一个命令的输出将是这些服务器看到的我们的公共IP。
除上面给出的这两个以外,还有许多其他服务器可以返回我们的公共IP地址。
3、使用wget返回我们的公共IP地址
wget是适用于Linux的经常使用实用程序,我们可使用它代替curl下载数据并与服务器交互。可使用wget使用以下命令检索我们的公共IP:$ wget -qO- icanhazip.com
二、如何找到私有IP地址?
1、使用 ifconfig 命令获得私有IP地址
ifconfig是一个命令行程序,用于在Linux上配置网络接口。我们可使用该命令和过滤我们的私有IP地址的各种标志来检索自己的IP地址。在shell中运行以下命令:
$ ifconfig | grep -Eo 'inet (addr:)?([0⑼]*.){3}[0⑼]*' | grep -Eo '([0⑼]*.){3}[0⑼]*' | grep -v '127.0.0.1'
上面的命令检查所有活动的网络接口,然后过滤TCP/IP接口,最后过滤本地IP地址的输出。终究输出是我们的私有IP地址。类似于119.136.154.136或一些变体。
我们可使用sed过滤ifconfig输出,这是一个用于解析和转换文本流的实用程序。运行以下命令以获得您的私有 IP 地址:
$ ifconfig | sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0⑼]*.){3}[0⑼]*).*//p'
在此示例中,我们过滤ifconfig输出以获得我们在TCP/IP协议下的IP地址。如果没有安装sed或ifconfig ,上述命令可能会失败。如果命令失败,请尝试该hostname命令并依照以下方法操作。
2、使用主机名命令获得私有IP地址
https://linux.die.net/man/1/hostname命令返回机器的DNS信息。我们可以通过在shell中履行以下命令来找到我们的私有IP地址:
$ hostname -I
上面的命令枚举了所有网络接口上的所有配置地址,包括我们的私有 IP地址。
3、使用IP命令获得私有IP地址
我们还可使用ip命令获得Linux的私有IP地址。该ip命令显示和操作路由、装备、策略路由和隧道。
我们可使用以下ip带有标志的命令变体来返回我们的私有IP地址。
$ ip route get 1 | awk '{print $NF;exit}'
$ ip route get 8.8.8.8 | head ⑴ | cut -d' ' -f8
$ ip route get 8.8.8.8 | head ⑴ | awk '{print $7}'
这些命令打印前途由表条目,用于向备用服务器发送要求。这些触及我们的私有IP地址作为要求的来源。我们正在使用Linux 命令head、awk和cut来过滤该源以提取我们的私有IP地址。
4、从网络连接设置中查找私有IP地址
除命令行,我们还可使用Linux管理小程序。我们可能需要调剂这些说明以合适我们的确切Linux发行版。
导航到您的“菜单”
找到“首选项”选项卡
导航到“网络”或用于管理网络信息的等效项
选择网络类型(即 Wi-Fi、以太网或其他)
可以在有关我们IP的打印信息下查看私有IP地址
这不适用于严格的命令行环境,但适用于桌面Linux系统。如果仅使用命令行登录,则需要尝试上面给出的其他基于命令的方法。
总结:有多种方法可以在linux获得IP地址。我们可使用混合命令,例如ifconfig、ip或hostname,或使用图形环境利用程序。
TOP