no hay red en domU en la configuración de puente de red para Xen-4.0

no hay red en domU en la configuración de puente de red para Xen-4.0

Creé un domU Xen-4.0 muy estándar con configuración de puente de red. Sin embargo, ningún paquete sale de la máquina virtual a la red a la que está conectado el puente (peth0). Desde invitado puedo hacer ping al hipervisor, pero no puedo hacer ping a nada fuera de él.

Direcciones IP:

  • x.x.x.121-- buda hipervisor
  • x.x.x.162-- máquina virtual, xen6

¿Lo que está sucediendo? Es una configuración de red muy estándar. Con otro hipervisor funciona exactamente la misma configuración (mismo sistema operativo, mismas versiones, misma configuración), pero con otra caja no.

Los síntomas se parecen aeste, sin embargo, mi configuración de red parece estar bien. ¿Algunas ideas?

xen6:~$ping -c 1 xxx121
PING xxx121 (xxx121) 56(84) bytes de datos.
64 bytes de xxx121: icmp_req=1 ttl=64 tiempo=0,093 ms

--- estadísticas de ping xxx121 ---
1 paquete transmitido, 1 recibido, 0% pérdida de paquete, tiempo 0ms
rtt mín/promedio/máx/mdesv = 0,093/0,093/0,093/0,000 ms
buda$ sed -n '/^[^#].*\(\(red\)\|\(vif\)\)/p' xend-config.sxp
(puente de red de script de red)
(vif-script vif-puente)
buda # ifconfig -a
eth0 Encapsulación de enlace:Ethernet HWaddr 00:30:48:5a:05:fa  
          Dirección Internet:xxx121 Bcast:xxx255 Máscara:255.255.255.0
          dirección inet6: fe80::230:48ff:fe5a:5fa/64 Alcance:Enlace
          ARRIBA TRANSMISIÓN EJECUTANDO MULTIDISIÓN MTU:1500 Métrica:1
          Paquetes RX: 6082 errores: 0 descartados: 0 desbordamientos: 0 fotograma: 0
          Paquetes TX: 1138 errores: 0 descartados: 0 desbordamientos: 0 operador: 0
          colisiones:0 txqueuelen:0
          Bytes RX: 573467 (560,0 KiB) Bytes TX: 230756 (225,3 KiB)

lo Encapsulación de enlace: Bucle invertido local  
          Dirección Internet: 127.0.0.1 Máscara: 255.0.0.0
          dirección inet6: ::1/128 Alcance:Host
          ARRIBA BUCLE EN EJECUCIÓN MTU:16436 Métrica:1
          Paquetes RX: 26 errores: 0 descartados: 0 desbordamientos: 0 fotogramas: 0
          Paquetes TX: 26 errores: 0 descartados: 0 desbordamientos: 0 operador: 0
          colisiones:0 txqueuelen:0
          Bytes RX: 2428 (2,3 KiB) Bytes TX: 2428 (2,3 KiB)

peth0 Encapsulación de enlace: Ethernet HWaddr 00:30:48:5a:05:fa  
          dirección inet6: fe80::230:48ff:fe5a:5fa/64 Alcance:Enlace
          UP BROADCAST EJECUTANDO PROMISC MULTICAST MTU:1500 Métrica:1
          Paquetes RX: 6218 errores: 0 descartados: 0 desbordamientos: 0 fotograma: 0
          Paquetes TX: 1141 errores: 0 descartados: 0 desbordamientos: 0 operador: 0
          colisiones:0 txqueuelen:1000
          Bytes RX: 693978 (677,7 KiB) Bytes TX: 235320 (229,8 KiB)
          Interrumpir:26

vif1.0 Encapsulación de enlace:Ethernet HWaddr fe:ff:ff:ff:ff:ff  
          dirección inet6: fe80::fcff:ffff:feff:ffff/64 Alcance:Enlace
          UP BROADCAST EJECUTANDO PROMISC MULTICAST MTU:1500 Métrica:1
          Paquetes RX: 3 errores: 0 descartados: 0 desbordamientos: 0 fotogramas: 0
          Paquetes TX: 4369 errores: 0 descartados: 43 desbordamientos: 0 operador: 0
          colisiones:0 txqueuelen:32
          Bytes de RX: 84 (84,0 B) Bytes de TX: 487332 (475,9 KiB)
buda # xm lista de redes xen6
Idx BE Dirección MAC manejar el estado evt-ch tx-/rx-ring-ref BE-path
0 0 00:16:3E:F3:0F:D9 0 4 15 769 /768 /local/dominio/0/backend/vif/1/0

buda # brctl espectáculo
nombre del puente ID del puente Interfaces habilitadas para STP
eth0 8000.0030485a05fa sin peth0
                                        vif1.0
