The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Heeelp! FreeBSD + vlan + bridge = trouble"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Heeelp! FreeBSD + vlan + bridge = trouble"
Сообщение от Gray emailИскать по авторуВ закладки on 02-Июл-03, 20:09  (MSK)
Есть связка 3-х компов. Назовем их ПК1, ПК2, ПК3. Соединены напрямую патчкордами. ПК1-ПК2-ПК3. На ПК2 соответственно 2 сетевых интерфейса. Все карты rl. На ПК1 поднято два влана (скажем влан0 и влан1). На ПК3 тоже поднято 2 влана(влан0 и влан1). ПК2 должен выполнять роль бриджа. Если поднять бридж между интерфейсами(rl0 и rl1) на ПК2, то все работает, но это не нужно... Если создать на ПК2 четыре влана (по два - влан0, влан1 на каждый из интерфейсов - rl0,rl1) и настроить бридж для пар влан0 (для интерфейсов rl0,rl1) и влан1 (для интерфейсов rl0,rl1) т.е. пытаемся бриджевать идентичные вланы на разных интерфейсах, а не интерфейсы целиком, то нифига не пашет.... :( Наблюдается такая картина: назовем интерфейс на ПК2 смотрящий на ПК1 - rl0, а на ПК3 - rl1. При попытке пинга с влан0 на ПК1 - влан0 на ПК3 видим ARP запросы проходящие через бридж между вланами0. Т.е. ARP запрос уходит с влан0 ПК1 и пройдя через бридж приходит на влан0 ПК3. ПК3 отвечает во влан0 ПК1 на этот запрос, но с интерфейса rl0 этот ответ не уходит, т.е. не бриджуется... :(
Кто нибудь знает как это побороть? Или вообще кто-нибудь настраивал бридж между вланами а не интерфейсами?

P.S. Если сумбурно написал - скажите. Нарисую картинку с комментамриями и выложу в нете. Ну и ifconfig могу привести для всех 3-х компов...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Heeelp! FreeBSD + vlan + bridge = trouble"
Сообщение от syslog Искать по авторуВ закладки on 03-Июл-03, 08:42  (MSK)
По-моему man 4 bridge (EXAMPLES) снимает всё вопросы
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Heeelp! FreeBSD + vlan + bridge = trouble"
Сообщение от Gray emailИскать по авторуВ закладки on 03-Июл-03, 11:05  (MSK)
> По-моему man 4 bridge (EXAMPLES) снимает всё вопросы
Очень ценный совет. Хорошо... будем рисовать, приводить конфиги и переменные...
  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Heeelp! FreeBSD + vlan + bridge = trouble"
Сообщение от Gray emailИскать по авторуВ закладки on 03-Июл-03, 12:58  (MSK)
> По-моему man 4 bridge (EXAMPLES) снимает всё вопросы
Выложено. Глядеть здесь: http://gray.ru/vlan0.gif

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Heeelp! FreeBSD + vlan + bridge = trouble"
Сообщение от syslog Искать по авторуВ закладки on 04-Июл-03, 05:33  (MSK)
ПК1-vlan0vlanid1--vlan0vlanid1-ПК2-vlan2vlanid1--vlan0vlanid1-ПК3
  \--vlan1vlanid2--vlan1vlanid2-/ \-vlan3vlanid2--vlan1vlanid2/
Как я представляю, это выглядит так. Тогда переменная на ПК2
net.link.ether.bridge_cfg=vlan0:3,vlan1:4,vlan2:3,vlan3:4
Кстати, вопрос с картинкой сильно отличаются - Вы же писали, что на
ПК1 и ПК2 по два вилана ?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Heeelp! FreeBSD + vlan + bridge = trouble"
Сообщение от syslog Искать по авторуВ закладки on 04-Июл-03, 07:22  (MSK)
Извиняюсь. В результате опытов и RTFM выявлена рабочая конфигурация :
ПК2 : rl0 на ПК1, rl1 на ПК2
net.link.ether.bridge_cfg=vlan0:3,vlan1:4,vlan2:5,vlan3:6,rl0:5,rl0:6,rl1:3,rl0:4
проще но не так красиво vlan0:1,vlan1:1,rl1:1,vlan2:2,vlan3:2,rl0:2
Для вашей картинки(если на ПК1 и ПК3 по одному вилану и на ПК2 два)
на ПК2:
ifconfig vlan0 vlan 1 vlandev rl0
ifconfig vlan1 vlan 1 vlandev rl1
net.link........=vlan0:1,vlan1:2,rl0:2,rl1:1
  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Heeelp! FreeBSD + vlan + bridge = trouble"
Сообщение от Gray emailИскать по авторуВ закладки on 04-Июл-03, 16:59  (MSK)
> Извиняюсь. В результате опытов и RTFM выявлена рабочая конфигурация :
>ПК2 : rl0 на ПК1, rl1 на ПК2
>net.link.ether.bridge_cfg=vlan0:3,vlan1:4,vlan2:5,vlan3:6,rl0:5,rl0:6,rl1:3,rl0:4
>проще но не так красиво vlan0:1,vlan1:1,rl1:1,vlan2:2,vlan3:2,rl0:2
>Для вашей картинки(если на ПК1 и ПК3 по одному вилану и на
>ПК2 два)
>на ПК2:
>ifconfig vlan0 vlan 1 vlandev rl0
>ifconfig vlan1 vlan 1 vlandev rl1
>net.link........=vlan0:1,vlan1:2,rl0:2,rl1:1
На схеме я все упростил. То что вы предлагаете несколько не то. В такой конфигурации получается что пакет дублируется, т.е. с интерфейса вылетает два одинаковых пакета, только один инкапсулированый во влан, а второй нет.

В идеале, хотелось бы получить бридж именно на уровне вланов, а не чистого эзернета. Нужен он, для того, чтобы под сети клиентов создавать отдельные вланы и шейпить их типа:
ipfw add pipe 1 ip from any to any via vlan0

Пока же, что я вижу из всего этого, что как только включается бридж - на вланы перестают попадать юникастовые пакеты. Т.е. на интерфейсе они видны в инкапсулированном виде, а если смотреть tcpdump на влане привязанном к этому интерфейсу, то из этих инкапсулированных пакетов - туда попадают только мультикасты и бродкасты... Если бридж выключить, то сразу становиться все нормально и на влане появляются все пакеты... :(

  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Ауууу! FreeBSD + vlan + bridge = trouble"
Сообщение от Gray emailИскать по авторуВ закладки on 06-Июл-03, 21:02  (MSK)
Неужели никто не сталкивался с подобной проблемой? Люди - не молчите плиз!!!
  Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "Ауууу! FreeBSD + vlan + bridge = trouble"
Сообщение от gara Искать по авторуВ закладки on 07-Июл-03, 02:20  (MSK)
>Неужели никто не сталкивался с подобной проблемой? Люди - не молчите плиз!!!
>
Упрости задачу или разбей ее на части. Очень лень читать весь рисунок.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "Ауууу! FreeBSD + vlan + bridge = trouble"
Сообщение от Gray emailИскать по авторуВ закладки on 07-Июл-03, 09:06  (MSK)
>>Неужели никто не сталкивался с подобной проблемой? Люди - не молчите плиз!!!
>>
>Упрости задачу или разбей ее на части. Очень лень читать весь рисунок.
>
Ок. Упрощаем... смотреть только третью часть рисунка. На центральном компе имеем с одной сетевухи(rl0) влан(vlan0), другая(rl1) чистая...  tcpdump'ом видим все пакеты и там(vlan0) и там(rl1). Как только включаем бридж между вланом(vlan0) и сетевухой(rl1), то на влан перестают попадать все пакеты, кроме бродкастов и мультикастов. Причем если смотреть на интерфейс(rl0) то видны все пакеты этого(vlan0) влана в нормальном, то бишь инкапсулированном виде. Как только брид выключается, то на вслане мы снова видим все пакеты... Куда копать?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "Ауууу! FreeBSD + vlan + bridge = trouble"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 07-Июл-03, 09:30  (MSK)
А для чего такой наворот нужне то вообще?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "Ауууу! FreeBSD + vlan + bridge = trouble"
Сообщение от Gray emailИскать по авторуВ закладки on 07-Июл-03, 10:45  (MSK)
>А для чего такой наворот нужне то вообще?
В сообщении 6 собственно говоря об этом написано. Впринципе смысл в том, что схема построения сети такая: клиенты(в разных вланах)-свич-роутер(в режиме бриджа)-канал_2Мбит-роутер(в режиме бриджа)-свич-клиенты(в разных вланах). Таким образом имеем на каждого клиента (имеющего несколько точек) отдельный влан и в случае если все заработает, то мы можем его шейпить, чтоб клиент не загружал весь (2Мбит) канал...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "FreeBSD + vlan + bridge : RESOLVE"
Сообщение от Gray emailИскать по авторуВ закладки on 22-Июл-03, 21:39  (MSK)
Для тех кому интересно: проблема была решена благодаря Максиму Коновалову. Вот здесь http://lists.freebsd.org/pipermail/freebsd-net/2003-June/000572.html было найдено обсуждение аналогичной проблемы и ее решения под FreeBSD 5.1. После комментирования соответствующего куска кода в файле /sys/net/if_ethersubr.c и пересборки ядра все заработало как положено.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

13. "FreeBSD + vlan + bridge : RESOLVE"
Сообщение от Gray emailИскать по авторуВ закладки on 09-Авг-03, 15:04  (MSK)
>все заработало как положено.
Немного поторопился. После ряда экспериментов было выяснено, что "все работает как положено" только когда физический интерфейс в промискоус моде... а так как для решения задачи необходимо объединять в бридж vlan'ы, то все работает когда слушаешь tcpdump'ом rl0 и rl1, и не работает если перестаешь их слушать... :(

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру