Dom0 não está encaminhando para o DomU

2

A situação:

DomU: Debian SID

/ etc / network / interfaces

auto eth0
iface eth0 inet static
 address x.x.x.55
 gateway x.x.x.49
 netmask 255.255.255.255
 pointopoint x.x.x.49

Ping DomU - > x.x.x.49 (também conhecido como Dom0)

PING x.x.x.49 (x.x.x.49) 56(84) bytes of data.
64 bytes from x.x.x.49: icmp_req=1 ttl=64 time=0.107 ms

Ping DomU - > 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
^C
--- 8.8.8.8 ping statistics ---
34 packets transmitted, 0 received, 100% packet loss, time 33263ms

tcpdump -Kn

21:03:30.316328 IP x.x.x.55 > 8.8.8.8: ICMP echo request, id 4904, seq 3, length 64
21:03:31.324344 IP x.x.x.55 > 8.8.8.8: ICMP echo request, id 4904, seq 4, length 64
21:03:32.332338 IP x.x.x.55 > 8.8.8.8: ICMP echo request, id 4904, seq 5, length 64
21:03:33.340323 IP x.x.x.55 > 8.8.8.8: ICMP echo request, id 4904, seq 6, length 64
21:03:34.348343 IP x.x.x.55 > 8.8.8.8: ICMP echo request, id 4904, seq 7, length 64

Dom0: Debian Wheezy com o Xen 4.1

/ etc / network / interfaces

auto eth0
iface eth0 inet static
 address x.x.x.49
 gateway x.x.x.33
 netmask 255.255.255.255
 pointopoint x.x.x.33

sysctl -a

net.ipv4.conf.eth0.forwarding = 1
net.ipv4.conf.eth0.proxy_arp = 1
net.ipv6.conf.eth0.forwarding = 1
net.ipv4.conf.vif1/0.proxy_arp = 1

iptables -L -n (regras adicionadas automaticamente por vif-route)

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            PHYSDEV match --physdev-out vif1.0 --physdev-is-bridged
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            PHYSDEV match --physdev-in vif1.0 --physdev-is-bridged udp spt:bootpc dpt:bootps
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            PHYSDEV match --physdev-out vif1.0 --physdev-is-bridged
ACCEPT     all  --  x.x.x.55             0.0.0.0/0            PHYSDEV match --physdev-in vif1.0 --physdev-is-bridged

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

cat /etc/xen/xend-config.sxp | grep -e script

# (network-script network-bridge)
# (network-script 'network-bridge netdev=eth1')
# (network-script 'network-bridge bridge=<name>')
#(vif-script vif-bridge)
(network-script network-route)
(vif-script     vif-route)
#(network-script network-nat)
#(vif-script     vif-nat)
#(resource-label-change-script '')

Ping Dom0 - > DOMU

PING x.x.x.55 (x.x.x.55) 56(84) bytes of data.
64 bytes from x.x.x.55: icmp_req=1 ttl=64 time=0.148 ms

tcpdump -Kn | grep 55

21:01:36.545890 IP x.x.x.55 > 8.8.8.8: ICMP echo request, id 4880, seq 4, length 64
21:01:36.551504 IP 8.8.8.8 > x.x.x.55: ICMP echo reply, id 4880, seq 4, length 64
21:01:37.545838 IP x.x.x.55 > 8.8.8.8: ICMP echo request, id 4880, seq 5, length 64
21:01:37.550473 IP 8.8.8.8 > x.x.x.55: ICMP echo reply, id 4880, seq 5, length 64

Pergunta

Como pode ser que o Dom0 não encaminhe os pacotes TCP recebidos para o meu DomU?

    
por cimnine 10.03.2013 / 21:07

1 resposta

1

Solução

Bem, como se viu, todas as configurações acima são perfeitamente corretas . O problema era que meu hoster atribuía um endereço MAC dedicado ao IP adicional. Portanto, Dom0 descartou o pacote imediatamente, porque achava que não era um pacote para si mesmo.

Depois de remover este MAC virtual, os pacotes foram aceitos perfeitamente e roteados por todo o sistema.

Portanto

Se você encontrar pacotes estranhos em seu dispositivo ethernet da Internet ( eth0 no meu caso), certifique-se de que tudo está correto, e confirme se o endereço MAC é o mesmo do seu endereço principal, uma das eth0 !

    
por 13.03.2013 / 00:31