我们正在build立一个内部程序,在使用私有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.
这让我们有些疑惑。 如果我们有一个VPN设置,它不会显示为通过互联网路由。 如果它碰到互联网服务器,私人IP(例如192.168)不应该被路由。
什么可以让私人IP地址在服务器之间路由? 事实上,这是所有的comcast意味着他们的路由器设置错误?
什么可以让私人IP地址在服务器之间路由?
如果您和目的地之间的路由器没有阻塞私有地址空间的入口/出口filter,则可能会按照默认路由进行路由。 您应该强烈考虑在您的外部路由器上设置规则,禁止任何发往私人地址的内容离开您的networking。
很多路由器只是转发所有stream量,根本就不做任何过滤。 一个私人地址看起来就像任何其他地址。 如果路由器没有明确定义的路由,则将其发送到其默认网关。
你显然已经设法find一个configuration不好的路由器的其他人。
还有一些情况可能会泄露私有IP,但仍然不能公开这些私有IP。 可以说你有这样一个简单的networking。 我们还假设除了路由器2和路由器3之间的子网,IP地址都是公共可路由的。当你运行从客户端1到客户端2的路由跟踪时,你可能会看到路由器3的响应,也可能看不到。filter到位后,您将看不到回复,如果您没有回复,而其他系统没有filter,则会看到回复。 从跟踪路由返回的数据包通常包含接收跟踪的接口的IP地址,但是将发往运行跟踪路由的机器的IP地址。 由于目标地址是有效的,即使它具有专用IP作为源地址,数据包也将被传送。
这在许多方面回到了关于知识产权伪造这个问题上。 如果没有filter,并且您不关心回复,则源地址可以是任何您想要的。 因为traceroute实现使用ICMP,而ICMP是无状态的,所以可能会看到不能直接到达的IP地址,甚至可能是无效的。
它看起来像你的始发networking是192.168.28.0。 您的机器或路由器是否知道172.30.138.xnetworking? 如果不是的话,它会像其他任何不知道的networking一样,将它的默认路由发送出去。
您需要在原始计算机上的172.30.138.xnetworking中添加一个接口,或者在路由器的该networking中添加一个接口,以便能够正确引导stream量。
事实上,这是所有的comcast意味着他们的路由器设置错误?
设置错误? 是的 ,私人地址绝对应该在其networking内部进行过滤。 但是,如果它们有点草率,那么如果path是Comcast在运营商networking, 尤其是像Comcast这样的潦草的path,私有地址在边缘networking上被过滤,但是在核心或接入部分。 在你的情况下,似乎整个路由是Comcast-only,所以这是“合理的”,这实际上也可以转发到Comcast目的地,实际上是回应它。 可以肯定的是,这并不是一个干净的networking实施,而且你确实从巴尔的摩地区去了丹佛,最后到了格鲁吉亚,但是在一个完整的“自治系统”中是可能的 。
什么可以让私人IP地址在服务器之间路由?
让我们先定义一个私有IP地址:按照惯例,这是一个地址,不会在互联网上路由。 这意味着我们同意作为一个社区从不通过BGP通告这些路由。 这也意味着一个ISP可能会杀死在他们networking边界的这些路由,以防止它们传播。
但是,这并不意味着私有IP不能通过路由器。 Comcast使用私人IP地址范围来连接networking设备的可能性甚至是非常可能的,而这个范围本来就不应该与整个互联网通信。 这些路由可以通过整个Comcastnetworking内部路由协议转发。
总而言之,我将猜测,您的路由器执行NAT转换,然后将所有非本地stream量默认路由到下一跳路由器(包括专用IP空间)。 不过很可能,有很多Comcast路由器都会使用默认路由,这些路由会不小心一直到具有私有IP的响应主机。 这是我强烈的假设,这是有意义的。 它可能是一个带有远程监控function的温度传感器,或者其他一些同样无害的设备,而Comcast以外的任何人都不需要与之交谈。
事实上,这是所有的Comcast意味着他们的路由器设置错误?
由于您的跟踪路由表明所有数据包都保留在Comcastnetworking中,所以您遇到的情况实际上并不是一个令人惊讶的情况。 它保持在一个自治系统内,不违反任何标准。
私人地址就像任何其他的IP地址一样。 如果它被发布到互联网上,它将是可路由的。 假设ISP有入站/出站filter,以防止这些地址泄漏到“最终用户认为的互联网”。
但在你的情况下,交通从来没有离开Comcast AS7922。 与其他人一样,Comcast使用RFC1918专用地址(ISP通常将它们用于STB,调制解调器,DHCP,DNS等)。 如果他们不过滤它,那么你可以达到它…