¿Cómo usar dos conexiones a Internet en una PC al mismo tiempo?

7

Necesito usar dos conexiones a internet al mismo tiempo. Tanto la conexión será de banda ancha utilizando dos LAN.
Digamos, una de las IP asignadas de la conexión es xxx.xxx.xxx.xxx y otra es aaa.yyy.yyy.yyy IP xxx.xxx.xxx.xxx se usará solo para cualquier solicitud saliente como cualquier carga de datos.
Por otro lado, IP aaa.aaa.aaa.aaa será solo para solicitudes de datos entrantes como descargar los datos. Entonces el escenario será xxx.xxx.xxx.xxx cargará datos y aaa.aaa.aaa.aaa descargará datos al mismo tiempo.

Hagámoslo más claro. Haré una llamada de voz usando skype, luego xxx.xxx.xxx.xxx solo cargará los datos de voz y yyy.yyy.yyy.yyy descargará los datos de voz.

Espero poder aclararme.
¡Cualquier idea o sugerencia será cordialmente apreciable!
Gracias de antemano !

Editar

No existe tal configuración que pueda usarse para hacerlo. Se podría hacer programáticamente. Puedo usar bibliotecas de C # para eso. ¿O alguien puede sugerir alguna forma de hacerlo?

csharpbd
fuente
1
Va a encontrar esa configuración un pero insostenible ...
Ignacio Vazquez-Abrams
2
de alguna manera podría ser manejable pragmáticamente!
Mushfiq
¿Puedo preguntar por qué? No puedo ver ninguna ventaja.
jnovacho 01 de

Respuestas:

12

Si bien agrupar varias conexiones a Internet ha sido un sueño para muchos usuarios de Internet, su viabilidad es muy limitada.

En el nivel de red, no descargas datos de forma activa (de ningún tipo). Simplemente llega a usted como resultado de miles de millones de enrutadores que empujan todos los paquetes más hacia sus objetivos, paso a paso hacia el siguiente enrutador, y el siguiente. Los enrutadores deciden en qué dirección enviar los paquetes en función de la dirección de destino del paquete. Esto significa que a menos que el proceso remoto de Skype envíe todos los paquetes a yyy.yyy.yyy.yyy, no lo contactarán a través de su conexión preferida. Lástima que el Skype remoto solo sepa xxx.xxx.xxx.xxx, porque esa es la dirección del remitente en los paquetes que lo enviaste.

Así que hay un par de formas en que puede influir en la configuración para alcanzar su objetivo:

  1. Cambie el protocolo de Internet , por lo que se admitirán múltiples rutas de forma nativa
  2. Cambie las tablas de reenvío de los enrutadores intermedios , para que envíen los paquetes destinados a xxx.xxx.xxx.xxx hacia yyy.yyy.yyy.yyy
  3. Cambie Skype, por lo que admite múltiples rutas, por ejemplo, simplemente usando TCP
  4. Introduzca entidades intermedias entre el remitente y el receptor que manipulan las direcciones del paquete (y espero que esto no afecte a Skype de manera no intencionada). Esta es obviamente tu mejor apuesta. Una configuración para una aplicación específica (como skype) y un extremo remoto específico (por ejemplo, zzz.zzz.zzz.zzz) que funciona solo durante un período de tiempo limitado (porque, como siempre, las cosas cambian).

En cualquier caso, no hay casillas de verificación, ni recetas, ni bibliotecas de C # que le permitan hacer esto fácilmente. Desafortunadamente, debe diseñar una solución adaptada a sus necesidades y de acuerdo con el funcionamiento de Internet de hoy en toda su complejidad.

artistoex
fuente
¡pero en un enrutador solo puede asignar una IP real!
Mushfiq 01 de
55
No estoy seguro de a qué te refieres. De todos modos, en realidad puede asignar muchas IP. De hecho, para eso están diseñados los enrutadores. Los enrutadores reales siempre participan en más de una red, por lo que tienen más de una dirección IP.
artistoex 01 de
Bien, lo intentaré.
Mushfiq 01 de
Básicamente, configure una VPN en algún lugar e instale un adaptador de red virtual que use ambas conexiones sin problemas, tanto en la máquina VPN como en su propia máquina.
MatsT 01 de
5

Para hacer esto, necesitaría dos enrutadores sin estado capaces de NAT, que no aleatoricen los puertos de origen. Debería usar NAT estática para su máquina.

Supongo que utilizará el direccionamiento privado internamente.

Un enrutador (routerX) tendría la dirección pública xxx.xxx.xxx.xxx y se utilizaría para los paquetes salientes, y el otro enrutador (routerY) tiene la dirección pública yyy.yyy.yyy.yyy y se usa para los paquetes entrantes.

RouterX será la ruta predeterminada.

