linux KVM хост, отсутствие сетевого подключения на гостевых ВМ

Вопрос или проблема

После обновления ядра на серверах Debian мы провели перезагрузки и с тех пор столкнулись с проблемами на одном из наших KVM-хостов. На самом хосте все работает, но у гостей отсутствует сетевое соединение. Никакого пинга/трассировки от них до хоста или в любое другое место не возможно. И наоборот, также нет пинга/трассировки.

KVM Host:

ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute
       valid_lft forever preferred_lft forever
2: eno1np0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 3c:ec:ef:d0:9d:ac brd ff:ff:ff:ff:ff:ff
    altname enp1s0f0np0
    inet 172.23.1.18/24 brd 172.23.1.255 scope global eno1np0
       valid_lft forever preferred_lft forever
    inet6 fe80::3eec:efff:fed0:9dac/64 scope link
       valid_lft forever preferred_lft forever
3: eno2np1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 3c:ec:ef:d0:9d:ad brd ff:ff:ff:ff:ff:ff
    altname enp1s0f1np1
4: enxbe3af2b6059f: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether be:3a:f2:b6:05:9f brd ff:ff:ff:ff:ff:ff
20: br10: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 2e:36:d3:a9:cd:95 brd ff:ff:ff:ff:ff:ff
21: br231: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether f6:22:29:25:0a:b6 brd ff:ff:ff:ff:ff:ff

ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1np0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 3c:ec:ef:d0:9d:ac brd ff:ff:ff:ff:ff:ff
    altname enp1s0f0np0
3: eno2np1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 3c:ec:ef:d0:9d:ad brd ff:ff:ff:ff:ff:ff
    altname enp1s0f1np1
4: enxbe3af2b6059f: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether be:3a:f2:b6:05:9f brd ff:ff:ff:ff:ff:ff
20: br10: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether 2e:36:d3:a9:cd:95 brd ff:ff:ff:ff:ff:ff
21: br231: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether f6:22:29:25:0a:b6 brd ff:ff:ff:ff:ff:ff


brctl show
    bridge name     bridge id               STP enabled     interfaces
    br10            8000.2e36d3a9cd95       no
    br231           8000.f62229250ab6       no

cat /etc/network/interfaces
# Этот файл описывает сетевые интерфейсы, доступные на вашей системе
# и как их активировать. Для получения более подробной информации смотрите interfaces(5).

source /etc/network/interfaces.d/*

# Интерфейс сетевого подключения по циклу
auto lo
iface lo inet loopback

# Основной сетевой интерфейс
allow-hotplug eno1np0
iface eno1np0 inet static
        address 172.23.1.18/24
        gateway 172.23.1.1
        # параметры dns-* реализуются пакетом resolvconf, если установлен
        dns-nameservers 172.23.1.2
        dns-search intern.domain

# через мосты в виртуальных машинах переданные сетевые интерфейсы

auto enp129s0f0.10
iface enp129s0f0.10 inet manual
    vlan-raw-device enp129s0f0

auto br10
iface br10 inet manual
    bridge_ports enp129s0f0.10

auto enp129s0f0.231
iface enp129s0f0.231 inet manual
    vlan-raw-device enp129s0f0

auto br231
iface br231 inet manual
    bridge_ports enp129s0f0.231

Ответ или решение

Ошибка сети на виртуальных машинах KVM после обновления ядра Debian: анализ и решение проблемы

После выполнения обновления ядра на вашем KVM хосте с Debian, возникла проблема с отсутствием сетевого соединения на гостевых виртуальных машинах. Данная проблема бывает достаточно распространенной и может быть связана с различными аспектами настройки сети. Давайте детально рассмотрим каждый шаг диагностики и возможные решения.

1. Проверка состояния интерфейсов сети

Прежде всего, необходимо удостовериться, что физические сетевые интерфейсы на хосте работают корректно. Согласно информации, предоставленной в выводе команд ip a и ip l, мы видим:

  • Интерфейс eno1np0 находится в состоянии UP и имеет назначенный IP-адрес 172.23.1.18/24.
  • Другие интерфейсы, такие как eno2np1 и enxbe3af2b6059f, находятся в состоянии DOWN.
  • Мосты br10 и br231 также находятся в состоянии DOWN и не имеют подключенных интерфейсов.

2. Проблема с мостовыми интерфейсами

Мостовые интерфейсы являются ключевыми для подключения гостевых виртуальных машин к сети. Поскольку ваши мосты br10 и br231 не имеют активного состояния, необходимо исправить это. Следующий шаг — проверить конфигурацию мостов в файле /etc/network/interfaces:

auto br10
iface br10 inet manual
    bridge_ports enp129s0f0.10

auto br231
iface br231 inet manual
    bridge_ports enp129s0f0.231

Обратите внимание на строки bridge_ports. Они должны ссылаться на правильные VLAN, которые вы хотите использовать для мостов. Важно удостовериться, что физический интерфейс enp129s0f0 также активен и настроен правильно.

3. Проверка настройки VLAN

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

4. Применение изменений в конфигурации сети

После внесения изменений в конфигурацию сетевых интерфейсов, не забудьте перезапустить сетевые службы:

systemctl restart networking

Либо же перезагрузите сам хост:

reboot

5. Проверка настроек виртуальных машин

Убедитесь, что у виртуальных машин правильно настроены сетевые интерфейсы, использующие мосты br10 и br231. Это можно проверить в конфигурационных файлах виртуальных машин или через инструменты управления виртуализацией, такие как virt-manager или virsh.

6. Логирование и отслеживание ошибок

Не забудьте проверить системные логи на предмет ошибок, связанных с сетью. Это можно сделать с помощью команды:

journalctl -xe

Или просмотром логов KVM:

cat /var/log/libvirt/qemu/[имя_виртуальной_машины].log

Заключение

Проблема отсутствия сетевого подключения на гостевых виртуальных машинах KVM после обновления ядра Debian может быть вызвана различными причинами, начиная от некорректно настроенных мостов, VLAN, и заканчивая ошибками в конфигурации сетевых интерфейсов VMs. Внимательное следование вышеуказанным шагам по диагностике и настройке сети должно помочь решить вашу проблему. Если после выполнения всех шагов проблема не устранена, рассмотрите возможность временной откатки ядра до предыдущей версии и повторной диагностики проблемы.

Оцените материал
Добавить комментарий

Капча загружается...