Рейтинг:1

Периодический сбой при подключении SSH/HTTPS к гостевой виртуальной машине с KVM в Ubuntu 20.04 LTS — после отправки пинга SSH/HTTPS работает

флаг cn

постер первый раз.

Возникла странная проблема с периодическим сбоем при подключении к SSH/HTTPS гостевой виртуальной машины.

Как воспроизвести проблему:

  1. Загрузите хост и гость, подождите несколько часов.

  2. SSH/HTTPS в гостевой снаружи, нет подключения.

  3. SSH для гостя от хозяина всегда работает.

  4. SSH для размещения снаружи всегда работает

  5. Пинг гостя из снаружи, затем SSH/HTTPS для гостя снаружи, всегда работает

  6. Подождите несколько часов, затем подключитесь к гостю по SSH/HTTPS. снаружи - снова не получается.

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

Установка:

Сервер Ubuntu 20.04 LTS с qemu qemu-kvm libvirt-clients libvirt-daemon-system virtinst bridge-utils на физической машине с 2 сетевыми интерфейсами.

1 мостовой интерфейс и 1 интерфейс, подключенный напрямую.

Интерфейс моста используется для хоста и гостя, прямой интерфейс используется для второго интерфейса только для гостя.

Гость - установка сервера Debian 11.1

Интерфейс моста подключен к стандартному неуправляемому коммутатору.

IP хоста 192.168.1.26/24 Шлюз 192.168.1.254 Гостевой IP 192.168.1.27/24 Шлюз 192.168.1.254

Второй интерфейс с прямым подключением настроен на 192.168.10.1/24, без шлюза (используется для VLAN).

Чтобы убедиться, что брандмауэр не мешает доступу к гостю, br_netfilter включено и загружается следующее:

net.bridge.bridge-nf-call-ip6tables=0
net.bridge.bridge-nf-call-iptables=0
net.bridge.bridge-nf-call-arptables=0

Некоторые люди указывают, что может быть проблематично иметь хост на IP-адресе в той же подсети, что и IP-адрес гостя. Нужно ли устанавливать дополнительные записи маршрутизации?

Другие предполагают проблемы ARP с MAC-адресами.

Я установил фиксированные MAC-адреса, используя адреса из рекомендованного диапазона. Это необходимо, поскольку восходящему потоку от этого гостя необходимо знать MAC-адрес для управления исходящим доступом для хоста и гостя.

ip выход на хост:

eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br1 состояние UP группа по умолчанию qlen 1000
    ссылка/эфир 00:18:1c:04:04:5c брд ff:ff:ff:ff:ff:ff
 eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br2 состояние UP группа по умолчанию qlen 1000
    ссылка/эфир 00:18:1c:04:04:5d брд ff:ff:ff:ff:ff:ff
 br1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    ссылка/эфир 00:18:1c:04:04:5c брд ff:ff:ff:ff:ff:ff
    inet 169.254.2.83/16 brd 169.254.255.255 ссылка области noprefixroute br1
       valid_lft навсегда
 br2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    ссылка/эфир 00:18:1c:04:04:5d брд ff:ff:ff:ff:ff:ff
    inet 192.168.1.26/24 brd 192.168.1.255 глобальная область действия noprefixroute br2
       valid_lft навсегда
 6: macvtap0@br1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel состояние UP группа по умолчанию qlen 500
    ссылка/эфир 52:54:00:e9:15:a1 brd ff:ff:ff:ff:ff:ff
 vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br2 состояние НЕИЗВЕСТНО группа по умолчанию qlen 1000
    ссылка/эфир fe:54:00:e9:15:b2 brd ff:ff:ff:ff:ff:ff

вывод ip-маршрута на хосте:

по умолчанию через 192.168.1.254 dev br2 proto static metric 425
169.254.0.0/16 dev br1 proto kernel scope link src 169.254.2.83 метрика 426
192.168.1.0/24 dev br2 proto kernel scope link src 192.168.1.26 метрика 425
224.0.0.0/4 dev br1 proto static Scope Link метрика 426

ip выход на гостя:

 enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast состояние UP группа по умолчанию qlen 1000
    ссылка/эфир 52:54:00:e9:15:a1 brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.1/24 brd 192.168.10.255 глобальная область enp1s0
       valid_lft навсегда
 enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc htb state UP group default qlen 1000
    ссылка/эфир 52:54:00:e9:15:b2 брд ff:ff:ff:ff:ff:ff
    inet 192.168.1.27/24 brd 192.168.1.255 глобальная область enp2s0
       valid_lft навсегда
 enp1s0.73@enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc htb state UP group default qlen 1000
    ссылка/эфир 52:54:00:e9:15:a1 brd ff:ff:ff:ff:ff:ff

вывод ip-маршрута для гостя:

по умолчанию через 192.168.1.254 dev enp2s0 onlink
192.168.1.0/24 dev enp2s0 ссылка на область ядра proto src 192.168.1.27
192.168.10.0/24 dev enp1s0 ссылка на протоядро области src 192.168.10.1 

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

Любые указатели будут оценены.

user535733 avatar
флаг cn
«*подождите несколько часов*:» вы установили версию для рабочего стола, которая, возможно, переходит в спящий режим, когда неактивна?
флаг cn
Нет рабочего стола, только сервер - удивительно, кажется, что есть куча людей с похожими проблемами, но нет очевидного решения

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

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