我正在寻找一款家庭网络路由器,它允许我将某些机器与大部分互联网隔离,但不是全部。我不想仅根据端口号来做到这一点,而是根据 IP 范围来做到这一点。
例如,我的网络上的一台 Windows 10 计算机 (192.168.4.10) 可以通过代理进行通信,但也需要以无法通过代理的方式访问互联网。为此,该盒子只能连接到特定的 IP 范围(例如 abcd/16)。如果这可以是基于允许或拒绝的规则,那就太好了(有些盒子只有拒绝规则,这意味着您必须反转所有内容,并且无法正确组合规则)。
所以我想在路由器中配置一条如下所示的规则(带有iptables
):
iptables -N PROXY # create proxy chain
iptables -A FORWARD --source 192.168.4.10 -j PROXY # send traffic from isolated machine to PROXY chain
iptables -A PROXY --destination 145.x.y.z/16 -j ACCEPT # allow some subnet only
iptables -A PROXY -j DROP # drop everything else (enforces proxy use)
或者更短(未经测试):
iptables -A OUTPUT --source 192.168.4.10 --destination 145.x.y.z/16 -j ACCEPT
iptables -A OUTPUT --source 192.168.4.10 -j DROP
哪些品牌/类型的路由器可能具有此类功能,或者我应该寻找哪些关键字?我查看过的大多数路由器仅允许基于“服务”(即端口范围和协议)对特定客户端进行此类阻止。如果他们也有一些用于 IP 掩码的字段并使端口可选,我认为这足以满足我想要实现的目标。
有任何想法吗?