Entonces, su máquina, diremos que es 10.10.10.10, y envía un paquete a google.com en el puerto 80, a medida que pasa a través de RouterX, la dirección de origen del paquete se cambia a través de NAT para ser la dirección IP de routerY.

Paquete original:

Src: 10.10.10.10 Src-port: 34343    Dst: google.com Dst-port: 80

El puerto de origen es efímero: "inventado". Sin embargo, es vital que los paquetes de respuesta respondan al puerto correcto.

RouterX hace el NAT, por lo que se ve así una vez en la red:

Src: yyy.yyy.yyy.yyy Src-port: 34343    Dst: google.com Dst-port: 80

Google recibe el paquete y responde. Entonces su respuesta es la inversa:

Src: google.com Src-port: 80   Dst: yyy.yyy.yyy.yyy Dst-port: 34343

Este paquete llegará naturalmente a RouterY. Tiene un NAT estático que dice que cualquier cosa destinada a la dirección IP aaa.aaa.aaa.aaa debe estar nativa a 10.10.10.10:

Src: google.com Src-port: 80   Dst: 10.10.10.10 Dst-port: 34343

Hecho: el paquete llega a su máquina, felizmente inconsciente de que tomó una ruta tan tortuosa.

Puede hacer esto con los enrutadores Cisco IOS. De hecho, si bien este escenario tiene dos enrutadores, podría hacerlo con un solo enrutador y algunas rutas de políticas.

Pablo
fuente
3
Esperemos que el ISP para xxx.xxx.xxx.xxx no identifique los paquetes salientes con la dirección de origen yyy.yyy.yyy.yyy como maliciosos y los descarte. Además de eso, las conexiones ya no serán compartibles entre dispositivos (solo 10.10.10.10 puede usarlo ahora)
artistoex
1
Tampoco funcionará con DHCP a largo plazo (porque la dirección IP puede cambiar). No me malinterpreten, su respuesta es seguramente un boceto viable. Pero con el conjunto potencialmente grande de restricciones y requisitos que actualmente no conocemos, el OP tiene que adaptarlo a su situación y encontrará inconvenientes que ninguno de nosotros prevé en este momento. También hay bastante camino por recorrer desde la esperanza de resolver este problema a través de las bibliotecas C # hasta la aplicación de su solución en un enrutador Cisco y mucho menos en una máquina Windows.
artistoex 01 de
1
Gracias a todos por sus esfuerzos! ¡Probaré el procedimiento para completarlo con las bibliotecas de C # y le haré saber el resultado!
csharpbd
¡@csharpbd debe escribir todos los detalles que pueda sobre la solución si puede resolverla!
Mushfiq
@artistoex Sí, es limitado, pero alcanzable. El otro enfoque sería usar dos firewalls con sincronización de estado rápida, que luego le permitiría usar múltiples direcciones internas.
Paul
4

Creo que la respuesta a la pregunta "¿cómo usar dos conexiones a Internet en una PC al mismo tiempo?" no lo haga dividiendo la carga y descarga del servicio 1 para separar las conexiones, sino dividiendo qué servicios usan qué conexión.

Todas las soluciones de banda ancha que he visto permiten la carga y descarga simultánea de grandes cantidades de datos sin afectarlas entre sí hasta que la velocidad de carga o descarga alcance aproximadamente el 80% de su máximo, estaría buscando dividir el tráfico de manera diferente. El método habitual y, por lo tanto, mejor soportado es tener diferentes servicios utilizando diferentes rutas.

Si la motivación detrás de esto es porque Skype está afectando a otro tráfico u otro tráfico está afectando a Skype, entonces también debe mirar las características de QoS de "Calidad de servicio" en su enrutador y usarlas, ya que le permite priorizar el tráfico que quieres

Proporcionar limitación de ancho de banda en servicios de baja prioridad para evitar la saturación de ancho de banda en cualquier dirección ayuda significativamente a la confiabilidad y capacidad de respuesta de otros servicios.

BeowulfNode42
fuente
Satellite también divide la conexión fuera del sistema operativo.
Ignacio Vazquez-Abrams
Con un enlace combinado satélite / terrestre, la división se realiza en el enlace o la capa física, que es muy diferente de dividir el tráfico en función de su dirección de acuerdo con un protocolo de nivel mucho más alto (lejos o hacia una dirección IP específica). Las comunicaciones full duplex a menudo se implementan utilizando una técnica similar (un par transmisor / receptor o un par de transceptores que usan enlaces separados en lugar de un solo transceptor y un solo enlace). Si bien es una comparación interesante, no es relevante para la pregunta formulada.
un CVn
Sí, tienes razón sobre que ese tema del satélite es irrelevante, así que lo eliminé.
BeowulfNode42 01 de