Как правильно настроить интерфейсы виртуальной ЛВС (надеюсь, не испортив Network Manager) в Ubuntu 12.04 Desktop?
Простое добавление интерфейса в /etc/network/interfaces
может вызвать замешательство у Network Manager: ]
auto vlan500
iface vlan500 inet static
...
...
vlan_raw_device eth1
Есть ли лучший способ сделать это?
update :
Я обновил /etc/NetworkManager/NetworkManager.conf
предложением no-auto-default
и установил managed=false
в разделе [ifupdown]
:
[main]
plugins=ifupdown,keyfile
dns=dnsmasq
no-auto-default=6C:FD:12:34:56:78,
[ifupdown]
managed=false
Это удерживает NetworkManager от запуска eth0 и позволяет ему держаться подальше от eth1 и его интерфейсов VLAN. Ранее он позволял работать только одному интерфейсу VLAN и помещал статический IP-адрес этого интерфейса VLAN непосредственно в физический интерфейс eth1.
Тем не менее, во время загрузки существует 2-минутная задержка, поскольку (я предполагаю) NetworkManager пытается определить конфигурацию сети.
Решение:
Решено созданием ключевых файлов, как описано в моем ответе ниже. Мой рабочий стол теперь загружается со всеми интерфейсами VLAN, запущенными и работающими, и без каких-либо задержек во время загрузки.
Повороты там не являются никакой поддержкой VLAN в ifupdown плагине, который позволяет Администратору сети работать с/etc/network/interfaces, так вместо этого мы должны будем вручную добавить файл ключей для Администратора сети.
Сначала генерируйте UUID для интерфейса VLAN
root@kayna:~# uuidgen -r
5985c23f-2f9b-4e09-a33e-97505c79c78f
Затем создайте файл ключей, вот пример для идентификатора 200 VLAN на физическом интерфейсе eth1
root@kayna:~# vi /etc/NetworkManager/system-connections/vlan200
[connection]
id=vlan200
type=vlan
uuid=5985c23f-2f9b-4e09-a33e-97505c79c78f
[vlan]
parent=eth1
id=200
[ipv6]
method=ignore
[ipv4]
method=auto
Интерфейс не обнаружится в GUI, но виден и управляемый с nmcli
root@kayna:~# nmcli dev
DEVICE TYPE STATE
eth1.200 vlan connected
eth0 802-3-ethernet disconnected
eth1 802-3-ethernet connected
Остановите и запустите интерфейс с
root@kayna:~# nmcli con down id vlan200
root@kayna:~# nmcli con up id vlan200
Active connection state: activating
Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/12
state: activated
Connection activated
Интерфейс создается с помощью eth1.200 формата, не vlan200 формата, обычно используемого в/etc/network/interfaces
root@kayna:~# ifconfig eth1.200
eth1.200 Link encap:Ethernet HWaddr c8:60:00:00:00:56
inet addr:192.168.1.46 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:185 errors:0 dropped:0 overruns:0 frame:0
TX packets:55 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:29811 (29.8 KB) TX bytes:9549 (9.5 KB)
Установите пакет VLAN на свой компьютер:
sudo apt-get install vlan
Отредактируйте файл / etc / network / interfaces так, чтобы он будет содержать следующее:
# Сетевой интерфейс обратной связи
blockquote>auto lo iface lo inet loopback
blockquote>#This is a list of hotpluggable network interfaces. #They will be activated automatically by the hotplug subsystem.
< blockquote>auto vlan500
# VLAN 500
blockquote>iface vlan500 inet static address xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx network xxx.xxx.xxx.xxx broadcast xxx.xxx.xxx.xxx mtu 1500 vlan_raw_device eth0
Примечание: Вы должны заменить мои IP-адреса, сетевые маски и IP-адрес шлюза на свои собственные.
3. Убедитесь, что интерфейс коммутатора, к которому вы подключены, настроен с соответствующими VLAN.
4. Перезагрузите сетевой интерфейс:
sudo /etc/init.d/networking restart
Вы должны увидеть что-то вроде:
Set name-type for VLAN subsystem. Should be visible in /proc/net/vlan/config Added VLAN with VID == 500 to IF -:eth0:-