如何在Windows上设置特定于应用程序的路由表?


14

假设网络接口1(net1)和2(net2)都连接到Internet。我希望应用程序1(app1)使用net1,而应用程序2(app2)使用net2。在Windows下如何完成?

如果需要上述情况的具体示例,请考虑:

  • 装有Windows 7的笔记本电脑
  • net1 =与Verizon Internet调制解调器的有线连接
  • net2 =与Comcast Internet调制解调器的无线连接
  • app1 = Internet Explorer
  • app2 = Firefox
  • 我想拥有“ IE使用Verizon但不使用Comcast”和“ Firefox使用Comcast但不使用Verizon”的功能

不必通过路由表来完成。如果您还有其他想法,请告诉我!

Answers:


6

听起来ForceBindIP就是您想要的:)

ForceBindIP-将任何Windows应用程序绑定到特定界面

ForceBindIP是一个免费的Windows应用程序,它将自己注入到另一个应用程序中,并更改某些Windows套接字调用的方式,从而允许您强制另一个应用程序使用特定的网络接口/ IP地址。如果您在具有多个接口的环境中,并且您的应用程序没有用于绑定到特定接口的此类选项,则此选项很有用。

经过测试可与ForceBindIP配合使用的某些程序包括DC ++,uTorrent,Quake II,Quake III,Diablo II,StarCraft,Internet Explorer,Mozilla Firefox,Google Earth,步兵,Real Player,Unreal Tournament 2004(需要-i),Outlook 2000(需要-i)。无效的程序包括GetRight(反调试器/分叉技术),WinCVS(分叉cvs.exe)

您可以简单地创建快捷方式,使用IP地址和程序作为参数,使用ForceBindIP启动应用程序:

替代文字

ForceBindIP是免费软件。


2
很棒的软件!不幸的是,它似乎不适用于我的VPN设置(已禁用“在远程网络上使用默认网关”,因此无法通过Internet连接到Internet)。我试图将IE绑定到VPN接口(PPP适配器),但是流量仍然没有通过VPN(已通过
whatismyip.com

1

无需运行vmware player等。只需在辅助适配器(即具有较高度量标准的适配器)上启用weakhostreceive。

然后,您可以运行squid并将squid设置为使用tcp_outgoing_address作为辅助适配器的ip地址,并代理所有应用程序。

我怀疑forcebindip也应该开始工作。

我认为MS win7堆栈中存在错误。当数据包到达辅助适配器时,即使它是有效数据包也被丢弃。

http://technet.microsoft.com/en-us/magazine/2007.09.cableguy.aspx上记录了启用弱主机接收的信息

netsh interface ipv4 set interface [InterfaceNameOrIndex] weakhostsend=enabled|disabled

netsh interface ipv4 set interface [InterfaceNameOrIndex] weakhostreceive=enabled|disabled

netsh interface ipv6 set interface [InterfaceNameOrIndex] weakhostsend=enabled|disabled

netsh interface ipv6 set interface [InterfaceNameOrIndex] weakhostreceive=enabled|disabled

0

我很确定这是不可能的。通过子网和路由条目,可以在一个或另一个接口上发送流量最接近的事情。

但是,如果两个应用程序要在网络上通话,它们将使用同一网络。

我想从技术上讲,应用程序可以将其传出的流量绑定到特定接口,但是必须重新编写该应用程序才能做到这一点。


0

有类似的要求,希望特定的应用程序通过特定的Internet连接运行,但无法通过IP或端口完成。

我的解决方案是:

(请注意,我的计算机IP为xxx100

a)为xxx101设置一个通过wan2的规则

b)在ip xxx101上运行带有ubuntulite副本(已安装openssh)的vmware player

c)使用“代理”绑定应用程序,并通过vmware机器强制其建立隧道,而vmware机器又仅通过wan2进行路由

这是我可以确定如何在应用程序级别执行此操作的唯一(非常混乱)方式(proxifier具有您可以测试的试用版,并且可以在Windows 7 x64上运行)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.