Назад | Перейти на главную страницу

Добавление моста убивает интернет-соединение со всех интерфейсов

Я работаю над Debian stretch с новейшим xen из репозиториев.

Установка xen-system и xen-tools не дала ошибок, хотя когда я пытаюсь запустить гостевую систему (назовем это dom1) он не будет работать, если я не создам мост. Я создаю мост с помощью brctl и называю его xenbr0 и связываю его с основным интерфейсом (на моем сервере он называется eno1).

Запуск dom1 теперь работает, но нет подключения ни к какой сети, даже к локальной сети, ни от хоста, ни от гостя. От сервера тоже нет ответа, если я попытаюсь пропинговать его с другого устройства.

/ etc / network / interfaces (следуя последнему руководству, которое смог найти):

auto lo
iface lo inet loopback

#xen
auto xenbr0
iface xenbr0 inet static
    address 192.168.0.201
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255
    gateway 192.168.0.1
    dns-nameservers 192.168.0.1 8.8.8.8 4.4.2.2
    dns-search google.com

#The primary network interface
auto eno1
iface eno1 inet manual

Не знаю, что еще не пробовал. Я редактировал /etc/xen-tools/xen-tools.conf, /etc/xen/xl.conf, resolv.conf и / etc / network / interfaces в соответствии со всеми руководствами, которые смог найти (конечно, сначала вернуться к конфигурациям по умолчанию).

Я отредактировал / etc / network / interfaces на:

allow-hotplug eno1
iface eno1 inet static
    bridge_ports xenbr0
    address 192.168.0.201
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255
    gateway 192.168.0.1

Теперь, когда я НЕ создаю мост, я могу подключиться к Интернету. Когда я создаю мост, возникает та же проблема: ни хост, ни гость не могут подключиться к любой сети, и ни одно устройство в сети не может пинговать хост или гостя.

Конфигурация вашего моста отсутствует bridge_ports, чтобы указать, какие физические сетевые интерфейсы должны быть частью моста.

Например:

auto xenbr0
iface xenbr0 inet static
    bridge_ports eno1
    address 192.168.0.201
    ....

В второй опубликованная вами конфигурация не настраивает мост.

Благодаря @ michael-hampton меня привели в правильном направлении; Спасибо за это. Ваш ответ будет рассматриваться как тот, который ее решил. Вот что я сделал. Это очень просто (я говорю, по крайней мере, после 50 попыток). + Изменить /etc/network/interfaces. Вам необходимо настроить как ваш основной интерфейс, так и мост. Вот что мой interfaces файл выглядит так:

allow-hotplug eno1
iface eno1 inet static
    bridge_ports xenbr0
    address 192.168.0.201
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255
    gateway 192.168.0.1

auto xenbr0
iface xenbr0 inet static
    bridge_ports eno1
    address 192.168.42.201
    netmask 255.255.255.0
    network 192.168.42.0
    broadcast 192.168.42.255
    gateway 192.168.42.1

После настройки интерфейсов запустите service networking restart (или перезагрузитесь, чтобы убедиться). Чтобы убедиться, что все прошло по плану, запустите ifconfig или ip addr show, чтобы убедиться, что все настроено правильно. У основного интерфейса должен быть IP-адрес, а также у моста. Вы можете проверить, работает ли он, отправив пинг на шлюз или на какой-либо веб-сайт, чтобы убедиться вдвойне.

Когда это будет сделано, вам нужно настроить /etc/network/interfaces на гостей. Я просто скопировал конфигурацию с хоста в основной интерфейс гостя с некоторыми настройками (в моем случае измените eno1 на eth0 и IP-адрес):

allow-hotplug eth0
iface eth0 inet static 
    address 192.168.0.203
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255
    gateway 192.168.0.1

На гостевой беги service networking restartили выключите его и запустите снова, и теперь у вас должно быть рабочее соединение как на хосте, так и на гостевой системе.

Опять же, все благодаря Майкл Хэмптон!