Я пытаюсь установить Xen 3.2 на Debian Lenny на сервере с двумя сетевыми адаптерами, один из которых подключен к частной локальной сети, а другой - к Интернету. Этот сервер какое-то время работал без Xen, и все работает нормально. Однако с Xen сеть не работает должным образом. Мне сложно понять, как это правильно настроить, так как на сайте / вики Xen, в списках рассылки и даже здесь есть много противоречивых советов.
Вот основы: eth0 - это частная сеть, eth1 - публичный Интернет. В конечном итоге я хочу, чтобы dom0 (и все domU) имели доступ к обоим интерфейсам. В настоящее время существует сценарий iptables (от использования до Xen), который настраивает брандмауэр и переадресацию портов для других клиентских машин в частной сети. Поэтому даже до того, как я беспокоюсь об установке domU, я пытаюсь заставить все работать для моста, зная, что это то, где мне нужно быть.
В Xen Networking вики и Debian Xen вики оба указывают мне на использование сценариев моста Xen, но когда я это делаю, eth1 не запускается автоматически во время загрузки, поэтому dom0 не имеет доступа к общедоступной сети. Это нормально, когда я sudo ifup eth1
вручную. Обратите внимание, что я пока даже не беспокоюсь о domU, и мне хорошо известно, что готовый мост Xen ничего не сделает для eth1 <-> domU.
Этот вопрос ServerFault не рекомендует использовать сценарии моста Xen. Я пробовал эту конфигурацию, и dom0 не может получить доступ ни к частным, ни к общедоступным сетям.
Эта ветка списка рассылки говорит, что пакет Debian bridge-utils должен делать все, что мне нужно, но, похоже, подразумевает, что если я хочу, чтобы мой dom0 находился в общедоступной сети, я должен назначить адрес как реальному eth1, так и мосту. Значит, в этом случае мне нужно сжечь два публичных адреса?
/etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth1
allow-hotplug eth1
iface eth1 inet static
address 24.123.138.34
netmask 255.255.255.248
network 24.123.138.32
broadcast 24.123.138.39
gateway 24.123.138.33
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 127.0.0.1
dns-search lightyearsoftware.com
auto eth1:0
iface eth1:0 inet static
address 24.123.138.36
netmask 255.255.255.248
network 24.123.138.32
broadcast 24.123.138.39
gateway 24.123.138.33
# Internal network
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
# mtu 9000 # memory alloc failures with 2.6.26-2 e1000 driver
#auto br-eth0 br-eth1
#iface br-eth0 inet manual
# bridge_ports eth0
#iface br-eth1 inet manual
# bridge_ports eth1
/etc/xen/xend-config.sxp
использует (network-script network-dummy)
когда последние 4 строки interfaces
файл раскомментирован, (network-script network-bridge)
в противном случае.
Я более чем счастлив предоставить любую другую диагностическую информацию, которая может помочь.
«Вики Xen Networking и вики Debian Xen указывают мне на использование сценариев моста Xen»
Проблема с вики в том, что любой идиот может их редактировать - и обычно они это делают. Вики-страница Debian Xen неправильная, очень, очень неправильная; У меня даже нет духа заглядывать в вики по сетям Xen. Раньше были полезные сетевые документы в README.Debian
для xen-utils
пакет, но они, похоже, на каком-то этапе разошлись.
Мой ответ в Запуск сетевого интерфейса без IP-адреса, настроенного в Debian, для XEN dom0 вероятно, у вас не сработает, потому что это решает совсем другую проблему. Вам, вероятно, следует перечитать вопрос, чтобы обнаружить различия.
Эта ветка списка рассылки полна тарабарщины (и обычного глупого форматирования Nabble), поэтому я не собираюсь пытаться выяснить, где именно вы видите необходимость поместить IP-адрес как в интерфейс, так и в мост, но я могу заверить вас, что вам не нужно этого делать - просто IP-адреса на мосту будет вполне достаточно.
Самый простой способ исправить конфигурацию вашей сети, вероятно, заключается в следующем:
(network-script network-dummy)
а потом chattr +i /etc/xen/xend-config.sxp
(чтобы отговорить вас от попыток больше возиться с этим)br-*
строфы у вас есть в настоящее времяgateway
линия от eth0:1
строфа/allow_hotplug/d
s/eth0/br0/; s/eth1/br1/
bridge_ports eth0
к твоему сейчас-br0
configbridge_ports eth1
к твоему сейчас-br1
config/etc/init.d/networking restart