Имеется комп с ubuntu 12.10, кроме всего прочего используется и как хост для виртуальных машин. Соответственно, сеть идет через мост, вот /etc/network/interfaces:
# The loopback network interface
auto lo
iface lo inet loopback
up echo 1 >/proc/sys/net/ipv6/conf/all/disable_ipv6
# The primary network interface
auto p6p1
iface p6p1 inet manual
auto p7p1
iface p7p1 inet manual
up ifconfig $IFACE down
# tunctl
auto tap0
iface tap0 inet manual
tunctl_user work
auto tap1
iface tap1 inet manual
tunctl_user work
# brcfg
auto br0
iface br0 inet dhcp
bridge_ports p6p1 tap0
auto br1
iface br1 inet static
bridge_ports tap1
address 192.168.254.1
netmask 255.255.255.0
При загрузке часто возникает ошибка: интерфейс p6p1 не добавляется в мост. На этом хосте в виртуалке висит резервный dhcp-сервер, поэтому, интерфейс получает айпишник (с задержкой, т.к. виртуальный хост запускается позже), но реального сетевого интерфейса там нет - только tap0 и vnet0 (последний принадлежит виртуалке). Т.е. после загрузки для доступа ко внешней сети приходится делать вручную sudo brctl addif br0 p6p1 и sudo ifconfig p6p1 up, после чего все работает нормально.
Интересно, что ошибка возникает совершенно спонтанно - в большинстве случаев система грузится нормально, однако есть примерно 20-25 процентов вероятности, что при загрузке в целевом мосте данного интерфейса не окажется...
Подозреваю, хотя и не уверен, что дело в именовании интерфейса, насколько я понимаю, при начальной загрузке ядро называет его традиционным именем eth0, а после udev переименовывает в p6p1, возможно в некоторых случаях скрипт настройки сети добавляет мост до того, как произойдет переименование и соответственно не может добавить p6p1.
Можно ли как-нибудь избавится от сей проблемы?