¿Cómo hacer que Windows envíe tráfico específico a puertos Ethernet específicos?

2

En mi línea de trabajo, a menudo me encuentro en una situación en la que quiero hacer esto:

Network Diagram

Icono hecho por Freepik utilizado con permiso de flaticon.com

Básicamente, tengo la configuración de mi teléfono como un punto caliente de Wifi, para descargar los archivos de licencia y firmware de un servidor en línea y escribir esos archivos en un dispositivo TCP / IP que tengo conectado a mi PC. Este proceso es mucho más fácil si puedo tener WiFi y Ethernet activos al mismo tiempo. . Básicamente, el dispositivo TCP / IP puede encontrar su propio firmware apropiado en el servidor si tengo internet; de lo contrario, me veo obligado a desactivar el puerto Ethernet, localizar y descargar el archivo manualmente, desactivar el Wifi, habilitar el puerto Ethernet y finalmente vuelva a conectarse a mi dispositivo y cargue manualmente los archivos.

El problema es que Windows (específicamente, Windows 7) no entiende cómo usar múltiples adaptadores, especialmente si mi conexión Ethernet no es una conexión directa sino que se enruta a través de una red interna (que todavía no tiene acceso a Internet).

¿Hay alguna forma de configurar algo como una tabla de enrutamiento en Windows 7, es decir, configurarlo para que "los paquetes del rango de direcciones X vayan al adaptador Y, de lo contrario, envíen paquetes en el adaptador Z"? Si no puedo enrutar por dirección de destino, ¿podría al menos asociar un adaptador específico con una aplicación específica?

Frank
fuente

Respuestas:

1

Puedes configurar algo no solo me gusta una tabla de enrutamiento, pero exactamente una tabla de enrutamiento.

Desde un indicador de comando elevado en Windows, puede usar el comando ROUTE.

Puede ver su tabla de rutas e interfaces actuales usando route print.

Con frecuencia utilizo una configuración similar, donde mi VPN solo se conecta a través del operador de mi teléfono móvil y no a través de mi WiFi. Como tal, configuro mi tabla de enrutamiento por:

route delete 0.0.0.0 - Se deshace de las rutas predeterminadas una vez que he conectado mi punto de acceso a mi teléfono, ya que generalmente configura dos y ambas lo manejarán con diferentes métricas. Las métricas determinan la prioridad de una ruta, cuanto menor sea el número, mayor será la prioridad.

route add 0.0.0.0 mask 0.0.0.0 192.168.44.1 if 5 - Configura una nueva ruta predeterminada para todo el tráfico no manejado de otra manera, apuntando a 192.168.44.1 (la puerta de enlace de la zona activa de mi teléfono), usando la interfaz 5, que es el dispositivo PAN Bluetooth de mi máquina que se encuentra al mirar route print.

Luego puedo conectarme a VPN, borrar la 0.0.0.0 Ruta de nuevo, y vuelva a agregar la ruta a mi WiFi. Finalmente, puedo usar:

route add 192.168.0.0 mask 255.255.255.0 192.168.13.11 IF 58 - Esto señala todo el tráfico a una subred 192.168.0.X a la puerta de enlace del servidor VPN, mediante la interfaz VPN.

Una vez que esto se completa, todo el tráfico 192.168.0.X se envía al servidor VPN. Cualquier otro tráfico no enrutado específicamente, entonces es manejado por la máscara 0.0.0.0,

Por supuesto, todo esto variará según el hardware y el diseño de la red, pero ciertamente puede hacerse.


Otras lecturas:

RUTA - Tabla de ruteo

Jonno
fuente
¡Increíble! Cuando utiliza ROUTE, ¿modifica la tabla de enrutamiento de forma permanente o tendrá que volver a ejecutarse periódicamente? Además, ¿hay una manera de hacer una copia de seguridad de la tabla antes de empezar a jugar con ella?
Frank
@Frank Windows reconfigurará las rutas cuando se conecte a una red, por lo que es posible que deba configurar un archivo por lotes para realizar los pasos una vez que esté contento de que estén funcionando. Por lo general, si me equivoco, volveré a conectarme a mi WiFi y comenzaré de nuevo.
Jonno
1

La mayoría de las personas simplemente intentan agregar un alias IP en la configuración de tcp / ip G.U.I., Windows no lo manejará bien.

La solución puede ser agregar una ruta utilizando una métrica correcta y establecer la interfaz correcta (parámetro IF). En el símbolo del sistema, escriba lo siguiente (adaptando las direcciones, la métrica y el número de interfaz a su escenario real): route ADD 192.168.3.0 MASK 255.255.255.0 192.168.3.1 metric 2 if 2

Para obtener el número de interfaz de un adaptador use el comando route print, mostrará una sección de interfaces, algo como esto:

================
Interface List
4... ......Bluetooth Device (Personal Area Network)
3... ......Intel(R) Wireless WiFi Link 4965AG
2... ......VMware Virtual Ethernet Adapter for VMnet1
 ...

Fuente: Manual de la herramienta de línea de comandos ROUTE de Microsoft

---- EDITAR ----

Como dice Phoebus aquí Si se agrega una ruta netsh puede ser más eficiente, el enfoque es el mismo que el del comando route.exe. Si leíste el artículo sobre la tabla de enrutamiento que figura en la respuesta de Jonno a esta pregunta, te será muy fácil administrar tanto netsh route como route.exe.

netsh ruta manual es aquí

Eduardo Augusto Alves Ayres
fuente