LINUX.ORG.RU
ФорумAdmin

Управление блокировкой порта в linux

 


0

1
sw1 
|        \ eth1
|                   \
|                    br0 linux
|                   /
|         bond0
|       /
sw2

bridge на linux

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 master br0 state blocking priority 32 cost 20000 
6: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 master br0 state forwarding priority 32 cost 16000 
Как им всем объяснить, что бы интерфейсы на linux всегда были forwarding и что бы blocking всегда был только на свичах?

★★

Последнее исправление: macumazan (всего исправлений: 1)
Ответ на: комментарий от frob

На sw1 прилетает mac от br0 секунд так на 20-30, в то время, как на sw2 он уже есть. В итоге потеря связи с linux. Потом mac на sw1 пропадает, связь налаживается и так по кругу.

macumazan ★★
() автор топика
Ответ на: комментарий от anonymous

Пока выключил stp на br0, блокировка на sw1 сработала, mac на sw1 не светится. Но от этого не легче, есть несколько таких же сетапов по аналогии - с активным stp, path cost и т.п. Там блокировка срабавтывает именно на свичах. Нихрена не понятно, в чем разница.

macumazan ★★
() автор топика
Последнее исправление: macumazan (всего исправлений: 1)
Ответ на: комментарий от macumazan

Прочитай как работает протокол stp и сделай так, чтобы на мосту выставлялся нужный bridgeid.

anonymous
()
Ответ на: комментарий от macumazan

Ну и что ты тогда хочешь, если у br0 самый низкий приоритет, вот на нем и блокируются порты.

anonymous
()
Ответ на: комментарий от macumazan

Я бы для начала убедился, что с bond0 все хорошо. т.е. отключение одного из интерфейсов не приводит к потерям.

для твоего коммутатора хорошо бы прочитать документацию по настройке bonding + stp. А оно вообще поддерживается? Попадались модели с какими-то ограничениями.

В этой схеме достаточно включить stp на одном коммутаторе, а на остальных устройствах выключить его.

Можно на линуксе уменьшить fd до 0.

vel ★★★★★
()

За что идет борьба?

А ты не пробовал запретить форвардинг пакетов через мост средствами ebtables? Тем самым ты не будешь создавать кольцо, но будешь использовать подключение к обоим коммутаторам.

vel ★★★★★
()
Последнее исправление: vel (всего исправлений: 1)
Ответ на: комментарий от macumazan

Чтобы понять в чём разница нужно понимать как работает STP, а для этого нужно изучить как работают STP и RSTP.

anonymous
()
Ответ на: комментарий от vel

Одно кольцо из любого числа устройств достаточно разрезать в одном месте =)

Свич с отключёным STP будет пробрасывать STP-шные пакеты как бродкасты?

Линуксовый бридж может и будет (а если нет, то можно и ядро пересобрать), а за «любой» свич я б наверное не поручился.

Ну и отключать STP на свиче – сомнительная идея. Сегодня оставишь его только на Sw2, а завтра очередной умник вонзит в Sw1 «свич» без 802.1d и «чтоб быстрее было» подключит двумя портами.

frob ★★★★★
()
Ответ на: комментарий от vel

С bond0 проблем не обнаружно и в конексте STP тоже. В принципе вариант отключения stp на br0 помог, так и оставлю. Но осадок остался.

macumazan ★★
() автор топика
Ответ на: комментарий от macumazan

Чем плохо, что MAC-адрес хоста оказывается известен Sw1?

Ты хочешь, чтобы Sw1 получив пакет для этого хоста слал его во все порты в том же VLAN, что и порт, на котором был получен пакет?

frob ★★★★★
()
Ответ на: комментарий от frob

Не просто известен, а известен на порту, на котором линк с eth1, который в свою очередь state blocking со стороны linux.

macumazan ★★
() автор топика
Последнее исправление: macumazan (всего исправлений: 1)
Ответ на: комментарий от macumazan

Раз он известен на порту заблоченном с другой стороны, значит на этот порт прилетел пакет с таким SRC MAC, видимо до блокирования.

Всё штатно. Если хост будет молчать, то запись проэкспайрится, а если будет говорить – то этот адрес прилетит на Sw1 от Sw2.

frob ★★★★★
()
Ответ на: комментарий от frob

На управляемых коммутаторах есть 2 фичи: stp и loopback detection.

На клиентских портах lbd полезен, a stp - нет.

vel ★★★★★
()
Ответ на: комментарий от frob

значит на этот порт прилетел пакет с таким SRC MAC, видимо до блокирования.

И как это объясняет цикличность? Прилетел, улетел, прилетел….

macumazan ★★
() автор топика
Ответ на: комментарий от vel

Ммм… ну, на сиськах есть loop-guard, bpdu-guard и root-guard, не говоря уже про stp portfast, без которого вообще непонятно нафиг так жить.

Но тут-то на схеме три бриджа, а клиент где-то за бриджем.

frob ★★★★★
()
Ответ на: комментарий от frob

Всё штатно.

Так зачем ты пытаешься меня убедить, что все штатно? Моя твоя не понимать.

macumazan ★★
() автор топика
Ответ на: комментарий от vel

На клиентских портах stp bpdu-guard и stp portfast вообще первым делом .

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.