Vlans tag между двумя интерфейсами

Обсуждаем OS FreeBSD и сервисы на ней.

Vlans tag между двумя интерфейсами

Сообщение amasis » 02 ноя 2010, 11:58

Доброго дня. Есть задача прогнать 3 tag влана между 2мя физическими интерфейсам em0 и em1. Как это осуществить ? Номера вланов не должны меняться.
Спасибо.
amasis
новичок
 
Сообщения: 40
Зарегистрирован: 02 мар 2009, 11:12

Re: Vlans tag между двумя интерфейсами

Сообщение root » 03 ноя 2010, 12:20

привет

т.е. ты хочешь из FreeBSD сделать свич 802.1q ? Правильно я понимаю ?
А можешь рассказать в чем состоит твоя задача, что тебе такое понадобилось ?
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1892
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

Re: Vlans tag между двумя интерфейсами

Сообщение amasis » 03 ноя 2010, 13:08

Необходимо построить транспорт между двумя узлами и зашейпить его на 10 мбит. Причем номера вланов не должны меняться. Мне было выдано 3 влана их необходимо прогнать через роутер ( freebsd 8.0) . В старой реализации bridge можно было использовать кластеры , в новой if_bridge я такой фичи не нашел .
amasis
новичок
 
Сообщения: 40
Зарегистрирован: 02 мар 2009, 11:12

Re: Vlans tag между двумя интерфейсами

Сообщение root » 03 ноя 2010, 13:35

Бридж во FreeBSD ( Bridging on FreeBSD )
принимай на две сетевухи транк, разбирай его по вланам, бриджуй вланы между собой
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1892
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

Re: Vlans tag между двумя интерфейсами

Сообщение amasis » 03 ноя 2010, 13:49

Для freebsd 8.0 эта статья не актуальна. net.link.ether.bridge.config уже нет и кластеров тоже.
amasis
новичок
 
Сообщения: 40
Зарегистрирован: 02 мар 2009, 11:12

Re: Vlans tag между двумя интерфейсами

Сообщение root » 03 ноя 2010, 15:08

согласен

но судя по ману оно "уехало" в логичное место, а именно в ifconfig

Код: Выделить всё
man if_bridge

EXAMPLES
The following when placed in the file /etc/rc.conf will cause a bridge
called ``bridge0'' to be created, and will add the interfaces ``wlan0''
and ``fxp0'' to the bridge, and then enable packet forwarding. Such a
configuration could be used to implement a simple 802.11-to-Ethernet
bridge (assuming the 802.11 interface is in ad-hoc mode).

cloned_interfaces="bridge0"
ifconfig_bridge0="addm wlan0 addm fxp0 up"


For the bridge to forward packets all member interfaces and the bridge
need to be up. The above example would also require:

create_args_wlan0="wlanmode hostap"
ifconfig_wlan0="up ssid my_ap mode 11g"
ifconfig_fxp0="up"

Consider a system with two 4-port Ethernet boards. The following will
cause a bridge consisting of all 8 ports with Rapid Spanning Tree enabled
to be created:

ifconfig bridge0 create
ifconfig bridge0 \
addm fxp0 stp fxp0 \
addm fxp1 stp fxp1 \
addm fxp2 stp fxp2 \
addm fxp3 stp fxp3 \
addm fxp4 stp fxp4 \
addm fxp5 stp fxp5 \
addm fxp6 stp fxp6 \
addm fxp7 stp fxp7 \
up

The bridge can be used as a regular host interface at the same time as
bridging between its member ports. In this example, the bridge connects
em0 and em1, and will receive its IP address through DHCP:

cloned_interfaces="bridge0"
ifconfig_bridge0="addm em0 addm em1 DHCP"
ifconfig_em0="up"
ifconfig_em1="up"

The bridge can tunnel Ethernet across an IP internet using the EtherIP
protocol. This can be combined with ipsec(4) to provide an encrypted
connection. Create a gif(4) interface and set the local and remote IP
addresses for the tunnel, these are reversed on the remote bridge.

ifconfig gif0 create
ifconfig gif0 tunnel 1.2.3.4 5.6.7.8 up
ifconfig bridge0 create
ifconfig bridge0 addm fxp0 addm gif0 up


Note that FreeBSD 6.1, 6.2, 6.3, 7.0, 7.1, and 7.2 have a bug in the
EtherIP protocol. For more details and workaround, see gif(4) manual
page.


т.е. иными словами стало удобнее, я бы сказал гораздо удобнее

sysctl тоже не далече уехал :)
Код: Выделить всё
sysctl -a | grep net.link.bridge

net.link.bridge.ipfw: 0
net.link.bridge.inherit_mac: 0
net.link.bridge.log_stp: 0
net.link.bridge.pfil_local_phys: 0
net.link.bridge.pfil_member: 1
net.link.bridge.pfil_bridge: 1
net.link.bridge.ipfw_arp: 0
net.link.bridge.pfil_onlyip: 1
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1892
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

Re: Vlans tag между двумя интерфейсами

Сообщение amasis » 03 ноя 2010, 15:20

Как тогда реализовать старую схему :
net.link.ether.bridge.config=vlan10:1,vlan11:1,vlan20:2,vlan21:2,vlan30:3,vlan31:3
т.е создать 3 отдельных класера vlan10 vlan11 , vlan20 vlan21 , vlan30 vlan31 и запихнуть их в bridge0 ?
amasis
новичок
 
Сообщения: 40
Зарегистрирован: 02 мар 2009, 11:12

Re: Vlans tag между двумя интерфейсами

Сообщение root » 03 ноя 2010, 15:32

ну как мне кажется это будет звучать как то так:
напримере vlan 10

на всякий случай подгружаем
Код: Выделить всё
kldload if_bridge


создаем влан на обеих сетевухах:
Код: Выделить всё
ifconfig vlan0 create vlandev em0 vlan 10 up
ifconfig vlan1 create vlandev em1 vlan 10 up


бриджуем их между собой:
Код: Выделить всё
ifconfig bridge0 create
ifconfig bridge0 addm vlan0 addm vlan1 up


включаем поддержку ipfw для бриджа, т.к. по дефолту она выключена:
Код: Выделить всё
sysctl net.link.bridge.ipfw=1


вот как то так

З.Ы. если будешь потом вносить создание бриджа в rc.conf, не забудь обратить внимание на:
For the bridge to forward packets all member interfaces and the bridge need to be up.

и добавить в rc.conf
Код: Выделить всё
ifconfig_em0="up"
ifconfig_em1="up"
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1892
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

Re: Vlans tag между двумя интерфейсами

Сообщение amasis » 03 ноя 2010, 15:45

Схема работает если создать 3 отдельных бриджа
Код: Выделить всё
 
ifconfig_bridge0 create
ifconfig_bridge0 addm vlan10 addm vlan11 up
ifconfig_bridge1 create
ifconfig_bridge1 addm vlan20 addm vlan21 up
ifconfig_bridge2 create
ifconfig_bridge2 addm vlan30 addm vlan31 up


Но тогда непонятно как зашейпить эти 3 бриджа на 10 мбит , причем не каждый в отдельности, а обший шейп на 3 бриджа.
amasis
новичок
 
Сообщения: 40
Зарегистрирован: 02 мар 2009, 11:12

Re: Vlans tag между двумя интерфейсами

Сообщение root » 03 ноя 2010, 15:49

amasis писал(а):причем не каждый в отдельности, а обший шейп на 3 бриджа.

ответ очевиден, загнать их в один общий шейп (pipe)
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1892
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

След.

Вернуться в FreeBSD

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

cron