Cómo configurar la interfaz de red preferida en Linux

19

Tengo mi red configurada así. http://docs.google.com/Doc?docid=0AZ1YxuLE4djaZGhqN2s1NmRfMjhjNjc0Ym1meg&hl=en

arquitectura de red actual

En palabras: tengo una máquina (Calcium, ejecutando Arch Linux) que tiene dos interfaces de red. eth0 está conectado a un enrutador y es gigabit. Eth1 está conectado directamente a la red universitaria a través de 10 Megabytes. El enlace ascendente del enrutador también está conectado a la red de la universidad, y también es de 10 megabytes.

Actualmente (creo) todo el tráfico en Calcium pasa por eth0, a través del enrutador, independientemente de si es interno o externo. (¿Cómo puedo confirmar esto?)

Idealmente, el tráfico destinado a la red interna (192.168.10.0/24) viajaría a través de eth0 al enrutador, y donde sea que vaya. El resto del tráfico debe pasar por eth1.

Mike Cooper
fuente
Etiquetas agregadas: ruta de enrutamiento tcpip
Warner
Su documento de Google no ayuda mucho aquí si no otorga permisos de acceso a las personas.
Zoredache
Lo siento. Pensé que lo hice público, pero los documentos de Google no parecían recordar mi configuración. Debería ser accesible ahora.
Mike Cooper

Respuestas:

13

Su tabla de enrutamiento de red determinará cómo se enrutan los paquetes. Puede agregar rutas adicionales o cambiar la puerta de enlace predeterminada para afectar el enrutamiento.

Si desea asistencia adicional, proporcione su tabla de enrutamiento.

Para mostrar la tabla de enrutamiento:

/sbin/route -n

Para eliminar gw predeterminado:

/sbin/route del default gw $IP

Para agregar gw predeterminado:

/sbin/route add default gw $IP

Para obtener detalles adicionales, consulte la página de manual. También hay otras formas de manipular y mostrar la tabla de enrutamiento.

netstat -rpara mostrar y ipmanipular más.

Warner
fuente
29

Aquí está la respuesta completa, en caso de que ayude a otros:

Para hacer paquetes con destinos 192.168.10. * Use eth0, y todos los demás paquetes usan eth1:

1) Ver su tabla de enrutamiento actual

ip route list

Una entrada será algo así como "predeterminado a través de 192.168.1.1", donde 192.168.1.1 es la dirección IP de su enrutador (también conocido como puerta de enlace). Recuerde las puertas de enlace para eth0 y eth1, ya que las necesitaremos más adelante.

2) Eliminar las rutas predeterminadas. (Advertencia: esto lo pateará fuera de línea).

ip route del default

3) Agregue una nueva ruta predeterminada (esto lo llevará de nuevo en línea). Reemplace 192.168.1.1, a continuación, con la dirección IP de su puerta de enlace desde arriba.

ip route add default via 192.168.1.1 dev eth1

4) Agregue una ruta específica que será atendida por eth0. Las rutas más específicas prevalecen automáticamente sobre las menos específicas.

ip route add 192.168.10.0/24 via 192.168.1.1 dev eth0

Finalmente, puede preguntarle a Linux qué interfaz se usará para enviar un paquete a una dirección IP específica:

ip route get 8.8.8.8

Si la configuración funcionó, los paquetes a 8.8.8.8 (servidor de Google) usarán eth1. Paquetes a cualquier ip en su red local:

ip route get 192.168.10.7

usará eth0.

Luke
fuente