Я пытаюсь настроить сетевой интерфейс с мостом для kvm/libvirt. У меня возникли проблемы, поскольку руководства написаны для систем, не поддерживающих udev, с использованием файлов конфигурации типа /etc/interfaces
. Однако, последние ОС, такие как Debian 8 и Ubuntu 14, используют udev. Следование руководствам и добавление информации о конфигурации в старые файлы conf просто ломает сеть.
Как мне преобразовать файлы конфигурации в правила udev? Есть ли утилита Linux для этого? Или есть что-то другое, что можно использовать для этого?
Сопутствующая информация включает в себяЕдинообразное именование сетевых устройств в Linux. Это объясняет, почему некоторые системы отказываютсяeth0
и друзья, указанные в /etc/interfaces
, почему некоторые системы используютp2p1
и друзья, и почему они отображаются в правилах udev.
решение1
udev
запускает события при обнаружении событий типа добавления-удаления оборудования. Насколько мне известно, это не имеет никакого отношения к сетевой активности.
Я не слишком заинтересован в точном функционировании, udev
но, помимо выбора имени устройства на основе некоторого атрибута и пары других действий, я думаю, что все остальное, что вы хотите сделать, должно быть скриптом, запускаемым с помощью udev
.
udev
также не участвует в процессе включения или выключения интерфейсов, а только в процессе их физического добавления и удаления из системы.
Поэтому вы можете следовать стандарту и использовать /etc/network/interfaces
.
Мост подразумевает создание моста и добавление к нему интерфейсов. Мост — это не настоящее устройство, и я не думаю, что udev
у него есть шанс что-то запустить. То же самое с tap
интерфейсами tun
.
udev
полезно для этой цели только с сетевыми интерфейсами: вы можете создать udev
правила для назначения имен вашим реальным сетевым картам, обычно на основе MAC-адреса. После этого эти имена можно указать в /etc/network/interfaces
.