Bsdadmin.ru

Записки администратора FreeBSD

Путь на сайте

Домашняя FreeBSD Создание vlan во FreeBSD

Создание vlan во FreeBSD

Используется стандартная утилита для управления интерфейсами - ifconfig
Создать интерфейс vlan100
# ifconfig vlan100 create

На FreeBSD 8.1 была проблема при выполнении указанной ниже команды, в
результате чего переставал ходить трафик интерфейсу.
Надо было дополнительно сделать так:
# ifconfig fxp0 down
# ifconfig fxp0 up
Указать, что созданный интерфейс соответствует трафику, тегированному
VLAN 100 и приходящему через физический интерфейс fxp0
# ifconfig vlan100 vlan 100 vlandev fxp0

Назначаем Ip-адрес интерфейсу:
# ifconfig vlan100 10.10.10.1/24

Просмотрим  интерфейс:
# ifconfig vlan100
vlan100: flags=8843 mtu 1500
        inet 192.168.16.14 netmask 0xffffff00 broadcast 192.168.16.15
        inet6 fe80::204:79ff:fe67:9671%vlan4 prefixlen 64 scopeid 0x6
        ether 00:07:e9:45:0d:2c
        media: Ethernet autoselect (100baseTX )
        status: active
        vlan: 100 parent interface: fxp0
Видно, интерфейс fxp0   является родительским для vlan100 
        vlan: 100 parent interface: fxp0
Для того чтобы интерфейсы поднимались автоматически при старте, нужно править
/etc/rc.conf:

cloned_interfaces="vlan100 vlan200"
ifconfig_vlan100="inet 10.10.10.1 netmask 255.255.255.0 vlan 100 vlandev fxp0"
ifconfig_vlan200="inet 10.11.11.1 netmask 255.255.255.0 vlan 200 vlandev fxp0"

 

2-й вариант
Создать интерфейс
#ifconfig xl1.100 create
xl1.100: flags=8842 metric 0 mtu 1500
        ether 00:04:79:66:6b:09
        media: Ethernet autoselect (100baseTX )
        status: active
        vlan: 100 parent interface: xl1
Как видите он создается сразу с тэгом на нужном транковом интерфейсе
Cоответственно в rc.conf это выглядит так:

cloned_interfaces="xl1.100 xl1.200"
ifconfig_xl1_100="inet 10.10.10.1/24"
ifconfig_xl1_200="inet 10.11.11.1/24"

 Если на интерфейсе только vlan'ы, то нужно добавить вышеописанные строки  в /etc/rc.conf,
чтоб vlan'ы получали статус UP.