Answers:
使用消费级设备完成此操作的方法是使用3路由器Y配置
通过使用相同的子网但在不同的“ LAN”上设置两个路由器,一个网络无法与另一网络通信。
这样想:您在LAN A上有一台IP为的计算机,在LAN B上有一个IP 192.168.1.2
为的无线客户端192.168.1.3
。如果您在LAN B上请求192.168.1.2
(尝试连接到有线客户端的无线客户端之一)将其发送到LAN B的路由器,发现这是对192.168.1.x
子网的请求,并且不将数据包转发到链的任何下游(它可以但没关系,请参见此答案的下部)。它还会发现它不知道位于的任何计算机192.168.1.2
(唯一知道的计算机是192.168.1.3
),并向原始计算机报告“目标主机未知”。如果我们要求除192.168.1.x
该IP地址以外的其他IP ,将使用该网关并继续访问Internet尝试解决您的IP连接。
这为您提供了网络上的完全安全性,为您提供了两个局域网,这两个局域网在物理上是不可能互相通信的,同时仍然允许它们都连接到Internet。
根据无线路由器固件的工作方式,您只需将无线连接从其LAN端口移动到其WAN端口,便可以使用两个路由器来实现。但是你只能这样做,如果无线路由器确实不请求转发它无法解析到网关为它自己的子网(所以在我前面的例子中,无线路由器必须不检查WAN端口为192.168.1.2两个路由器配置)。如果您的路由器确实按照您希望的方式工作,则不需要额外购买任何硬件。
在3路由器Y配置中,路由器是否转发请求都没有关系,因为在Y LAN上没有192.168.1.x
计算机,只有两个路由器的WAN接口都是192.168.0.x
。
这是一个更接近原始图的新图,以帮助对其进行说明。
iptables
命令。
我假设您的无线路由器是您在百货商店购买的低于100美元的路由器。
您确实需要具有3个接口的路由器。运行带有3个网卡的Linux的PC可以很好地做到这一点-一个NIC是WAN,另一个NIC连接到您的LAN主机,第三个插入您的无线路由器。然后,您可以在Linux机器上运行DHCP,以侦听并在LAN和WLAN接口上发出IP。
您需要进行一些iptables
配置,以确保WLAN主机无法与LAN主机进行通信(相对简单,因为它们位于单独的子网中)。
您也可以将LAN主机放在其自己的路由器后面,并在无线和有线路由器上配置任何SPI防火墙设置,以丢弃来自其他子网的流量。请注意,在这种情况下,您将需要在每个子网中运行单独的DHCP服务器,因为广播流量不会由路由器转发。
如果无线路由器支持,您也可以告诉它阻止从其后面到有线LAN所在子网的所有传出流量。