如何在一个方向“静默”TCP 连接?

ibr*_*ker 4 windows tcp

我有 2 个通过 TCP 通信的应用程序。他们通过 30 秒的心跳保持连接。我需要模拟一个场景,其中一方未能发送此心跳来测试超时。Windows 本身是否有任何程序或工具可以做这样的事情?

断开以太网电缆不起作用,因为程序从 Windows 接收断开连接事件

mul*_*laz 6

有几种可能的方法可以做到这一点:

  • 尝试在其中一台机器上设置防火墙,并阻止来自另一端的数据包。
  • 如果你不能安装防火墙,试试上面同样的方法,在另一个盒子(有两个接口的电脑,路由器,...)之间,将数据包从一侧转发到另一侧,然后过滤盒子上的数据包(你也可以桥接)两个接口,只需添加过滤规则)。
  • 在其间添加一个交换机,并将它们放在同一个 vlan 中。heartbeat 工作后,将其中一个端口放到另一个 vlan(链路状态仍为 up,但流量不会通过。如果您的交换机支持 ACL,您可以使用 ACL 实现相同的效果。