普通人物怨 发表于 2024-9-11 18:36:47

如何在Linux中查找/获取你的IP地址

在排除网络问题、建立新的连接或配置防火墙时,知道你设备的IP地址很重要。

IP地址可以分为两类,公共和私人。公共IP地址是一个独特的IP地址,可以从互联网上访问。私有IP地址是保留给你的私有网络内部使用的,不直接暴露在互联网上。此外,有两种类型的IP地址,IP版本4(IPv4)和IP版本6(IPv6)。

本文解释了确定Linux系统的公共和私有IP地址的几种不同方法。

寻找你的私有IP地址

私有IP地址在互联网上是不能路由的,只能在本地网络中使用。通常情况下,路由器会给本地网络内的每台设备分配一个私有IP地址。这为本地网络内的所有设备提供了一个唯一的IP地址,如你的手机、笔记本电脑、智能电视、打印机、媒体中心等。

本地网络中的设备是通过NAT(网络地址转换)连接到互联网的。

以下IPv4地址范围被保留给私人网络:


10.0.0.0/8172.16.0.0/12192.168.0.0/16
你可以通过使用ip、ifconfig或hostname等命令查询网络堆栈来确定你的系统私有IP地址。

在Linux中,显示和配置网络接口的标准工具是ip 。

要显示所有网络接口的列表和相关的IP地址,请输入以下命令。

$ ip addr
输出结果将如下所示。私有IP地址被高亮显示:

你也可以使用以下命令来显示私有IP地址。

$ hostname -I
$ ifconfig

查找你的公共IP地址

公共IP地址是一个全球可路由的IP地址,它被分配给网络设备,允许它直接访问互联网。它们是由其ISP分配给设备的,每台设备都有一个独特的公共IP地址。

公共IP地址由家庭路由器、网络服务器、邮件服务器等使用。

确定公共IP地址包括通过HTTP/HTTPS或DNS协议联系远程服务器,并从远程服务器的响应中获得IP地址。

在台式机上,找出你的公共IP地址的最简单方法是在百度搜索中输入 "我的IP地址"。

如果你是在一个无头的Linux服务器上,或者你想把IP地址分配给一个shell脚本变量,你可以使用命令行工具,如dig , curl和wget。

大多数DNS供应商,如OpenDNS和Google允许你查询他们的服务器并获得你的公共IP地址。

你可以使用下面的任何一个命令来获取你的IP。



$ dig ANY +short @resolver2.opendns.com myip.opendns.com
$ dig ANY +short @resolver2.opendns.com myip.opendns.com
$ dig ANY +short @ns1-1.akamaitech.net ANY whoami.akamai.net
有许多在线的HTTP/HTTPS服务,用你的公共IP地址来响应。下面是其中的一些。
curl -s http://tnx.nl/ipCopy
curl -s https://checkip.amazonaws.comCopy
curl -s api.infoip.io/ipCopy
curl -s ip.appspot.comCopy
wget -O - -q https://icanhazip.com/
如果上面的任何一个命令不工作,可能是在线服务出现了问题。

你甚至可以在你的~/.bashrc或~/.zshrc文件中创建一个别名,这样你就不必输入和记住一个长命令。例如,你可以添加以下别名。

alias pubip='dig ANY +short @resolver2.opendns.com myip.opendns.com'
现在,无论何时你需要找到你的公共IP,只需在终端输入pubip即可。
页: [1]
查看完整版本: 如何在Linux中查找/获取你的IP地址