私有 IP 通过 Internet 路由

Wer*_*rCD 7 routing private-ip

我们正在设置一个内部程序,在使用私有 172.30.xx 子网的内部服务器上......当我们 ping 地址 172.30.138.2 时,它通过互联网路由:

C:\>tracert 172.30.138.2
Tracing route to 172.30.138.2 over a maximum of 30 hops

  1     6 ms     1 ms     1 ms  xxxx.xxxxxxxxxxxxxxx.org [192.168.28.1]
  2     *        *        *     Request timed out.
  3    12 ms    13 ms     9 ms  xxxxxxxxxxx.xxxxxx.xx.xxx.xxxxxxx.net [68.85.xx.xx]
  4    15 ms    11 ms    55 ms  te-7-3-ar01.salisbury.md.bad.comcast.net [68.87.xx.xx]
  5    13 ms    14 ms    18 ms  xe-11-0-3-0-ar04.capitolhghts.md.bad.comcast.net [68.85.xx.xx]
  6    19 ms    18 ms    14 ms  te-1-0-0-4-cr01.denver.co.ibone.comcast.net [68.86.xx.xx]
  7    28 ms    30 ms    30 ms  pos-4-12-0-0-cr01.atlanta.ga.ibone.comcast.net [68.86.xx.xx]
  8    30 ms    43 ms    30 ms  68.86.xx.xx
  9    30 ms    29 ms    31 ms  172.30.138.2

Trace complete.
Run Code Online (Sandbox Code Playgroud)

这让我们很多人感到困惑。如果我们设置了 VPN,它就不会显示为通过 Internet 路由。如果它访问 Internet 服务器,则不应路由私有 IP(例如 192.168)。

什么会让私有 IP 地址跨服务器路由?全部都是康卡斯特的事实是否意味着他们的路由器设置错误?

Zor*_*che 9

什么会让私有 IP 地址跨服务器路由?

如果您和目的地之间的路由器没有阻塞私有地址空间的入口/出口过滤器,那么它可能会按照默认路由进行路由。您应该强烈考虑在您的外部路由器上设置规则,禁止任何以私有地址为目的地的内容离开您的网络。

许多路由器只是转发所有流量,根本不进行任何过滤。私人地址看起来就像任何其他地址。如果路由器没有明确定义的路由,它会将其发送到其默认网关。

您显然已经设法通过配置不当的路由器联系到其他人。

在某些情况下,私有 IP 可能会泄露,但仍然无法公开访问这些私有 IP。假设您有一个像这样的简单网络。我们还假设 IP 地址除了路由器 2 和路由器 3 之间的子网外都是可公开路由的。当您运行从客户端 1 到客户端 2 的跟踪路由时,您可能会也可能不会看到来自路由器 3 的响应。如果您有过滤器就位,您将不会看到回复,如果没有,并且没有其他系统具有过滤器,您将看到回复。从跟踪路由返回的数据包通常包含接收跟踪的接口的 IP,但它将发往运行跟踪路由的机器的 IP。由于目标地址是有效的,即使它有一个私有 IP 作为源地址,数据包也会被传递。

  • 客户端 1 连接到路由器 1
  • 路由器 1 连接到路由器 2
  • 路由器 2 连接到路由器 3
  • 路由器 3 连接到客户端 2

在许多方面,这又回到了有关IP 伪造的问题中的要点。如果没有适当的过滤器,并且您不关心回复,则源地址可以是您想要的任何内容。由于 traceroute 实现使用 ICMP,而 ICMP 是无状态的,您可能会看到无法直接访问的 IP 地址,甚至可能无效。


小智 7

看起来您的原始网络是 192.168.28.0。您的机器或路由器是否知道 172.30.138.x 网络?如果没有,它只会像它不知道的任何其他网络一样将它的默认路由发送出去。

您需要在原始机器上的 172.30.138.x 网络中添加一个接口,或者在路由器上的该网络中添加一个接口,以便它可以正确地引导流量。