Рейтинг:0

Проблемы с правилом брандмауэра / IP между двумя хостами через vSwitch

флаг cn

У меня есть два сервера, один из которых является хостом виртуальной машины Qemu, а другой — своего рода хранилищем.

Это машины Hetzner, и я подключил их через vSwitch.

Интерфейс виртуального коммутатора Server1:

3: local@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    ссылка/эфир 10:7b:44:b1:5b:7d brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.1/24 brd 192.168.100.255 область глобальная локальная
       valid_lft навсегда

IP-маршрут Server1 (хост виртуальной машины):

по умолчанию через <redacted-public-ip> dev eth0 proto static metric 100 
<redacted-public-ip> dev eth0 proto static scope link metric 100 
192.168.10.0/24 dev virbr0 proto kernel scope link src 192.168.10.254 metric 425 <-- сеть virbr0
192.168.10.253 через 192.168.100.2 dev local <-- IP-адрес srv02 для размещения в сетевом пространстве virbr0

Интерфейс виртуального коммутатора Server2:

3: local@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc noqueue state UP group default qlen 1000
    ссылка/эфир 08:60:6e:44:d6:2a brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.2/24 brd 192.168.100.255 область глобальная локальная
       valid_lft навсегда
    inet 192.168.10.253/24 brd 192.168.10.255 область глобальная локальная
       valid_lft навсегда

IP-маршрут Server2:

по умолчанию через <redacted-public-ip> dev eth0 proto static metric 100 
<redacted-public-ip> dev eth0 proto static scope link metric 100 
192.168.10.0/24 dev локальная ссылка области ядра proto src 192.168.10.253 <-- для доступа к virbr0 через vSwitch

Я думаю, что маршруты настроены правильно - так как все работает нормально с отключенной службой firewalld.

Однако, если я включаю его, начинаются проблемы.

Это зоны брандмауэра на сервере Server1 (на котором, когда я отключаю firewalld, все работает)

libvirt (активный)
  цель: ПРИНЯТЬ
  icmp-инверсия блока: нет
  интерфейсы: virbr0
  источники: 
  службы: dhcp dhcpv6 dns ssh tftp
  порты: 
  протоколы: icmp ipv6-icmp
  вперед: нет
  маскарад: нет
  форвард-порты: 
  исходные порты: 
  icmp-блоки: 
  богатые правила: 
    приоритет правила = "32767" отклонить


публичный (активный)
  цель: по умолчанию
  icmp-инверсия блока: нет
  интерфейсы: eth0 локальный
  источники: 
  сервисы: кабина dhcpv6-клиент ssh
  порты: 
  протоколы: 
  вперед: нет
  маскарад: нет
  форвард-порты: 
  исходные порты: 
  icmp-блоки: 
  богатые правила: 

Я пытался включить маскарад на каждом из них, на обоих одновременно, но безрезультатно. Я «тестирую» это с помощью простого пинга с сервера 2 на одну из виртуальных машин на virbr0.

Есть ли что-то очевидное, что мне здесь не хватает?

Спасибо всем заранее.

Рейтинг:0
флаг cn

Мне удалось решить эту проблему, используя следующие два правила на хосте QEMU.

firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -o local -i virbr0 -j ПРИНЯТЬ

firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -o virbr0 -i local -j ПРИНЯТЬ

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.