xen6# ifconfig -a
eth0 Encapsulación de enlace: Ethernet HWaddr 00:16:3e:f3:0f:d9  
          Dirección Internet:xxx162 Bcast:xxx255 Máscara:255.255.255.0
          dirección inet6: fe80::216:3eff:fef3:fd9/64 Alcance:Enlace
          ARRIBA TRANSMISIÓN EJECUTANDO MULTIDISIÓN MTU:1500 Métrica:1
          Paquetes RX: 6870 errores: 0 descartados: 0 desbordamientos: 0 fotograma: 0
          Paquetes TX: 209 errores: 0 descartados: 0 desbordamientos: 0 operador: 0
          colisiones:0 txqueuelen:1000
          Bytes RX: 628821 (614,0 KiB) Bytes TX: 31636 (30,8 KiB)
          Interrumpir: 17

lo Encapsulación de enlace: Bucle invertido local  
          Dirección Internet: 127.0.0.1 Máscara: 255.0.0.0
          dirección inet6: ::1/128 Alcance:Host
          ARRIBA BUCLE EN EJECUCIÓN MTU:16436 Métrica:1
          Paquetes RX:1 errores:0 descartados:0 desbordamientos:0 fotograma:0
          Paquetes TX:1 errores:0 descartados:0 desbordamientos:0 operador:0
          colisiones:0 txqueuelen:0
          Bytes RX: 80 (80,0 B) Bytes TX: 80 (80,0 B)
xen6:~$ping -c 1 xxx121
PING xxx121 (xxx121) 56(84) bytes de datos.
64 bytes de xxx121: icmp_req=1 ttl=64 tiempo=0,081 ms

--- estadísticas de ping xxx121 ---
1 paquete transmitido, 1 recibido, 0% pérdida de paquete, tiempo 0ms
rtt mín/promedio/máx/mdesv = 0,081/0,081/0,081/0,000 ms

Aquí está el controlador de Ethernet:

02:05.0 Controlador Ethernet: Broadcom Corporation NetXtreme BCM5704 Gigabit Ethernet (rev. 10)
    Subsistema: Dispositivo Super Micro Computer Inc 1648
    Banderas: bus maestro, 66 MHz, desarrollo medio, latencia 64, IRQ 26
    Memoria en fc9f0000 (64 bits, no recuperable) [tamaño=64K]
    ROM de expansión en [deshabilitado]
    Capacidades: [40] Dispositivo PCI-X sin puente
    Capacidades: [48] Administración de energía versión 2
    Capacidades: [50] Datos vitales del producto
    Capacidades: [58] MSI: Habilitar- Contar=1/8 Enmascarable- 64 bits+
    Controlador kernel en uso: tg3

Leí en alguna parte (no recuerdo dónde) que IPMI crea problemas con las redes. Entonces desactivé IPMI.

motiejus@buda> uname -a
Linux buddha 2.6.32-5-xen-amd64 #1 SMP lunes 16 de enero 20:48:30 UTC 2012 x86_64 GNU/Linux
motiejus@buda> lsb_release -a
ID de distribuidor: Debian
Descripción: Debian GNU/Linux 6.0.4 (comprimido)
Versión: 6.0.4
Nombre en clave: apretar

Actualización desde Pastebin-data (información de enrutamiento y resultados de ping):

Xen6:
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface  
x.x.x.0    0.0.0.0         255.255.255.0   U         0 0          0 eth0   
0.0.0.0         x.x.x.1    0.0.0.0         UG        0 0          0 eth0   

Buddha:
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface    
x.x.x.0    0.0.0.0         255.255.255.0   U         0 0          0 eth0     
0.0.0.0         x.x.x.1    0.0.0.0         UG        0 0          0 eth0     

xen6:~$ ping -c1 x.x.x.1
PING x.x.x.1 (x.x.x.1) 56(84) bytes of data.

--- x.x.x.1 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms

buddha# tcpdump -nni eth0 icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode                    
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes                      
22:51:01.977068 IP x.x.x.162 > x.x.x.1: ICMP echo request, id 2632, seq 1, length 64

However, x.x.x.1 does not receive the ICMP request.

buddha# ping -c1 x.x.x.1
PING x.x.x.1 (x.x.x.1) 56(84) bytes of data.         
64 bytes from x.x.x.1: icmp_req=1 ttl=255 time=0.403 ms   

--- x.x.x.1 ping statistics ---                           
1 packets transmitted, 1 received, 0% packet loss, time 0ms    
rtt min/avg/max/mdev = 0.403/0.403/0.403/0.000 ms 

Respuesta1

¿Su departamento de red activa la seguridad "basada en MAC"? Esto me parece como si solo se aceptara la primera MAC saliente en la línea física.

Respuesta2

Según recuerdo mi problema era el mismo. Activar el caché arp resolvió mi problema, podría funcionar para usted también.

Inserte estas líneas en /etc/sysctl.conf:

net.ipv4.ip_forward = 1
net.ipv4.conf.eth0.proxy_arp = 1

Utilizo una red enrutada, por lo que no hay peth0, tal vez necesites habilitarla:

net.ipv4.conf.peth0.proxy_arp = 1

información relacionada