Здесь неприятная головоломка.
Немного предыстории: у меня есть Sophos UTM ASG220, служащий шлюзом для ряда сетей, с сетевым коммутатором Cisco 2960 и множество серверов Red Hat 6.6, на которых работает KVM и размещается несколько гостей, причем гости находятся в разных сетевых подсетях.
Интерфейс локальной сети UTM заполнен несколькими виртуальными интерфейсами (на самом деле это урезанная, оптимизированная Linux-машина типа RHEL) в качестве шлюзов для всех сетевых подсетей, за исключением основной сети, с которой она была создана во время установки.
У меня есть VLAN, определенные на коммутаторе, и узлы KVM имеют связанные интерфейсы (режим 1, на основе рекомендаций поддержки RHN), субинтерфейсы и мосты VLAN, настроенные для каждой сети, и каждый гость подключен к своему соответствующему мосту, и 8021q настроен . Без использования UTM трафик VLAN прекрасно проходит между коммутаторами, хостами KVM и гостями, у меня здесь нет проблем.
Тем не менее, вот что происходит:
Мне удалось создать новые интерфейсы VLAN на Sophos UTM (но с другим IP-адресом), чтобы заменить существующий виртуальный IP-адрес, служащий адресами шлюза LAN. (например, для тестовой сети адрес шлюза виртуального интерфейса - 10.11.0.253, а новый интерфейс VLAN, который должен заменить его, - 10.11.0.254).
Сначала гости и узел kvm могут проверить связь с коммутатором, новым интерфейсом шлюза VLAN и интерфейсом старого виртуального шлюза после того, как VLAN будет создана. Но если я попытаюсь удалить / удалить виртуальный интерфейс шлюза (например, 10.11.0.253), сеть начнет работать странно.
Адрес VLAN коммутатора (скажем, 10.11.0.7) не может выполнить эхо-запрос или связаться с гостями (скажем, один гость - 10.11.0.36) в VLAN, но он может достичь адреса моста vlan хоста kvm (скажем 10.11.0.4), и может подключиться к шлюзу Sophos (10.11.0.254, новый адрес VLAN).
Даже после резервного копирования виртуального интерфейса шлюза (10.11.0.253) ситуация остается некоторое время. Гости могут связываться друг с другом в одной и той же VLAN, но не могут пинговать адрес интерфейса VLAN коммутатора и не могут пинговать свой адрес шлюза VLAN или направлять трафик в другие внешние сети, кроме (как ни странно) DNS-серверов LAN, которые находятся в другой подсети. целиком (192.168.2.0)! И DNS-серверы - единственные IP-адреса в подсети 192.168.2.0, которые могут видеть гости 10.11.0.0!
arping отлично реагирует на все сетевые машины / устройства и от них, пока все это происходит.
Эта ситуация продолжается некоторое время даже после перезагрузки коммутатора и включения и выключения сетевых интерфейсов шлюза.
Затем все снова начинает работать (но с подключенными интерфейсами виртуального шлюза и VLAN, я снимаю виртуальный интерфейс, возвращаю его обратно, а затем делаю то же самое с интерфейсом VLAN.)
Мне бы хотелось узнать, что происходит и как я могу это исправить. Спасибо, что прочитали этот очень длинный пост!
Разобрался. Видимо, ASG сбивается с толку, когда у него есть два интерфейса в одной подсети (один интерфейс, интерфейс VLAN, другой, обычный дополнительный интерфейс). Наряду с некоторыми проблемами, связанными с тем, что порт коммутатора libvirtd (vnetX) гостевых KVM не отображается на соответствующем интерфейсе моста VLAN (пришлось выучить некоторый brctl-fu), но сейчас все идет по плану.
Однако мне любопытно, как лучше всего спланировать миграцию гостей KVM из нетегированных сетей VLAN с тегами.