我希望能够以编程方式阻止到某些IP的传出数据包。不管是什么应用程序,我都希望能做到。
我用的是Windows7 x64专业版,所以它配备了具有高级安全功能的WindowsFirewall,它具有出站过滤功能。
目前我正在手动添加阻止IP的规则,但肯定有更好的方法。
我读到了这个:Any way to turn the "internet off" in windows using c#?和http://msdn.microsoft.com/en-us/library/bb945065.aspx,所以我知道可以编写这样的应用程序。
我是一名java程序员,但我找不到与firewall.dll接口的jni。我对C#一无所知,我自己也写不出来。
我在问有没有什么工具可以做到这一点,请让我知道。我用谷歌搜索了又搜索,可惜什么都没有。如果没有,请告诉我如何自己编写它。
如果你觉得很大方,你可以为我写一篇。您可以拦截发往某个IP的出站流量,然后将其解除拦截。
非常感谢大家。
发布于 2010-12-18 15:14:09
最直接的方法就是运行netsh,here's an article告诉你怎么做
发布于 2019-08-28 10:41:39
netsh的现代替代品是powershell。命令Enable-NetFirewallRule和Disable-NetFirewallRule允许您从powershell脚本打开/关闭规则。命令Set-NetFirewallRule允许您编辑现有防火墙规则,以便在您想要更改规则影响的ip地址时使用。如果需要,您甚至可以使用New-NetFirewallRule添加新规则。
https://stackoverflow.com/questions/4477079
复制相似问题