通过网关强制Windows本地子网stream量

我们正在尝试将所有stream量从某台机器路由网关。 这适用于发往机器子网以外的子网的stream量。 但是,与源计算机位于相同子网中的计算机的stream量将通过Windows中的On-Link网关进行传输。 这意味着默认网关将被忽略,并且子网中的stream量(例如,192.168.50.10 – > 192.168.50.11)将stream动。

Destination Netmask Gateway Interface Metric 192.168.50.0 255.255.255.0 On-link 192.168.50.214 276 
  1. 这条路线可以从Windows删除,但是当机器重新启动时,它总是回来。
  2. 将持久静态路由添加到具有较低指标的网关不起作用,因为在持续路由失败后它仍将尝试On-Link网关。
  3. 由于我们的设置,在VLAN中添加每台计算机不是一个选项
  4. 添加一个启动脚本来删除网关也不是一个好的select,因为用户将有完全的pipe理员访问机器,并可能禁用脚本。
  5. 我们不能使用免费ARP或透明代理跨站点拦截子网上的所有networkingstream量,因为子网上还有其他机器使用不同的网关

我们得到它的唯一方法是为子网stream量添加一个持久路由到网关,并在重新启动时删除On-link路由。

那么问题是。

  1. 有没有办法永久删除这个在线路线
  2. 如果没有,是否有办法强制甚至本地子网stream量通过网关?

强制通过网关的stream量和防止设备在子网上看到对方是有区别的。 我认为你想要做的是后者。 可能是因为您想为多个外部客户托pipe服务器。 如果你正在编辑路由表来实现这个目标,你正在寻找错误的地方。

我的build议是在使用ACL的交换机上处理这个问题。 你可以阻止/允许的具体取决于你的交换机的能力。 另一种方法是阻止ARP广播,​​然后为默认网关设置静态ARP条目(技术上,有人可以添加更多静态条目与其他设备通话)。

此外,请记住,除非网关设置为阻止来自该网段的stream量,否则它将很高兴地将stream量路由回到同一个networking。

那么,你的主机可能从DHCP服务器获取它的默认路由。 如果是,请设置DHCP预留。 我想你可以将该主机预留的子网掩码设置为255.255.255.255,这在技术上可以防止主机将数据包直接传送到子网中的其他主机。 所有stream量都将通过默认网关。 黑客还必须遵守networking规则,除非你的networking被适当地分割,否则这个规则将会打破许多规则。 它通常不足以在/ 24段中伪装子网掩码为/ 32,并希望用户不要更改它。 它实际上并不安全。

设想一个数据中心拥有数千台服务器。 pipe理员不是简单地相信每个人都configuration了他们的ip地址和子网掩码恰到好处,不会造成冲突等任何时候主机在同一个网段,他们可以相互交谈。 这种情况下的挑战似乎是强制主机进入正确的网段,一个单独的网段没有任何其他节点,而是交换机上的端口。

最好的解决scheme是pipe理交换机,可能是第3层。与Cisco 3550一样。交换机将像路由器一样工作,在所有本地子网之间路由stream量。 如前所述,使用ACL来防止跨networking通信。 但是,你提到vlans不是一个选项,所以你可能不控制开关。

更有创意:

build立一个真实的或虚拟的网段,像10.xyz / 30只有一个网关,没有默认路由DHCP提供。 / 30 cidr块需要很好的理解networking子网划分。 允许您控制的子网上的主机通过隧道到您的VPN网关进行身份validation,然后才能获得默认网关。 OpenVpn至less允许限制主机到主机的通信,因为所有的通信当然是通过VPN服务器路由的。 这类似于在公共热点上使用wifi,在那里他们阻止无线主机之间的通信。

或者,您也许可以使用透明代理,并使用acl规则来防止主机与主机通信。 不知道这是否会满足您的需求。

总结,真正的挑战是阻止主机在同一个子网上主机通信。 离散子网只是一种过滤ARP数据包的方法。 可能一些arp黑客可以做到这一点。

最终,我们没有find一种方法来做这些事情没有启动脚本。 无论我们做了什么,删除On-Link路由都不会持续,而且由于上述原因,我们不能使用任何其他选项(transperant proxy,VLAN等)。

最后,我们添加了一个启动脚本来运行

  ROUTE DELETE 192.168.50.0 

在启动。 该脚本被放在一个仅限于我们的用户(而不是pipe理员)的目录中,并在启动时运行。 我们还添加了一个运行此命令的自定义Nagios脚本,并检查了该点之后路由表没有改变。