端口转发:我和互联网之间有多少个路由器?

端口转发:我和互联网之间有多少个路由器?

我希望 ssh 连接到我家庭网络上的一台机器,所以我打算设置端口转发。但是我的家庭服务器和外部世界(即全局 IP 地址)之间有多少个路由器?

我知道以下连锁店:myServer -> routerA -> routerB -> phoneLine

有没有办法确定一条路线有多少跳先行全球 IP 地址?

routerB每个 ISP 是否都会为每个用户提供一个全局 IP 地址,或者我的端口转发计划是否可能注定失败,因为 ISP 控制着我和互联网之间的网关?

更新:

我本以为我可以运行traceroute它并查看其输出,找到与 www.whatismyip.com 告诉我的地址相匹配的 IP 地址,但奇怪的是,没有匹配的 IP 地址。为什么没有呢?(但是,D 块中有一个地址仅相差 1。)

答案1

您的公网 IP 地址应该位于 ISP 提供的设备上。查找该地址的最简单方法是使用 Windows dos shell“tracert”命令。使用方法如下:

tracert www.gooogle.com

这将向您显示到指定位置的跳数,以及每个跳数的 IP 地址。您将看到本地路由器,后面可能是 ISP 提供的设备上的公共 IP 地址。

答案2

请注意:路由器无处不在。您应该担心的是 NAT。互联网上的“真实”路由器不使用它。

每个 ISP 是否都会为每个用户提供全球IPv4地址...?

不幸的是,这个问题的答案是,不,绝对不是。许多移动电话提供商没有足够的 IP 地址来为每个连接的设备提供自己的地址。相反,他们使用运营商级 NAT,这基本上是一个巨大的 NAT 路由器设置。越来越多的常规 ISP 也必须采用这种方法来为不断增加的客户提供服务。

Tracing route to superuser.com [190.93.244.58]
over a maximum of 30 hops:

  1    <1 ms    <1 ms    <1 ms  192.168.2.1
  2    26 ms    25 ms    12 ms  HSI-KBW-095-208-060-001.hsi5.kabel-badenwuerttem    berg.de [95.208.60.1]
  3    24 ms     8 ms     8 ms  172.30.21.57
  4     8 ms     9 ms     9 ms  84.116.191.33
  5    10 ms    11 ms    29 ms  84.116.191.2
  6    12 ms    12 ms    10 ms  ffm-b1-link.telia.net [62.115.48.101]
  7    16 ms    14 ms    12 ms  ffm-bb1-link.telia.net [62.115.135.233]
  8    11 ms    17 ms    10 ms  ffm-b10-link.telia.net [62.115.137.141]
  9    14 ms    12 ms    16 ms  cloudflare-ic-302937-ffm-b10.c.telia.net [62.115    .35.226]
 10    11 ms    13 ms    14 ms  190.93.244.58

Trace complete.

在第一个跳转中,您可以看到我的有线路由器及其内部 IP 地址192.168.2.1。现在,虽然我确实分配了一个 IPv4 地址,但它在这里不可见。相反,请查看下一个跳转 #2:它的地址是 Internet 可路由的 IP 地址。由此,我们可以推断出我的路由器的外部 IP 也是 Internet 可路由的。

如果存在包含非 Internet IP 地址的额外跳数,则暗示您的 ISP 处设置了运营商级 NAT。

Traceroute 仅返回“面向您”的 IP 地址。这就是您无法获得路由器的公共 IP 地址的原因。幸运的是,有很多 Web 服务可用于解决此问题。

相关内容