РЕДАКТИРОВАТЬ: решено
похоже, что переключение статических определений MAC в сочетании со статическим отображением vif / 0 и vif / 0 на eth0 и eth1 (в domU, согласно http://tomclegg.net/xen-eth0-renamed) сделал это.
Я устраняю эту странную проблему (ну, по крайней мере, для меня) на моем xen domU.
Вот базовый макет:
-------- ------------- | | | XEN d0 | | A | | --------- | | | | | xen dU| | -------- -------------
Хост A не является связанной машиной с IP 213.226.13x.yyy / 24
XEN d0 - это гипервизор с IP 213.226.13x.zzz / 24
XEN dU - это гостевая ОС (debian etch), которую я пытаюсь настроить, чтобы увидеть шлюз, у него IP 213.226.13x.jjj / 24
Шлюз - 213.226.13x.1.
Все машины находятся в одной подсети. Проблема в том, что ОС gues не может пинговать шлюз, но может пинговать dom0 и хост A без проблем.
dom0 и хост A могут пинговать друг друга, шлюз и гость.
Что я пробовал на хосте A:
ARP ping
$ arping -c 1 -i eth0 213.226.13x.1
ARPING 213.226.13x.1 60 bytes from 00:02:b3:e8:30:7e (213.226.13x.1): index=0 time=224.113 usec ...
(как ни странно, arping -c 1 -i eth0 00: 02: b3: e8: 30: 7e не работает).
Широковещательный пинг
$ ping -b 213.226.13x.255
WARNING: pinging broadcast address PING 213.226.13x.255 (213.226.13x.255) 56(84) bytes of data. 64 bytes from 213.226.13x.18: icmp_seq=1 ttl=64 time=0.463 ms 64 bytes from 213.226.13x.28: icmp_seq=1 ttl=64 time=0.478 ms (DUP!) ...
То же самое на гостевой системе xen не возвращает никаких результатов (как arping, так и ping -b).
$ iptables -L вывод на обоих хостах A и xen-гостях одинаковый (нулевые правила):
Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
Вещи, которые я исключил на этот раз:
повреждена физическая ссылка - XEN dom0 также не будет работать, что не так.
брандмауэр на шлюзе - мои запросы ARP все равно проходят?
брандмауэр на гостевой системе xen - iptables -L не имеет правил
проблема с маршрутизацией - не уверен в этом, но я бы не смог пинговать хост A и dom0 с испорченной таблицей маршрутизации, не так ли?
Любая помощь очень ценится
EDIT1: дополнительная информация
Я не использую сценарии моста xen, вместо этого network-dummy с вручную созданным br-eth1 для eth1, который является интерфейсом для локальной сети. eth0 - это мост, созданный установкой XEN для интерфейса eth0 (переименованный в peth0 AFAIK).
Вот как выглядит / etc / network / interfaces на dom0:
# The loopback network interface auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 213.226.13x.zzz netmask 255.255.255.0 gateway 213.226.13x.1 auto eth1 iface eth1 inet manual auto br-eth1 iface br-eth1 inet static address 192.168.1.11 netmask 255.255.255.0
И "brctl show" (при выключенном domU) ..
bridge name bridge id STP enabled interfaces br-eth1 8000.000423d0d059 no eth1 eth0 8000.000423d0d058 no peth0
EDIT2: дополнительная информация
Конфигурация XEN для domU:
# # Bootloader + kernel + memory size # bootloader = '/usr/lib/xen-3.2-1/bin/pygrub' kernel = '/boot/vmlinuz-2.6.18-5-xen-686' ramdisk = '/boot/initrd.img-2.6.18-5-xen-686' memory = '3072' vcpus = '4' # # Disk device(s). # root = '/dev/sda1 ro' disk = [ 'phy:/dev/vg_main/domain-disk,sda1,w', 'phy:/dev/vg_main/domain-swap,sda2,w', ] # # Hostname # name = '...' # # Networking # vif = [ 'ip=213.226.13x.jjj,mac=00:16:3E:83:0B:BC,bridge=eth0', 'ip=192.168.1.12,mac=00:16:3E:83:0B:AC,bridge=br-eth1', ] # # Behaviour # on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart'