Автор Тема: vlan bridge tagged trunk РЕШЕНО  (Прочитано 6459 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн exaile

vlan bridge tagged trunk РЕШЕНО
« : 09 Февраля 2015, 13:12:09 »
Здравствуйте. Необходимо прокинуть пачку тегированных вланов с D-Link который воткнут в eth1, который в свою очередь в bridge c vmbr1 (proxmox), и далее на интерфейс виртуалки (в данном случае vSRX Juniper Firefly perimeter)

Command: show vlan ports 1:17

 Port   VID   Untagged  Tagged  Dynamic  Forbidden
-----   ----  --------  ------  -------  ---------
 1:17   303     X         -       -        -
 1:17   1111    -         X       -        -
 1:17   2222    -         X       -        -

vconfig add vmbr1 2222
ifconfig vmbr1.2222 up
brctl addbr vmbr2222
ifconfig vmbr2222 up
brctl addif vmbr2222 vmbr1.2222

Со стороны роутера в конфиге всё прописано, ip интерфейс и нужный тэг.

Я вижу трафик 802.1Q только на eth1 и vmbr1.

Далее если делаю как выше, и вот по этим статьям - вланы не пробрасываются.

https://blog.mthode.org/posts/2012/Oct/vlan-trunking-to-kvm-vms/
http://blog.davidvassallo.me/2012/05/05/kvm-brctl-in-linux-bringing-vlans-to-the-guests/
http://forum.proxmox.com/threads/11433-forwarding-a-full-vlan-trunk-into-a-VM

На vmbr2222 и vmbr1.2121 трафик уже без тэгов.

13:07:58.246855 3c:61:04:47:1f:f0 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 56: Request who-has 10.200.1.200 tell 10.200.0.254, length 42
13:07:59.124006 3c:61:04:47:1f:f0 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 56: Request who-has 10.200.1.200 tell 10.200.0.254, length 42
13:07:59.433867 3c:61:04:47:1f:f0 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 56: Request who-has 10.200.1.253 tell 10.200.0.254, length 42

« Последнее редактирование: 12 Февраля 2015, 18:20:55 от exaile »
 

Оффлайн zarguni

Re: vlan bridge tagged trunk
« Ответ #1 : 09 Февраля 2015, 21:13:59 »
vconfig add vmbr1 2222
ifconfig vmbr1.2222 up
brctl addbr vmbr2222
ifconfig vmbr2222 up
brctl addif vmbr2222 vmbr1.2222
А eth1 добавить в мост?
 

Оффлайн exaile

Re: vlan bridge tagged trunk
« Ответ #2 : 10 Февраля 2015, 12:43:01 »
vconfig add vmbr1 2222
ifconfig vmbr1.2222 up
brctl addbr vmbr2222
ifconfig vmbr2222 up
brctl addif vmbr2222 vmbr1.2222
А eth1 добавить в мост?

Добавлено, всё равно на vSRX приходит без тэга.

brctl show
bridge name     bridge id               STP enabled     interfaces
vmbr0           8000.00a0d1e3cbc9       no              eth0
vmbr1           8000.00a0d1e3cbc8       no              eth1
vmbr1v1111              8000.00a0d1e3cbc8       no              eth1.1111
                                                        tap600i1
vmbr1v2222              8000.00a0d1e3cbc8       no              eth1.2222
                                                        tap600i0

Работает только если access трафик:

admin@vSRX> show configuration interfaces
ge-0/0/0 {
    unit 0 {
        family inet {
            address 10.200.1.200/23;
        }
    }
}
ge-0/0/1 {
    unit 0 {
        family inet {
            address 10.90.0.218/24;
        }
    }
}

Мне нужно через Debian передавать на эти интерфейсы trunk с тэгом. Уже перепробовал всё и в ручную в том числе.

name: junos-vsrx-12.1X47-D10.4-domestic
net0: e1000=1A:DB:06:F6:49:CB,bridge=vmbr1,tag=2222
net1: e1000=16:78:A0:E4:4F:49,bridge=vmbr1,tag=1111


Из вики:
Цитировать
If you are using a brigded VLAN setup, which is probably useful for networking in virtualization environments, take care to only attach either a bridge device or VLAN devices to an underlying physical device - like shown above. Attaching the physical interface (eth0) to a bridge (eg. bri1) while using the same physical interface on apparently different VLANs will result in all packets to remain tagged. (Kernel newer than 2.6.37 and older than 3.2).

Трафик с тегом будет только на eth1 или br1,

Есть еще варианты или может знатоки тут ? Как полностью с тэгами до конца передать на vmbrVLAN ?
« Последнее редактирование: 10 Февраля 2015, 13:12:24 от exaile »
 

Оффлайн zarguni

Re: vlan bridge tagged trunk
« Ответ #3 : 10 Февраля 2015, 20:44:59 »
brctl show
bridge name     bridge id               STP enabled     interfaces
vmbr0           8000.00a0d1e3cbc9       no              eth0
vmbr1           8000.00a0d1e3cbc8       no              eth1
vmbr1v1111      8000.00a0d1e3cbc8       no              eth1.1111
                                                        tap600i1
vmbr1v2222      8000.00a0d1e3cbc8       no              eth1.2222
                                                        tap600i0

Так на eth1.1111 и eth1.2222 трафик прилетит уже без тега.
 

Оффлайн exaile

Re: vlan bridge tagged trunk
« Ответ #4 : 10 Февраля 2015, 21:42:44 »
zarguni, да, на eth1.VID понятно, далее этот интерфейс бриджиться, вот как раз нужно чтобы был trunk тегированный уже на vmbr1VID. Можно ли так сделать ?

Потому что виртуальный роутер (vSRX), для лабов настраивается как описано в этой статье - http://subnets.ru/blog/?p=269 или по этой - http://forums.juniper.net/t5/SRX-Services-Gateway/Inter-Vlan-routing-SRX-240/m-p/86340/highlight/true#M10501
Цитировать
Вот и все, теперь интерфейс ge-0/0/0 принимает vlan 5 и 10 и вы можете «подавать» в этот интерфейс trunk в котором прописать эти vlan`ы.

ge-0/0/0 в данном случае это vmbr1v2222, ge-0/0/1 это vmbr1v1111. Я может чего то не догоняю, но почему на обычных коммутаторах я могу прописывать tag до конечного мне узла и там же оставлять его, то есть принимать тегом. Здесь в данном случае задействован Linux и виртуализация.
« Последнее редактирование: 10 Февраля 2015, 21:45:33 от exaile »
 

Оффлайн zarguni

Re: vlan bridge tagged trunk
« Ответ #5 : 10 Февраля 2015, 22:50:06 »
Цитировать
да, на eth1.VID понятно, далее этот интерфейс бриджиться, вот как раз нужно чтобы был trunk тегированный уже на vmbr1VID. Можно ли так сделать ?
В статье, что вы привели в первом посте, в разделе Homerun: going to guest trunk mode явно ваша ситуация. Вланы с самого интерфейса не вытягиваются, с бриджа вытягиваются, и снова бриджуются с интерфейсами виртуалки.
Цитировать
Я может чего то не догоняю, но почему на обычных коммутаторах я могу прописывать tag до конечного мне узла и там же оставлять его, то есть принимать тегом. Здесь в данном случае задействован Linux и виртуализация.
На то он и маршрутизатор/коммутатор. Для разных задач какие-то инструменты подходят больше.
Я, конечно, не знаток в теме визуализации, но может имеет смысл использовать Open vSwitch.
 

Оффлайн exaile

Re: vlan bridge tagged trunk
« Ответ #6 : 11 Февраля 2015, 12:36:07 »
В статье, что вы привели в первом посте, в разделе Homerun: going to guest trunk mode явно ваша ситуация. Вланы с самого интерфейса не вытягиваются, с бриджа вытягиваются, и снова бриджуются с интерфейсами виртуалки.

Пробовал и пробую снова.

brctl addbr br0
vconfig add br0 254
ifconfig br0 up && ifconfig br0.254 u
brctl addif br0 eth1

DGS-3120-24TC:admin#show vlan  ports 17
Command: show vlan ports 1:17

 Port   VID   Untagged  Tagged  Dynamic  Forbidden
-----   ----  --------  ------  -------  ---------
 1:17   254     -         X       -        -
 1:17   666     -         X       -        -
 1:17   1111    -         X       -        -
 1:17   2222    -         X       -        -

17 порт воткнут в eth1.

UPD: Алилуя!!!!!! Наконец заработало, спасибо вам большое вы натолкнули меня на решение и оно оказалось простым.

В ручную ничего не нужно создавать. Приводим конфиг виртуальных интерфейсов к такому виду (лучше из вебки):

net0: e1000=1A:DB:06:F6:49:CB,bridge=vmbr1,tag=2222
net1: e1000=16:78:A0:E4:4F:49,bridge=vmbr1,tag=1111
net2: e1000=7A:97:04:AD:B5:E7,bridge=vmbr1,tag=666
net3: e1000=8E:0B:12:ED:AD:F5,bridge=vmbr1

Из веб интерфейса proxmox в настройках ноды добавляем Network device и выбираем vmbr1 БЕЗ ТЭГА(!) и БЕЗ VID, то есть тэг уже будет приходить с eth1 на vmbr1. Сохраняем и жмём stop\start виртуальной ноды. После ребута он добавляет в ноде интерфейс, например ge-0/0/3 с мак адресом 8E:0B:12:ED:AD:F5 и уже принимает trunk.

admin@vSRX# show interfaces ge-0/0/3
vlan-tagging;
unit 254 {
    vlan-id 254;
    family inet {
        address 10.90.254.102/24;
    }
}

admin@vSRX# run monitor traffic extensive no-resolve interface ge-0/0/3
Address resolution is OFF.
Listening on ge-0/0/3, capture size 1514 bytes

13:30:53.061833  In
        Juniper PCAP Flags [Ext, In], PCAP Extension(s) total length 22
          Device Media Type Extension TLV #3, length 1, value: Ethernet (1)
          Logical Interface Encapsulation Extension TLV #6, length 1, value: Ethernet (14)
          Device Interface Index Extension TLV #1, length 2, value: 137
          Logical Interface Index Extension TLV #4, length 4, value: 74
          Logical Unit Number Extension TLV #5, length 4, value: 32767
        -----original packet-----
        3c:61:04:47:1f:f0 > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 60: vlan 254, p 0, ethertype ARP, arp who-has 10.90.254.253 tell 10.90.254.254

Адрес 10.90.254.102 пингуется и я вижу трафик 802.1Q и его Tpid 0x8100 как раз что и было нужно.

brctl show выглядит так:

brctl show
bridge name     bridge id               STP enabled     interfaces
vmbr0           8000.00a0d1e3cbc9       no              eth0
vmbr1           8000.00a0d1e3cbc8       no              eth1
                                                        tap600i3
vmbr1v1111              8000.00a0d1e3cbc8       no              eth1.1111
                                                        tap600i1
vmbr1v2222              8000.00a0d1e3cbc8       no              eth1.2222
                                                        tap600i0
vmbr1v666               8000.00a0d1e3cbc8       no              eth1.666
                                                        tap600i2

Как я делал изначально создавая eth1.VID будет работать только access трафик. Поэтому необходимо делать просто прозрачный мост без vconfig для пропуска тэга с вышестоящего коммутатора. Перечитав еще раз Homerun: going to guest trunk mode наконец дошло. Если нужны еще интерфейсы с тэгом по аналогии добавляем vmbr1 с новым мак адресом и т.д. Вроде бы так. Спасибо большое.

Когда делаешь, например с тегом net2: e1000=7A:97:04:AD:B5:E7,bridge=vmbr1,tag=666 и перезапускаешь ноду он еще интерфейс tapIDiN создаёт и кладёт его в бридж, какой то тунельный интерфейс. В моём случае оно видимо не нужно.
« Последнее редактирование: 11 Февраля 2015, 12:40:29 от exaile »
 

Теги:
     

    [squeeze] Два VLAN на одной сетевой карте

    Автор Graf

    Ответов: 1
    Просмотров: 2347
    Последний ответ 17 Октября 2011, 11:16:11
    от skeletor
    network vlan on boot

    Автор exaile

    Ответов: 4
    Просмотров: 1739
    Последний ответ 19 Октября 2015, 16:16:47
    от exaile
    настройка нескольких vlan

    Автор gotovtsev

    Ответов: 13
    Просмотров: 5223
    Последний ответ 15 Февраля 2014, 10:42:16
    от gotovtsev
    Несколько vlan на одной сетевой

    Автор cooper

    Ответов: 3
    Просмотров: 3351
    Последний ответ 27 Октября 2014, 22:31:39
    от 315th
    Ошибки при создании vlan-ов

    Автор ruslan17

    Ответов: 5
    Просмотров: 6002
    Последний ответ 04 Сентября 2013, 21:33:05
    от 315th