我的朋友有来自 Consolidated 的慢速(大约 1-2 Mbps)DSL 服务。他们给了她一个 Comtrend 5372 调制解调器/路由器。我登录到路由器并看到这些设置:
WAN Interface pppoe_0_0_35
Link Type DSL
Link Status Up
Connection Type PPPoE
WAN IP address 71.168.xxx.xxx
PPP Username [email protected]
Default Gateway 10.20.17.1
Primary DNS Server 64.222.xxx.xxx
Secondary DNS Server 64.222.xxx.xxx
我不明白网关如何拥有像 10.20.17.1 这样的地址,这是一个私有地址,而不是与路由器本身位于同一网段。这是 DSL 的神奇之处吗?
首先,网关寻址与 CGNAT 无关。只有路由器自己的地址(在这种情况下仍然是公共的)会受到它的影响,但是网关IP 地址是私有的并不意味着 CGNAT 以任何方式。
多个 IP 网络实际上可以共享一个第 2 层网段,因此“不在同一个 IP 子网上”的地址根本不意味着“不在同一个网段上”。地址可能在子网外,但仍处于链接状态。
因此,尽管您的网关在不同的 IP 网络上,但它仍然可以在同一个 L2 网段上(并且确实在同一个网段上,因为如果不是,您就不能将其用作网关)。
(另外,IP不关心地址是否私有。两者在技术上没有区别,在同一个网络上混合两种是有效的。私有地址只有通过IANA策略和ISP才特殊实践。)
但真正的“魔力”在于,网关是否在您的子网中并不重要。只要操作系统知道如何将其映射到相应的第 2 层地址(例如 MAC 地址),任何网关地址都是可能的,因为最终只有网关的 L2 地址,而不是 IP 地址,才能进入数据包。
因此,在子网外网关的情况下,只需要告诉操作系统忽略子网掩码并期望地址在链接(on-segment)上。
这样做根本不是特定于 DSL 的。尽管由于许多 ISP 使用 PPPoE,DSL更常见——这是下面一个完全独立的主题——但它适用于任何网络类型,您可以在标准以太网上进行相同的配置。
例如,在服务器数据中心(可能在同一网段上可能有几十个不相交的公共 IP 范围)上,有一个子网外网关实际上是很常见的,并且在 IPv6 上很常见(其中自动配置总是使用私有的 'fe80: ...'网关地址)。
还有一件事需要注意:在您的情况下,没有真正的“细分”。但这不是 DSL 特有的——它来自您的连接使用 PPP 的事实。
通常 DSL 用于“以太网仿真”模式,在这种情况下,它就像以太网段一样工作,DSL 部分对 IP 是不可见的。但是许多 ISP 选择不直接通过以太网提供 IP 服务(实际的 Internet 访问),而是通过 PPP 隧道,在您的情况下是 PPPoE(以太网上的 PPP)。(PPP 本身也不是特定于 DSL 的——它可以通过各种各样的传输。)
使用 PPP,您有一个点对点接口,它的工作方式与以太网等“广播”接口完全不同。PPP 链路上没有第 2 层寻址(因为无论如何只有一个可能的第 2 层目的地),这意味着“链接上”或“同一段”的地址与不存在的地址之间没有区别。
换句话说,您的子网掩码和路由网关在处理 PPP 接口时变得几乎无关紧要。(路由的网关是用来选择二层目的的,例如以太网目的MAC,但是PPP中没有这个东西。)只要通过PPP接口发送数据包,它就会到达另一端反正。
这意味着通过 PPP 的配置过程提供的网关地址在很大程度上只是为了展示,并且看到主机和网关地址不匹配的点对点链接并不少见。事实上,由于 PPP 没有链接上和非链接之间的区别,因此即使它根本没有网关,默认路由也同样可以正常工作。
您正在通过 DSL 进行 PPPoE(以太网上的点对点协议)。网关是 PPP 服务器。它始终与您的 PPP 客户端位于同一 PPP 链路上,只需定义 PPP 链路是什么。您的 UI 没有显示 WAN PPP 链接的子网掩码,但 PPP 链接始终为 255.255.255.255,因为点对点链接始终只有两个主机;PPP 客户端和 PPP 服务器。PPP 客户端在 PPP 链路上传输的任何东西都只能到达 PPP 服务器,反之亦然。所以你不需要广播地址或网络地址或子网中的其他主机地址的房间,因为它不是多路共享链接,而是点对点链接。
路由器有两个网络适配器,外向和内向。路由器的目的是成为两者之间的桥梁,将包从一个接口传输到另一个接口。
内层是路由器创建的本地网络,所有设备的地址都是
10.20.17.x, allocated by the router. The router has taken for itself the address of
10.20.17.1`形式的,是所有设备通往世界的网关。您的 ISP 已为该路由器分配
71.168.xxx.xxx
了 ISP 网络上的 IP 地址。您的所有设备都会在外人看来是路由器,因为在外部,所有设备的地址都是71.168.xxx.xxx
.这是关于它如何工作的简短解释,不涉及任何魔法。