网上的配置确实五花八门,绝大多数都是复制粘贴的。好多人都是按照这些复制粘贴的教程,关闭主路由的 DHCP,将 N1 设置为 DHCP 服务器。这其实完全没必要。
旁路由的目的是尽量不改变当前网络拓扑,所以没必要将 DHCP 服务器设置在 N1 上。只要在主路由的 DHCP 设置中,将默认网关设置为 N1,然后 N1 的网关设置为主路由即可,其他网络设置无需改变。这样,上传流量会经过 N1 的过滤,国内下载流量不会经过 N1 。
同时,DHCP 只是负责内网 ip 发放,与网关、NAT 无关。所以即使将 N1 设为 DHCP 服务器,NAT 转换也是主路由的工作。
F 大的教程中有这么一句,“iptables -t nat -I POSTROUTING -j MASQUERADE”。这会导致国内下载流量经过 N1 旁路由,因为 MASQUERADE 会将 source ip 替换为 N1 的 ip,不管是否富强。
在 N1 上 POSTROUTING MASQUERADE 毫无必要,除非将 N1 当作主路由。