Я использую Ubuntu 16.04 на моем сервере, который используется для виртуализации. Он работает с несколькими гостями Ubuntu 16.04, используя программное обеспечение qemu-kvm для виртуализации. Сервер использует libvirt для управления гостем (автозапуск, запуск / остановка и т.д.), И у меня есть все настройки гостя для автозапуска при загрузке хоста.
Когда хост загружается, все кажется нормальным без каких-либо ошибок, и интернет работает как надо. Но когда я открываю VNC-соединение с любым из хостов во время его загрузки, я вижу, что сеть не работает (не удалось запустить Raise network interface.). Это происходит только при холодной загрузке. Под этим я подразумеваю, что это происходит только тогда, когда я загружаю сервер, и гость автоматически загружается после того, как хост подключен. Когда это происходит, я могу просто перезапустить хост вручную, и он будет работать без проблем. Я также могу просто перезапустить определенные интерфейсы (ifdown -f eth0 && ifup eth0), чтобы интернет снова заработал.
Большинство гостей имеют только один интерфейс (eth0) и запрашивают статический IPv4 и статический IPv6-адрес у маршрутизатора. Одна вещь, которую я заметил, состоит в том, что у маршрута IPv6 есть опция "expire x секунд", в то время как у IPv4 нет. Это приводит к тому, что гость не будет доступен через IPv6, когда истекает маршрут. Это истекает там из-за сбоя при загрузке сетевых интерфейсов Raise?
Я пытаюсь выяснить, почему у всех гостей возникают проблемы с настройкой интерфейса при холодной загрузке. Очень раздражает необходимость (пере) запускать всех гостей вручную. Системный журнал хостов не показывает никаких ошибок, связанных с сетевым сервисом, и у гостей есть только эта ошибка: «RTNETLINK ответы: файл существует» без дальнейших ошибок.