2011-12-16 11 views
5

Agregamos una segunda dirección IP a una máquina Linux (Debian) para implementar un segundo certificado SSL a un nuevo Apache vhost.Enlace del tráfico saliente a eth0 en lugar de eth0: 1

Nuestra ifconfig ahora se ve así:

eth0  Link encap:Ethernet Hardware Adresse 00:0c:29:1b:ab:6c 
      inet Adresse:999.999.999.39 Bcast:999.999.999.63 Maske:255.255.255.192 
      inet6-Adresse: (...)/64 Gültigkeitsbereich:Verbindung 
      UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1 
      RX packets:219336884 errors:0 dropped:0 overruns:0 frame:0 
      TX packets:223169420 errors:0 dropped:0 overruns:0 carrier:0 
      Kollisionen:0 Sendewarteschlangenlänge:1000 
      RX bytes:1971307659 (1.8 GiB) TX bytes:713489565 (680.4 MiB) 

eth0:1 Link encap:Ethernet Hardware Adresse (...) 
      inet Adresse:999.999.999.40 Bcast:999.999.999.63 Maske:255.255.255.192 
      UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1 

Problema: Todo el tráfico saliente (conexiones MySQL al DB-servidor externo, las conexiones SMTP salientes de postfix) ahora parece dejar a través de eth0: 1, por lo tanto, la segunda (nuevo) IP 999.999.999.40.

¿Cómo podemos forzar a que salga todo el tráfico saliente a través de eth0, dirección IP 999.999.999.39?

de salida de la ruta:

[n1 ~ #] route 
Kernel-IP-Routentabelle 
Ziel   Router   Genmask   Flags Metric Ref Use Iface 
localnet  *    255.255.255.192 U  0  0  0 eth0 
10.10.10.0  *    255.255.255.0 U  0  0  0 eth1 
default   gateway4.XXX 0.0.0.0   UG 0  0  0 eth0 
default   gateway4.XXX 0.0.0.0   UG 0  0  0 eth0 

solución Encontrado:

Gracias por sus consejos, ip route era el camino a seguir, ahora funciona como se desea.

ip rule add from 999.999.999.39 table t1 
ip rule add from 999.999.999.40 table t2 
ip route del default via 999.999.999.1 
ip route add default 999.999.999.1 dev eth0 table t1 
ip route flush cache 
+0

¿Se puede añadir la salida de 'ip route' por favor? – fge

+1

eth0: 1 no es realmente una interfaz (está siendo bromeado por ifconfig-stop usándolo para su propio bien). –

+0

¿Te entendí bien? Tienes un servidor con múltiples IP's. Tienes Apache con múltiples Virtualhosts. Parece que tengo un problema similar. ¿Puedes mirar mi caso? Si es lo mismo, ¿pueden recuperarse los cambios que realizarían los comandos de su solución? http://serverfault.com/questions/511793/how-configure-apache-virtual-hosts-to-different-ips-for-outgoing-connection – BASILIO

Respuesta

4

creo que tendrá que jugar con el comando route para indicar al sistema cómo encaminar los paquetes. Algo así como:

route add -net APACHE_VHOST_IP netmask 255.255.255.0 dev eth0:1 

para forzar el paquete en destino de APACHE_VHOST_IP utilizar el eth0: 1 interfaz.

Y

route add -net MYSQL_SERVER_IP netmask 255.255.255.0 dev eth0 

para forzar el paquete en destino de MYSQL_SERVER_IP utilizar la interfaz eth0.

+0

Esto haría innecesario definir todos los IP de destino, no ¿eso? Me gustaría forzar TODO el tráfico saliente a eth0. eth0: 1 en realidad solo necesita escuchar – MiDo

+0

y luego definir la ruta predeterminada a eth0 –

+0

Parece que ya está (salida agregada de 'route' a la pregunta) – MiDo

0

añadir esto a /etc/sysconfig/network

GATEWAYDEV=eth0 

Fuerzas default gateway a eth0 interfaz

Cuestiones relacionadas