我的 Airport Mac 抱怨双重 NAT。
我的网络确实看上去很好。
我的问题更多是关于安全方面的:
- 如何检测双重 NAT?
- 原则上,所有设备都应该与网络无关。
- 即使如此,这又为什么会成为一个问题呢?
对于最后一个问题,我承认如果您管理其中一个双重 NAT,可能会存在一些配置问题。
答案1
‘Tracert'(跟踪路由)命令将显示您是否有双 NAT。例如 tracert 8.8.8.8。您将看到多个跳数,私有 IP 地址。请注意,这假设小型办公室/家庭网络,其中每个路由器都应用 NAT。企业网络可能有更多的跳数,您需要进行更多测试才能确定哪些跳数应用 NAT。
双重 NAT 可检测到中断的一个示例是 UPnP(通用即插即用)端口转发。当网络上的设备从路由器请求临时端口转发规则时,它将无法正常工作,因为上游路由器也需要转发端口。设备会知道出了问题,因为路由器回复说它已批准端口开放请求,但该端口仍未从互联网开放。设备可以猜到您处于双重 NAT 情况。
在双 NAT 情况下,IP 地址范围也可能出现重叠。内部网络和外部网络可能无法相互通信,因为它们使用相同的 IP 范围,因此无法区分。互联网可能仍可在内部网络上工作,具体取决于内部路由器的智能程度。
双重 NAT 不可取的主要原因是外部网络中的设备无法发起与内部网络中设备的连接。实际路由(例如静态路由)允许双向通信。
答案2
我唯一见过双 NAT 的情况是当你将家用路由器连接到第二家庭路由器 - 如果您将以太网电缆从第一个路由器的输出连接到第二个路由器的 WAN 输入,则可以做到这一点。
一般来说,您不希望使用双 NAT,因为它需要第二次跳转才能到达 WAN。此外,它还会影响 UPnP(通用即插即用),后者允许视频游戏和其他应用程序自动进行端口转发,从而提高性能。
要检测双 NAT,您应该使用 trace route 命令。打开 PowerShell 并运行此命令
tracert google.com
如果前两个跳数以 开头192.168
,则您可能有一个双重 NAT。
为了摆脱这种情况下的第二层 NAT,你需要将第二将路由器设置为“桥接模式”,这基本上会关闭 DHCP。这样,您就不会有两个单独的实体发布 IP 地址,并且您的本地网络将是一个网络。
如果您需要将本地网络划分为子网络,则需要支持 VLAN(虚拟局域网)的路由器。您可能需要商用级路由器来实现这一点;很多家路由器不支持该功能。它们并不指望普通消费者是网络工程师。