我有一个非常简单的家庭网络,带有电缆调制解调器/路由器(单个设备)。我还在网络上安装了带有 AdGuard DNS 服务器设置的树莓派,它运行的是 Raspbian GNU/Linux 10 (buster)。更新路由器配置以通过 DHCP 提供树莓派的 IP 地址作为 DNS 服务器。据我所知,某些设备(android、chromecast)可能会忽略通过 DHCP 提供的 DNS 服务器,并回退到另一个 DNS 服务器(例如,谷歌公共 DNS),从而击败 AdGuard 的广告拦截。所以我想要实现的是将树莓派设置为默认网关和DNS服务器,这样我就可以通过iptables禁止某些IP地址。
我知道我必须在树莓派上设置 DHCP 服务器并关闭路由器上的 DHCP。我能够成功地进行设置,并且我可以验证网络上的设备通过树莓派的 DHCP 服务器接收 LAN 配置。我可以看到设备现在将树莓派的 IP 地址作为默认网关。
但树莓派似乎不像网关,traceroute 显示 ping 无法通过树莓派。 DNS 名称已解析,我可以通过 AdGuard 验证它们是否已解析。
看起来树莓派需要设置才能充当网关。我该怎么做?
谢谢!
答案1
正如 @peschke 提到的,我必须设置 net.ipv4.ip_forward = 1