
Я создал очень стандартный Xen-4.0 domU с сетевой конфигурацией моста. Однако из виртуальной машины в сеть, к которой подключен мост (peth0), не выходит ни одного пакета. Из гостевой ОС я могу пинговать гипервизор, но не могу пинговать ничего за его пределами.
IP-адреса:
x.x.x.121
-- гипервизор буддаx.x.x.162
-- виртуальная машина, xen6
Что происходит? Это очень стандартная сетевая конфигурация. С другим гипервизором работает точно такая же конфигурация (та же ОС, те же версии, та же конфигурация), а с другим ящиком — нет.
Симптомы похожи наэтот, однако, моя сетевая конфигурация выглядит нормально. Есть идеи?
xen6:~$ пинг -c 1 xxx121 PING xxx121 (xxx121) 56(84) байт данных. 64 байта от xxx121: icmp_req=1 ttl=64 время=0,093 мс --- статистика пинга xxx121 --- 1 пакет передан, 1 получен, 0% потерь пакетов, время 0 мс rtt мин/средн/макс/мдев = 0,093/0,093/0,093/0,000 мс
buddha$ sed -n '/^[^#].*\(\(сеть\)\|\(vif\)\)/p' xend-config.sxp (сетевой-сценарий сетевой-мост) (vif-скрипт vif-мост)
будда# ifconfig -a eth0 Link encap:Ethernet HWaddr 00:30:48:5a:05:fa inet addr:xxx121 Bcast:xxx255 Маска:255.255.255.0 inet6 адрес: fe80::230:48ff:fe5a:5fa/64 Область действия:Ссылка UP BROADCAST РАБОТАЕТ MULTICAST MTU:1500 Метрика:1 RX пакеты:6082 ошибки:0 отброшены:0 переполнения:0 кадр:0 Пакеты TX:1138 Ошибки:0 Отброшено:0 Переполнение:0 Несущая:0 столкновения:0 txqueuelen:0 Байты RX: 573467 (560,0 КиБ) Байты TX: 230756 (225,3 КиБ) lo Ссылка encap:Local Loopback inet addr:127.0.0.1 Маска:255.0.0.0 inet6 addr: ::1/128 Область действия:Хост UP LOOPBACK ВЫПОЛНЯЕТСЯ MTU:16436 Метрика:1 RX пакеты:26 ошибки:0 отброшены:0 переполнения:0 кадр:0 Пакеты TX:26 ошибки:0 отброшены:0 переполнения:0 носитель:0 столкновения:0 txqueuelen:0 Байты RX:2428 (2,3 КиБ) Байты TX:2428 (2,3 КиБ) peth0 Соединение encap:Ethernet HWaddr 00:30:48:5a:05:fa inet6 адрес: fe80::230:48ff:fe5a:5fa/64 Область действия:Ссылка UP BROADCAST РАБОТАЕТ PROMISC MULTICAST MTU:1500 Метрика:1 RX пакеты:6218 ошибки:0 отброшены:0 переполнения:0 кадр:0 Пакеты TX:1141 ошибки:0 отброшены:0 переполнения:0 носитель:0 столкновения:0 txqueuelen:1000 Байты RX: 693978 (677,7 КиБ) Байты TX: 235320 (229,8 КиБ) Прерывание:26 vif1.0 Link encap:Ethernet HWaddr fe:ff:ff:ff:ff:ff inet6 addr: fe80::fcff:ffff:feff:ffff/64 Область действия:Ссылка UP BROADCAST РАБОТАЕТ PROMISC MULTICAST MTU:1500 Метрика:1 RX пакеты:3 ошибки:0 отброшены:0 переполнения:0 кадр:0 Пакеты TX:4369 Ошибки:0 Отброшено:43 Переполнение:0 Несущая:0 столкновения:0 txqueuelen:32 Байты RX:84 (84,0 Б) Байты TX:487332 (475,9 КиБ)
buddha# xm сетевой-список xen6 Idx BE MAC-адрес дескриптор состояния evt-ch tx-/rx-ring-ref BE-path 0 0 00:16:3E:F3:0F:D9 0 4 15 769 /768 /локальный/домен/0/бэкенд/vif/1/0 будда# brctl шоу имя моста идентификатор моста интерфейсы с поддержкой STP eth0 8000.0030485a05fa нет peth0 vif1.0
xen6# ifconfig -a eth0 Link encap:Ethernet HWaddr 00:16:3e:f3:0f:d9 inet addr:xxx162 Bcast:xxx255 Маска:255.255.255.0 inet6 адрес: fe80::216:3eff:fef3:fd9/64 Область действия:Ссылка UP BROADCAST РАБОТАЕТ MULTICAST MTU:1500 Метрика:1 RX пакеты:6870 ошибки:0 отброшены:0 переполнения:0 кадр:0 Пакеты TX:209 ошибки:0 отброшены:0 переполнения:0 носитель:0 столкновения:0 txqueuelen:1000 Байты RX: 628821 (614,0 КиБ) Байты TX: 31636 (30,8 КиБ) Прерывание:17 lo Ссылка encap:Local Loopback inet addr:127.0.0.1 Маска:255.0.0.0 inet6 addr: ::1/128 Область действия:Хост UP LOOPBACK ВЫПОЛНЯЕТСЯ MTU:16436 Метрика:1 RX пакеты:1 ошибки:0 отброшены:0 переполнения:0 кадр:0 Пакеты TX:1 Ошибки:0 Отброшено:0 Переполнение:0 Несущая:0 столкновения:0 txqueuelen:0 Байты RX:80 (80,0 Б) Байты TX:80 (80,0 Б)
xen6:~$ пинг -c 1 xxx121 PING xxx121 (xxx121) 56(84) байт данных. 64 байта от xxx121: icmp_req=1 ttl=64 время=0,081 мс --- статистика пинга xxx121 --- 1 пакет передан, 1 получен, 0% потерь пакетов, время 0 мс rtt мин/средн/макс/мдев = 0,081/0,081/0,081/0,000 мс
Вот контроллер Ethernet:
02:05.0 Контроллер Ethernet: Broadcom Corporation NetXtreme BCM5704 Gigabit Ethernet (версия 10) Подсистема: Super Micro Computer Inc. Устройство 1648 Флаги: мастер шины, 66 МГц, среднее развитие, задержка 64, IRQ 26 Память на fc9f0000 (64-бит, без предварительной выборки) [размер=64K] Расширение ПЗУ на [отключено] Возможности: [40] Устройство PCI-X без моста Возможности: [48] Управление питанием версии 2 Возможности: [50] Важные данные о продукте Возможности: [58] MSI: Включить - Количество=1/8 Маскируемое - 64 бит+ Используемый драйвер ядра: tg3
Я где-то читал (не помню где), что IPMI создает проблемы с сетью. Поэтому я отключил IPMI.
motiejus@buddha> uname -a Linux buddha 2.6.32-5-xen-amd64 #1 SMP Пн Янв 16 20:48:30 UTC 2012 x86_64 GNU/Linux motiejus@buddha> lsb_release -a Идентификатор дистрибьютора: Debian Описание: Debian GNU/Linux 6.0.4 (squeeze) Релиз: 6.0.4 Кодовое имя: сжатие
Обновление с pastebin-data (информация о маршрутизации и результаты 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
решение1
Активирована ли безопасность на основе MAC вашим сетевым отделом? Мне кажется, что принимается только первый исходящий MAC на физической линии.
решение2
Насколько я помню, у меня была та же проблема. Включение кэша arp решило мою проблему, может сработать и у вас.
Вставьте эти строки в /etc/sysctl.conf
:
net.ipv4.ip_forward = 1
net.ipv4.conf.eth0.proxy_arp = 1
Я использую маршрутизируемую сеть, поэтому нет peth0
, возможно, вам нужно включить его:
net.ipv4.conf.peth0.proxy_arp = 1