如何同时使用两个网络接口?

如何同时使用两个网络接口?

我有两个网络接口:ppp0 和 ppp1。

“路线”输出:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         *               0.0.0.0         U     0      0        0 ppp0
10.64.64.64     *               255.255.255.255 UH    0      0        0 ppp0
10.64.64.65     *               255.255.255.255 UH    0      0        0 ppp1

如您所见,有一条默认路由。所以,我想对不同的程序使用特定的路线,如下所示:

test1.py --> ppp0 --> internet
test2.py --> ppp1 --> internet

有什么办法吗?我认为解决方案可能是通过 ppp0 和 ppp1 接口进行代理。但如何呢?

更新:

我找到了 cURL --interface 选项。

curl --interface ppp0 http://test.com
curl --interface ppp1 http://test.com

但只有一个接口可以工作并且有默认路由记录。

答案1

选项:

  • 将应用程序绑定到特定接口,就像您对curl --interface.

  • 使用策略路由

  • 创建不同的网络命名空间,将一个或两个接口放入命名空间中,启动应在适当的命名空间中使用该接口的应用程序。

由于您没有描述您的用例(“测试程序”除外),我不能说哪个是最适合您的选择。

如果它实际上只是测试程序,并且您自己编写了程序,那么将它们绑定到接口是最简单的方法。

相关内容