Проблемы со связью в сети Libvirt

Я хочу настроить мост таким образом, чтобы гостевые виртуальные машины на моем автономном сервере использовали DHCP локальной сети, а не dnsmasq. Я следовал этим инструкциям: https://jamielinux.com/docs/libvirt-networking-handbook/bridged-network.html#bridge-debian . Глядя на результаты ifconfig, кажется, что это дает мне именно то, что я искал:

br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.210  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::4216:7eff:fe63:7516  prefixlen 64  scopeid 0x20<link>
        ether 40:16:7e:63:75:16  txqueuelen 1000  (Ethernet)
        RX packets 8255  bytes 653898 (653.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 633  bytes 60185 (60.1 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.195  netmask 255.255.255.0  broadcast 192.168.1.255
        ether 40:16:7e:63:75:16  txqueuelen 1000  (Ethernet)
        RX packets 42190  bytes 48646124 (48.6 MB)
        RX errors 0  dropped 3  overruns 0  frame 0
        TX packets 9808  bytes 889965 (889.9 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 2215  bytes 510180 (510.1 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2215  bytes 510180 (510.1 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:7a:ca:5e  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Однако, если я пытаюсь подключиться по SSH к моему серверу (192.168.1.195) с другой машины (192.168. 1.196), я не могу подключиться. Пинг с сервера не может достичь других устройств в моей локальной сети, но пинг с сервера до 8.8.8.8, кажется, работает нормально. Мой файл /etc/network/interfaces выглядит следующим образом (MAC - это сетевая карта моего сервера):

iface enp3s0 inet manual

auto br0
iface br0 inet static
    # Use the MAC address identified above.
    hwaddress ether 40:16:7e:63:75:16
    address 192.168.1.210
    netmask 255.255.255.0
    gateway 192.168.1.1

    bridge_ports enp3s0
    # If you want to turn on Spanning Tree Protocol, ask your hosting
    # provider first as it may conflict with their network.
    bridge_stp on
    # If STP is off, set to 0. If STP is on, set to 2 (or greater).
    bridge_fd 0

Я провел последние два дня, погугливая, и несколько раз переизображал свой сервер, когда все стало слишком плохо, и я думаю, что я просто теряю сюжет ... Мой сервер - Ubuntu 18.04.2, полностью в запасе, кроме установленных пакетов libvirt и ssh. Как я могу сделать так, чтобы сервер был доступен для других моих сетевых компьютеров?

2
задан 15 April 2019 в 04:19

2 ответа

Иногда стоит просто оставить вещи на день или два, а не смотреть на них. Тогда возвращайся к нему свежим. В конце концов, настройка моста показалась довольно простой: два шага следующие: ".net.ipv4.ip_forward = 1"

  1. Обновление / etc / network / interfaces

Для меня это был полный файл. Если у вас есть больше интерфейсов, вы можете настроить соответственно. enp3s0 был идентификатором моего физического интерфейса.

# ifupdown has been replaced by netplan(5) on this system.  See
# /etc/netplan for current configuration.
# To re-enable ifupdown on this system, you can run:
#    sudo apt install ifupdown
iface enp3s0 inet manual

auto lo
iface lo inet loopback

auto br0
iface br0 inet dhcp
   bridge_ports enp3s0
   bridge_stp off
   bridge_fd 0
   bridge_maxwait 0

Я использовал резервирование IP-адреса в своем маршрутизаторе, чтобы убедиться, что моя виртуальная машина всегда получала один и тот же IP-адрес. Использование DHCP сделало настройку в целом немного проще для меня.

Еще раз спасибо RobertRSeattle и Doug Smythies за то, что они терпели меня.

0
ответ дан 15 April 2019 в 04:19

У меня сломался рабочий мост. Я пробовал все. Отправился на охоту на ведьм в поисках файлов докера, думая, что докер уничтожил мою сеть. Оказалось, что имя сетевого интерфейса в гостевой системе изменилось, и enp1s0 стал enp7s0. исправил yaml /etc/netplan и все вернулось.

0
ответ дан 20 June 2020 в 01:58

Другие вопросы по тегам:

Похожие вопросы: