如何通过路由器连接时查看外出互联网流量的公共IP地址?


2

有这个nettop工具显示IP地址,但是当通过路由器连接Mac时它没有显示公共IP地址 - 它显示的地址与我们使用系统偏好设置的网络选项看到的地址相同。有谁知道如何查看离开我的电脑的外出互联网流量的公共IP地址?

Answers:


3

当您查询公共IP地址时,您可以选择其中一个将您的公共IP地址包裹起来的外部服务。例如,

curl -s http://ipecho.net/plain; echo

我个人经常使用它,所以我把它包装在一个shell函数中myip,它受到来自Bash-it库的shell函数的启发:

function myip()
{
    res=$(curl -s http://ipecho.net/plain; echo)
    echo -e "Your public IP is: ${echo_bold_green} $res ${echo_normal}"
}

更新:我编辑了使用的答案,curl而不是wget因为后者没有附带macOS(感谢用户klanomath 指出这一点。)


2
wget在OS X / macOS中不是标准可执行文件。所以更好地使用curl -s ...而不是wget -qO- ...
klanomath

@klanomath感谢指针。我已相应更新了我的答案。
Synoli

看起来你错过了我的观点。我的目的不是要“知道”我的公共IP地址,而是要看看我的计算机上的哪些程序是在外面的世界和哪个地址“投射”我。我正在寻找能够向我展示从我的计算机通过互联网发送流量的程序列表,其中包含他们向全世界展示的公共IP地址。
happy_coder 2017年

2
@happy_coder计算机上的程序通常不知道您的公共IP地址。(这是因为您的计算机上的程序不是将您投射到外部世界;您的路由器通过IP伪装和NAT来实现它。)换句话说,没有列表包含您正在寻找的属性。即使有,在这种情况下显示的IP地址与ipecho.net给你的相同。
Synoli 2017年

3

另一项快速服务是 curl ifconfig.me

之后添加回声以完成该行:

curl ifconfig.me && echo

在此输入图像描述


单行答案往往会在没有此命令有效的文档形式的情况下被拒绝。它确实有效,并且非常有用,但是curl显示外部地址的命令结果的屏幕上限以及显示内部地址的系统偏好设置>网络的屏幕上限将提供更完整的答案。
IconDaemon

此外 - 很多人喜欢简短的答案,所以我会编辑这个以清理屏幕截图。这是一种将公共IP返回命令行的超快速服务。
bmike

2

我们(在工作和对家人/朋友进行故障排除时)总是在网络浏览器中访问http://myipaddress.com。正如Synoli所说,有很多网站向您展示了当您浏览和执行其他任务时世界所看到的IP地址。

您可能会发现某些ISP,特别是AT&T,Verizon等移动网络运营商代理了IP地址池后面的所有内容,而且网络流量通常会通过不同于其他所有代理的代理集。

如果您的网络支持IPv6,那可能会使事情变得复杂,一些提供商正在做6to4,运营商级NAT,而其他提供商直接通过IPv6。


看起来你错过了我的观点。我的目的不是要“知道”我的公共IP地址,而是要看看我的计算机上的哪些程序是在外面的世界和哪个地址“投射”我。我正在寻找能够向我展示从我的计算机通过互联网发送流量的程序列表,其中包含他们向全世界展示的公共IP地址。
happy_coder 2017年

您计算机上的所有程序都将使用与上面相同的公共IP地址。如果要在外部进行通信程序列表,则应检查防火墙日志。
mcchots 2017年

2
我的回答解决了您的问题:“有谁知道如何查看离开我的计算机的外出互联网流量的公共IP地址?” ---看起来你找到了解决你的真实(未提出的)问题的解决方案,以及你自己在第一个问题中没有解决的警告。
布莱恩斯科特

@SirBryan想象一下有人在应用程序中使用代理(例如torrent客户端)的情况。显然,该应用程序生成的流量的公共IP地址将不同于其他应用程序。所以你的答案假设我的问题是一个简单的查询,任何人都可以通过简单的谷歌搜索或只需在谷歌上键入“我的IP地址”找到答案!(Google会在您输入时提供您的IP地址,而您甚至不需要访问您提到的网站!!)
happy_coder

你原来的问题很简单。当然答案是简单的,因为你没有提供这种级别的细节。您不能指望响应者承担的不仅仅是您提供的内容。
布莱恩斯科特

0

最后,我找到了我正在寻找的解决方案: nettop -L 0 > test.csv 这将采用无限日志并存储在test.csv文件中,用于通过网络发送/接收流量的所有应用程序。请注意,某些应用程序在设置为使用代理时可以使用不同的IP地址。(这是为了伪造这里发布的一条评论,其中说所有应用程序都使用相同的IP地址)。


在我看来,没有任何评论或答案是错误的。如何通过标准网络设置获得多个公共IP地址?有一个默认网关(如果在某些情况下考虑IPv6,则为两个)。也许编辑显示实际(或模拟但可路由的公共IP地址)可能会澄清您所看到的多个地址。
bmike

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.