如何在一台 PC 上同时使用两个 Internet 连接?

csh*_*pbd 7 networking ip internet-connection

我需要同时使用两个互联网连接。这两个连接都是使用两个 LAN 的宽带连接。

比方说,连接分配的 IP 之一是xxx.xxx.xxx.xxx,另一个是yyy.yyy.yyy.yyy。IPxxx.xxx.xxx.xxx将仅用于任何传出请求,如任何数据上传。另一方面,IPyyy.yyy.yyy.yyy将仅用于传入数据请求,例如下载数据。因此该场景将同时xxx.xxx.xxx.xxx上传数据和yyy.yyy.yyy.yyy下载数据。

让我们说得更清楚。我会使用Skype进行语音通话,然后xxx.xxx.xxx.xxx只会上传语音数据,并yyy.yyy.yyy.yyy会下载语音数据。

没有可用于执行此操作的此类设置。它可以以编程方式完成。我可以为此使用 C# 库。或者有人可以建议任何其他方式来做到这一点?

wnr*_*rph 12

虽然捆绑多个互联网连接一直是许多互联网用户的梦想,但其可行性非常有限。

在网络级别,您不会主动下载(任何类型的)数据。由于数十亿个路由器将所有数据包进一步推向其目标,一次一个步骤到达下一个路由器,然后下一个,因此它只会到达您的手中。路由器根据数据包的目的地址决定将数据包推向哪个方向。这意味着除非远程 Skype 进程将所有数据包发送到 yyy.yyy.yyy.yyy,否则它们不会通过您的首选连接到达您。太糟糕了,远程 Skype 只知道 xxx.xxx.xxx.xxx,因为这是您发送的数据包中的发件人地址。

因此,您可以通过多种方式影响设置以实现目标:

  1. 更改 Internet 协议,以便本机支持多路径
  2. 更改中间路由器的转发表,使它们将发往 xxx.xxx.xxx.xxx 的数据包推向 yyy.yyy.yyy.yyy 。
  3. 更改 Skype,使其支持多路径,例如仅使用 TCP
  4. 在发送方和接收方之间引入中间实体来操纵数据包的地址(并希望这不会以意想不到的方式影响 Skype)。这显然是你最好的选择。针对特定应用程序(例如 Skype)和特定远程端(例如 zzz.zzz.zzz.zzz)的设置,该设置仅在有限的时间段内有效(因为总是会发生变化)。

无论如何,没有复选框、没有食谱、没有 C# 库可以让您轻松地做到这一点。不幸的是,您必须设计一个适合您的需求并根据当今互联网的复杂性运作的解决方案。

  • 不确定你指的是什么。无论如何,您实际上可以分配许多IP。事实上,这就是路由器的设计初衷。真正的路由器总是参与多个网络,因此它们拥有多个 IP 地址。 (5认同)

Pau*_*aul 6

为此,您需要两个能够进行 NAT 且不会随机化源端口的无状态路由器。您需要为您的机器使用静态 NAT。

我假设您将在内部使用私有地址。

一个路由器(routerX)的公共地址为xxx.xxx.xxx.xxx,用于传出数据包,另一台路由器(routerY)的公共地址为yyy.yyy.yyy.yyy,用于传入数据包。

RouterX 将是默认路由。

所以你的机器,我们会说是 10.10.10.10,并在端口 80 上向 google.com 发送一个数据包,当它通过 RouterX 时,数据包的源地址通过 NAT 更改为 routerY 的 IP 地址。

原始数据包:

Src: 10.10.10.10 Src-port: 34343    Dst: google.com Dst-port: 80
Run Code Online (Sandbox Code Playgroud)

源端口是短暂的:“组成”。但是,任何响应数据包都回复到正确的端口是至关重要的。

RouterX 做 NAT,所以它在网上看起来像这样:

Src: yyy.yyy.yyy.yyy Src-port: 34343    Dst: google.com Dst-port: 80
Run Code Online (Sandbox Code Playgroud)

谷歌收到数据包,并回复。所以它的回复是相反的:

Src: google.com Src-port: 80   Dst: yyy.yyy.yyy.yyy Dst-port: 34343
Run Code Online (Sandbox Code Playgroud)

这个数据包自然会到达路由器Y。它有一个静态 NAT,表示任何发往 IP 地址 yyy.yyy.yyy.yyy 的内容都应该 natted 到 10.10.10.10:

Src: google.com Src-port: 80   Dst: 10.10.10.10 Dst-port: 34343
Run Code Online (Sandbox Code Playgroud)

完成 - 数据包到达您的机器,幸福地不知道它采取了如此迂回的路线。

您可以使用 Cisco IOS 路由器执行此操作。事实上,虽然这个场景有两个路由器,但你可以用一个路由器和一些策略路由来实现。

  • 我们希望 xxx.xxx.xxx.xxx 的 ISP 不会将源地址为 yyy.yyy.yyy.yyy 的传出数据包识别为恶意并丢弃它。除此之外,连接将不再可在设备之间共享(现在只有 10.10.10.10 可以使用它) (3认同)

Beo*_*e42 4

我认为“如何在一台电脑上同时使用两个互联网连接?”这个问题的答案 不要通过将 1 个服务的上传和下载拆分为单独的连接来实现这一点,而是拆分哪些服务使用哪些连接。

我见过的所有宽带解决方案都允许同时上传和下载大量数据,而不会互相影响,直到上传或下载速率达到最大值的 80% 左右,我会以不同的方式考虑流量分配。通常且因此得到更好支持的方法是使用不同的路线提供不同的服务。

如果这样做的动机是因为 Skype 正在影响其他流量,或者其他流量正在影响 Skype,那么您还应该查看路由器上的“服务质量”QoS 功能并使用它们,因为它允许您优先考虑你想要的流量。

对低优先级服务提供带宽限制以防止任一方向的带宽饱和,极大地有助于其他服务的可靠性和响应能力。