Я установил Xen некоторое время назад, но еще не загрузился с гипервизором. Хорошо, я сделал вчера, и весь ад разразился. Я полностью потерял подключение к Интернету на моем сервере из-за Xen.
Когда я запускаю свой сервер и eth0
не внутри br0
, Xen пытается виртуализировать его, переименовав его в peth0
(физический eth0
), а затем предполагается создать veth0
(виртуальный eth0
) и переименуйте его в eth0
, по крайней мере, согласно Документация Xen.
Проблема в том, что он не вызывает eth0
и я остался без подключения к Интернету. у меня есть eth1
на моем сервере и хотел бы виртуализировать этот интерфейс вместо из eth0
. Для этого я разместил eth1
Внутри br0
и br0
виртуализируется для virbr0
. Как остановить виртуализацию Xen eth0
и использовать br0/eth1
вместо?
Вот что я получаю от systemctl -o cat status network.service
:
Bringing up lookback interface: [ OK ]
Bringing up interface eth0: Error: either "dev" is a duplicate, or "virbr0" is a garbage.
ERROR : [/etc/sysconfig/network-scripts/ifup-eth] Failed to bring up peth0 virbr0.
[FAILED]
Bringing up interface eth1: [ OK ]
Bringing up interface br0: [ OK ]
Надо любить эту грамматику во второй строке (это дословно до интервала).
virbr0 обрабатывается непосредственно libvirt, что видно из любого из ответов на это сообщение как настроенный из /etc/libvirt/qemu/networks
.
Ответ содержится в предоставленной вами ссылке: Настройка мостовой сети.
До XEN 4.1 роль XEN заключалась в настройке сетевого моста.
После этого необходимо настроить соответствующие мосты средствами ОС.
НО: Если во время запуска XEN не определены мосты, будет создан мост по умолчанию (сравнимо с предыдущим поведением).
Есть веская причина поставить это за пределы XEN-control, поскольку существуют очень сложные комбинации связывания / VLAN, которые не могут быть покрыты скриптами по умолчанию. Также сетевой стек отличается от ОС к ОС.
У меня была аналогичная проблема с SLES10 SP4 - где мне требовалась довольно сложная настройка сети.
Итак, я установил свой собственный сценарий инициализации в /etc/init.d/, чтобы настроить мост / соединение / vlans.
С SLES11 SP2 это было проще простого, и его можно было настроить с ОС-yast2
-команда.
При этом мосты работают до запуска XEND.
Что-то вроде этого может сработать для вас:
XENBRIDGE=/etc/xen/scripts/network-bridge
$XENBRIDGE bridge=br0 netdev=eth1 start
Fedora должна быть сопоставима с RHEL6 - так что, возможно, вы можете использовать сетевой-установочный-документ и вместо этого интегрируйте вашу конфигурацию моста в обычную сетевую настройку (что является лучшим способом сделать это).
Чтобы исправить это, я изменил эти:
(network-script 'network-bridge bridge=virbr0')
(vif-script vif-bridge)
к этим:
(network-script 'network-bridge bridge=virbr0 netdev=eth1')
(vif-script vif-nat)
В /etc/xen/xend-config.sxp
, который успешно покинул eth0
один и только переименовывает eth1
к peth1
сейчас, и я полагаю, не вызывает veth1/eth1
потому что это внутри br0
. Затем я переименовал ifcfg-em1/ifcfg-em2
к ifcfg-eth0/ifcfg-eth1
, и изменилось:
IPADDR0=xxx.xxx.xxx.xxx
PREFIX0=xx
GATEWAY0=xxx.xxx.xxx.xxx
DNS1=xxx.xxx.xxx.xxx
Кому:
IPADDR=xxx.xxx.xxx.xxx
PREFIX=xx
GATEWAY=xxx.xxx.xxx.xxx
DNS=xxx.xxx.xxx.xxx
Это вернуло мне мой интернет и локальный хост.
Вы знаете, что было самым лучшим в этом опыте? Я могу оставить NetworkManager отключенным навсегда.