Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何阻止与Windows上某个端口的环回连接?_C++_Windows_Tcp_Network Programming_Loopback - Fatal编程技术网

C++ 如何阻止与Windows上某个端口的环回连接?

C++ 如何阻止与Windows上某个端口的环回连接?,c++,windows,tcp,network-programming,loopback,C++,Windows,Tcp,Network Programming,Loopback,为本地端口80和地址127.0.0.1或0.0.0.0添加入站Windows防火墙规则(通过C++中的COM)不会阻止本地浏览器访问在端口80上运行的本地web服务器。出于调试/测试目的,我需要模拟在同一台计算机上运行的两个程序之间的网络连接丢失。有没有一种方法可以通过编程、命令行或工具来实现这一点 在这个问题上,他们说据称在Windows防火墙中没有办法做到这一点: 除了Windows防火墙之外,有没有其他方法可以模拟在同一台计算机上运行的程序之间的网络连接中断?有一种方法--FreeBSD

为本地端口80和地址127.0.0.1或0.0.0.0添加入站Windows防火墙规则(通过C++中的COM)不会阻止本地浏览器访问在端口80上运行的本地web服务器。出于调试/测试目的,我需要模拟在同一台计算机上运行的两个程序之间的网络连接丢失。有没有一种方法可以通过编程、命令行或工具来实现这一点

在这个问题上,他们说据称在Windows防火墙中没有办法做到这一点:

除了Windows防火墙之外,有没有其他方法可以模拟在同一台计算机上运行的程序之间的网络连接中断?

有一种方法--FreeBSD的IPFW的Windows端口。但是,我无法让它阻止本地主机连接。也许你会有更多的运气


或者,你可以试试黑客。如果您的程序使用
localhost
主机名而不是直接通过127.0.0.1 IP地址建立连接,您可以将
localhost
名称更改为一些不存在或无法访问的地址。

我会尝试不通过127.0.0.1,而是通过它的真实(LAN)IP地址来寻址您自己的计算机。真实IP和环回的处理通常通过非常不同的路径进行,因此您可能能够通过真实IP阻止您的连接,尽管您停留在同一台机器上。还请注意,通过防火墙,您将只能模拟一种类型的连接丢失(最有可能是“黑洞”式的丢失)。使用“网络丢失模拟器代理”可能更容易,该代理侦听端口a,随机丢弃数据包,并将其余数据包转发到端口B。将您的webbrowser指向端口a,并在端口B配置Web服务器。是否在一对虚拟机中运行程序?