¿Cómo puedo garantizar que el tráfico saliente utilice la misma interfaz que el tráfico entrante en Linux?

¿Cómo puedo garantizar que el tráfico saliente utilice la misma interfaz que el tráfico entrante en Linux?

Tengo una caja de Linux con dos interfaces: una para datos y otra para fines de gestión. Si ambos están en la misma red, agregué una ruta para ambas interfaces.

Imagine que la tabla de enrutamiento es:

192.168.132.0 255.255.255.0 eth0
192.168.132.0 255.255.255.0 eth1 ( management interface)

El problema es que incluso si se inicia una conexión para administrar IP ( eth1), el tráfico de retorno estará activado eth0.

¿Cómo puedo garantizar que el tráfico de retorno en una conexión utilice la misma interfaz que el tráfico reenviado?

Respuesta1

Idealmente, ambas interfaces deberían ser parte de diferentes subredes IP, pero si está convencido de que necesita ir solo por este camino, entonces debería usar el enrutamiento de acceso dividido de Linux.

Descripción del acceso dividido de Linux

Ejemplo de acceso dividido de Novell

Primero, cree dos tablas de enrutamiento, T1 y T2, que se usarán para los paquetes enviados hacia o desde estas NIC agregando las líneas

252 T1
251 T2

a /etc/iproute2/rt_tables.

A continuación, configure las reglas de enrutamiento para enrutar paquetes entrantes y salientes a través de estas tablas:

ip route add 10.105.16.0/24 dev eth0 src 10.105.16.100 table T1
ip route add default via 10.105.16.2 dev eth0 src 10.105.16.100 table T1
ip rule add from 10.105.16.100 table T1

ip route add 10.105.16.0/24 dev eth1 src 10.105.16.101 table T2
ip route add default via 10.105.16.2 dev eth1 src 10.105.16.101 table T2
ip rule add from 10.105.16.101 table T2

información relacionada