我的设置是连接到网络交换机的调制解调器(无 DHCP 或 DNS)。网络交换机使用 连接到充当 DHCP+DNS 服务器的 Raspberry Pi dnsmasq
。问题是,来自网络的所有流量都通过 Raspberry Pi 路由,而实际上所有流量最终都会通过调制解调器路由出去。
将默认网关设置为调制解调器的本地 IP 是否可行?如果不可行,是否有任何方法可以动态地将网络的默认网关设置为我的 ISP 恰好分配给(Raspberry Pi)的任何 DNS 服务器?
答案1
如果调制解调器和 Raspberry Pi 都在同一个逻辑网络上(例如,不涉及 NAT 或路由),则您的 Raspberry Pi 无法充当网关,因为它位于唯一可用的网络内,而实际网关是您的调制解调器。如果您的调制解调器有一个地址(例如192.168.1.1/24
),而您的 RPi/计算机在同一个网络中有一个地址(例如192.168.1.100
-101
等等),情况就是如此。计算机可以直接看调制解调器,所以他们不需要使用 Raspberry Pi 作为网关,而只需将其用作 DNS/DHCP 服务器。
但是你可以在 Raspberry Pi 上设置更多的 IP 地址;也许在两个不同的网络上(例如10.0.0.0/8
用于内部机器和192.168.1.0/24
调制解调器),并且调制解调器可能位于单独的网络中(192.168.1.1
,调制解调器的典型地址)。在这您可以将 Raspberry Pi 设置为网络中计算机的网关10.0.0.0/8
,而不仅仅是 DNS/DHCP 服务器。
要回答你的实际问题,你应该在第一种情况下将调制解调器设置为网关,在第二种情况下将 Raspberry Pi 设置为网关:如果您处于第一种情况,则可以避免不必要的数据包转发。
详细说明您的第二个问题,DNS 服务器和网关不需要在同一台机器上,因此您不应该混淆它们:许多调制解调器确实同时充当两者。