четверг, 12 декабря 2013 г.

Вланы 802.1q в Linux Debian (+ XEN)


С линуксом мне на практике приходится сталкиваться редко, но все таки приходится. Вот понадобилось настроить Debian, который включен в тегированный порт(в транк), последовательность того что я делал, я и запишу тут.
Вначале нужно установить пакет vlan
apt-get install vlan
Теперь можно настроить интерфейсы. Изначально интерфейс eth0 получал ip по DHCP и настройки его в /etc/network/interfaces были такие:
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

Эти настройки можно удалять, а вместо них введем 2 интефейса vlan100 и vlan101:
auto vlan100
iface vlan100 inet static
        address 192.168.0.1
        netmask 255.255.255.252
        network 192.168.0.0
        broadcast 192.168.0.3
        mtu 1500
        vlan_raw_device eth0
 
auto vlan101
iface vlan101 inet static
        address 192.168.0.5
        netmask 255.255.255.252
        network 192.168.0.4
        broadcast 192.168.0.7
        mtu 1500
        vlan_raw_device eth0
А теперь можно поднять эти интерфейсы:
ifup vlan100
ifup vlan101
Или перезагрузиться
Все просто.

 Источник: http://www.hilik.org.ua/vlan-802-1q-in-linux-debian/


P.S. Примерно то же самое, только для XEN
У меня получилось немного иначе:
  • Порт настроен как TRUNK и принимает vlan=1 (это поведение по умолчанию) и vlan=101
  • eth0 принимает нетегированный трафик от default vlan=1
  • vlan101 принимает тегированный трафик от vlan=101 
  • /etc/network/interfaces 
-->
allow-hotplug eth0
iface eth0 inet static
address 172.16.0.120
netmask 255.255.0.0
gateway 172.16.0.1

auto vlan101
iface vlan101 inet static
address 172.30.2.120
netmask 255.255.255.0
gateway 172.30.2.1
mtu 1500
vlan_raw_device eth0
 
  • Для eth0 bridge создается так же как и раньше - скриптом (network-script network-bridge)
  • После перезагрузки у меня есть:
    • eth0 (переименованный в peth0) + мост для него (eth0)
    • vlan101
  •  Дальше - руками:
    • ifconfig vlan101 down
    • /etc/xen/scripts/network-bridge start netdev=vlan101 bridge=xen-br101 antispoof=no
  •  Теперь  у нас есть:
    • eth0 (переименованный в peth0) + мост для него (eth0)
    • vlan101 (переименованный в pvlan101) + мост для него xen-br101
  • Виртуальной машине хочется в обе подсети:
    • vif = [ 'mac=,bridge=eth0', 'mac=,bridge=xen-br101' ]  
  • ...
  • PROFIT!

  • TODO:
    • Настроить чтобы второй мост поднимался тоже автоматически, это позволит виртуальным машинам использующим оба моста также стартовать автоматом.
    •  wiki.debian.org



Комментариев нет:

Отправить комментарий