nicol@s Опубликовано 22 декабря, 2011 · Жалоба Добрый день. Задумались о резервировании бриджей. На ум пришла такая схема: --свитч--бридж--свитч-- |_____________| Суть в том, чтобы трафик бежал в обход бриджа, в случае его выхода из строя. Используем свитчи Dlink. Первым делом попробовали настроить STP, но испытания на стенде каких-то положительных итогов не принесли. Попробовали поиграться с LACP - то же самое. Интересует как вы резервируете свои бриджи? Поделитесь, пожалуйста, опытом. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saab95 Опубликовано 22 декабря, 2011 · Жалоба RSTP, сходимость доли секунды. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nicol@s Опубликовано 22 декабря, 2011 (изменено) · Жалоба RSTP, сходимость доли секунды. Хм... Интересно... Я настраивал так: свитч 1 DGS362G: config stp version rstp config stp maxage 20 maxhops 20 forwarddelay 15 txholdcount 6 fbpdu enable hellotime 2 config stp priority 36864 instance_id 0 config stp mst_ports 21-24 instance_id 0 internalCost auto priority 128 config stp ports 21-24 externalCost auto edge false p2p auto state enable config stp ports 21-24 fbpdu enable config stp ports 21-24 restricted_role false config stp ports 21-24 restricted_tcn false Свитч 2 DGS3612G: config stp version rstp config stp maxage 20 maxhops 20 forwarddelay 15 txholdcount 6 fbpdu enable hellotime 2 config stp priority 36864 instance_id 0 config stp mst_ports 9-12 instance_id 0 internalCost auto priority 128 config stp ports 9-12 externalCost auto edge false p2p auto state enable config stp ports 9-12 fbpdu enable config stp ports 9-12 restricted_role false config stp ports 9-12 restricted_tcn false Свитч 1: 21 порт - бридж 23 порт - клиент 1 Свитч 2: 9 порт - бридж 11 порт - клиент 2 Доступ между клиентом 1 и клиентом 2 есть. Как только соединяю свитчи: Свитч 1 порт 24 <--> Свитч 2 порт 12 через секунд 20 начинается флуд, образуется кольцо, связь пропадает между "клиентами"... Можете привести пример Вашей настройки? Изменено 22 декабря, 2011 пользователем nicol@s Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
gibbon Опубликовано 22 декабря, 2011 · Жалоба Все-таки надо разрешить STP на портах config stp ports 1-24 state enable config stp ports 1-12 state disable Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nicol@s Опубликовано 22 декабря, 2011 · Жалоба Все-таки надо разрешить STP на портах config stp ports 1-24 state enable config stp ports 1-12 state disable Прошу прощения, глупость написал :) На самом деле этих двух команд не выполнял. Пост выше отредактировал. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nicol@s Опубликовано 28 декабря, 2011 (изменено) · Жалоба Я все никак не могу добиться 100% рабочей схемы... Сегодня проводил очередные тесты. По совету Длинка выставил разные приоритеты на свитчах: на одном свитче: config stp priority 36864 instance_id 0 на втором: config stp priority 1024 instance_id 0 Тест №1: Трафик бежит через бридж. Свитчи соединены патчкордом. Вытыкаю оба линка от бриджа на каждом свитче, трафик через 1 сек начинает бежать в обход. root выбирается верно. Поднимаю линки от бриджа на свитчах, трафик бежит по бриджу...НО..Проходит примерно 2 минуты, и образуется кольцо, связь сразу теряется.. Тест №2: Трафик бежит через бридж. Свитчи соединены патчкордом. Вытыкаю один линк от бриджа до любого свитча - и сразу как выше: кольцо, потеря связи. Думал, может у меня бридж работает как ARP прокси, но net.link.ether.inet.proxyall=0 Также выставил net.link.ether.inet.max_age=1 (было 1500) Но ничего не изменилось:( Saab95, а у Вас RSTP на длинках? У меня при выключении бриджа трафик начинает бежать в обход через 1 сек, примерно. При восстановлении линка от бриджа, трафик через бридж начинает бежать секунд через 20-30. Это, видимо, можно подтюнить...Но сначала завести бы эту схему... Помогите найти ошибку. Изменено 28 декабря, 2011 пользователем nicol@s Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Deac Опубликовано 28 декабря, 2011 · Жалоба Проходит примерно 2 минуты, и образуется кольцо, связь сразу теряется.. Бридж должен пропускать BPDU от свитчей безо всякой обработки. При восстановлении линка от бриджа, трафик через бридж начинает бежать секунд через 20-30. См. hello time. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
G@riK Опубликовано 13 января, 2012 · Жалоба Добрый день. У меня аналогичная задача, только бриждей 3 штуки. Посему вопрос: такое резервирование можно сделать с помощью RSTP или нужно использовать MSTP? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 13 января, 2012 · Жалоба Если отвечать "по форумному", то вам бы стоило прочитать про разницу между ними. ;) Если нормально, то достаточно RSTP. Глобально MSTP отличается только тем, что может оперировать несколькими instance'ами с различными vlan'ами. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
G@riK Опубликовано 13 января, 2012 (изменено) · Жалоба Спасибо. Читал и продолжаю читать... Но никак не могу понять, как с помощью RSTP реализовать эту схему, при которой бриджы независимы друг от друга. Т.е. в случае пропалания линка между свитчем1 и бриджом1 трафик должен победать через свитч1-свитч2, при этом остальной трафик должен бежать через бридж2 и бридж3. Изменено 13 января, 2012 пользователем G@riK Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 13 января, 2012 · Жалоба Три раза прочитал вашу фразу, схема как-то всё равно не сложилась. Нарисовать можете? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
G@riK Опубликовано 13 января, 2012 (изменено) · Жалоба |---------бридж1----------| | | |---------бридж2----------| свитч1| |свитч2 |---------бридж3----------| | | |--линк1 между св1 и св2--| |--линк2 между св1 и св2--| |--линк3 между св1 и св2--| Т.е. изначально трафик должен пробегать через свитч1, затем через соответствубщий бридж, затем в свитч2. В случае, если бридж1, например, упал, то трафик для этого бриджа должен побежать через "линк1 между св1 и св2" (либо через 1 общий линк меджу свитчами). При этом трафик для остальных бриджей должен бегать как и положено через соответсвующие бриджы. Изменено 13 января, 2012 пользователем G@riK Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 13 января, 2012 · Жалоба RSTP на коммутаторах и бриджах, но! Активным всегда будет только один путь. В MSTP, если правильно настроите, можно будет пустить разные вланы по разным путям, путём существенного усложнения дебага при проблемах. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
martin74 Опубликовано 13 января, 2012 · Жалоба ммм... а зачем так сложно? оставляем между свичами один прямой линк, остальные через бриджи, поднимаем RSTP, на прямом линке минимальный приоритет. При падении одного из бриджей его траф перераспределится между существующими живыми, а прямой линк будет задействован только при падении всех бриджей... И расширять дальше проще. Хоть 10 их ставьте... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
G@riK Опубликовано 13 января, 2012 (изменено) · Жалоба Dyr А если трафик в одном вилане, просто с разными default gateway, то возможно ли при MSTP обойтись только настройкой разных instance_id? martin74 В ЧНН произойдет цепная реакция и все бриджы по очереди упадут, так что такой вариант нам не очень подходит. Изменено 13 января, 2012 пользователем G@riK Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
martin74 Опубликовано 13 января, 2012 · Жалоба поставьте на один-два бриджа больше, чем надо, в чем проблема то? PS. У меня из за этого стоит 40 впн серверов. И ничего, не жужжу.... ;) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kapa Опубликовано 13 января, 2012 · Жалоба поставьте на один-два бриджа больше, чем надо, в чем проблема то? PS. У меня из за этого стоит 40 впн серверов. И ничего, не жужжу.... ;) Какой смысл тогда в прямом линке STP? Какова вероятность падения всех девайсов, если они ещё и загружены таким образом, что смогут выдержать нагрузку и от соседа? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 13 января, 2012 · Жалоба А если трафик в одном вилане, просто с разными default gateway, то возможно ли при MSTP обойтись только настройкой разных instance_id? Нет. MSTP оперирует vlan'ами (то есть чистый L2), про gateways (то есть L3) ему вообще ничего не известно. Используйте в этом случае динамическую маршрутизацию, она для этого и предназначена. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
martin74 Опубликовано 13 января, 2012 · Жалоба Ну я не знаю, как у ТС, у меня pptp используется. И впн сервера нормально работают, если упадет до 30% ;) Такого не было еще ни разу, если и станет на пару часов одна впн-ка, то это никто не заметит. Разве что коннекты переподнимутся и все. А для ТС прямой линк между свичами - если все совсем плохо... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
G@riK Опубликовано 16 января, 2012 · Жалоба Решил попробовать всё таки реализовать схему с mstp (для начала с одним бриджом). |--21-----бридж1-------9--| свитч1| |свитч2 |--24 порт-------12 порт--| В качестве свитчей используются dlink 36xx Бридж на freebsd 8.0-stable-201005 На свитчах настраиваю mstp так: свитч1 disable stp create vlan vlan101 tag 101 config vlan default delete 21,24 config vlan vlan101 add tagget 21,24 config stp version mstp config stp maxage 6 maxhops 20 forwarddelay 4 txholdcount 6 fbpdu enable lbd disable create stp instance_id 1 config stp priority 8192 instance_id 1 config stp instance_id 1 add_vlan 101 config stp mst_config_id name priv revision_level 1 enable stp свитч2 create vlan vlan101 tag 101 config vlan default delete 9,12 config vlan vlan101 add tagget 9,12 disable stp config stp version mstp config stp maxage 6 maxhops 20 forwarddelay 4 txholdcount 6 fbpdu enable lbd disable create stp instance_id 1 config stp priority 4096 instance_id 1 config stp instance_id 1 add_vlan 101 config stp mst_config_id name priv revision_level 1 enable stp Т.е. настройки аналогичны, кроме приоритетов. На бридже1 настроен интерфейс (с 0 приоритетом, т.е. должен выбираться рутовым): ifconfig create bridge0 ifconfig bridge0 stp em0 stp em1 ifconfig bridge0 priority 0 ifconfig bridge0 fwddelay 4 ifconfig bridge0 maxage 6 В итоге рутовым выбирается свитч2 по прямому линку. На бридже (на bridge0) не вижу вообще никаких пакетов. Предполагаю, что что-то не так делаю на бридже. Может кто подскажет что именно? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
G@riK Опубликовано 20 января, 2012 · Жалоба Мучения продолжаются... Исходные данные: DGS3627G (FW 2.84-B25), DGS3612G (FW 2.84-B25), FreeBSD (8.0 stable 201105). Схема как указано в предыдущем сообщении, к 3627 подключен "комп1", к 3612 "комп2". Как я понимаю работу MSTP в данной схеме: трафик от "комп 1" попадает сначала на 3627, потом на бридж, потом на 3612, потом на "комп 2". Я предполагаю, что для 3627 рутовым бриджом должен быть "FreeBSD bridge". Если "FreeBSD bridge" выключится, то рутовым бриджом должен быть 3612. Согласно этому я должен дать приоритеты таким образом: 3627 - самый низкий приоритет FreeBSD bridge - самый высокий приоритет 3612 - среднее между FreeBSD bridge и 3627 Настраиваю: 3627 (00-22-B0-26-C1-00): config vlan default delete 1-27 create vlan bridge1 tag 101 config vlan bridge1 add unt 21-24 config stp version mstp config stp mst_config_id name bridge1 revision_level 1 config stp priority 8192 instance_id 0 create stp instance_id 2 config stp instance_id 2 add_vlan 101 config stp priority 8192 instance_id 2 enable stp 3612 (00-1E-58-D9-13-00): config vlan default delete 1-12 create vlan bridge1 tag 101 config vlan bridge1 add unt 9-12 config stp version mstp config stp mst_config_id name bridge1 revision_level 1 config stp priority 4096 instance_id 0 create stp instance_id 2 config stp instance_id 2 add_vlan 101 config stp priority 4096 instance_id 2 enable stp FreeBSD bridge: ifconfig bridge0 stp em0 stp em1 ifconfig bridge0 priority 0 ifconfig bridge0 fwddelay 4 ifconfig bridge0 maxage 6 Начинаю тестирование: 1. Прямого линка между свитчами пока что нету: 3627: STP Instance Settings --------------------------- Instance Type : CIST Instance Status : Enabled Instance Priority : 8192 (Bridge Priority : 8192 , SYS ID Ext : 0 ) STP Instance Operational Status -------------------------------- Designated Root Bridge : 0 /00-15-17-8E-E7-EE External Root Cost : 20000 Regional Root Bridge : 8192 /00-22-B0-26-C1-00 Internal Root Cost : 0 Designated Bridge : 0 /00-15-17-8E-E7-EE Root Port : 21 Max Age : 6 Forward Delay : 4 Last Topology Change : 145 Topology Changes Count : 27 STP Instance Settings --------------------------- Instance Type : MSTI(2) Instance Status : Enabled Instance Priority : 8194 (Bridge Priority : 8192 , SYS ID Ext : 2 ) STP Instance Operational Status -------------------------------- Regional Root Bridge : 8194 /00-22-B0-26-C1-00 Internal Root Cost : 0 Designated Bridge : 8194 /00-22-B0-26-C1-00 Root Port : None Remaining Hops : 20 Last Topology Change : 101 Topology Changes Count : 27 Command: show stp ports 21 MSTP Port Information ---------------------- Port Index : 21 , Hello Time: 2 /2 , Port STP : Enabled , LBD : No External PathCost : Auto/20000 , Edge Port : False/No , P2P : Auto /Yes Port RestrictedRole : False, Port RestrictedTCN : False Port Forward BPDU : Enabled MSTI Designated Bridge Internal PathCost Prio Status Role ----- ------------------ ----------------- ---- ---------- ---------- 0 0000/0015178EE7EE 20000 128 Forwarding Root 2 2002/0022B026C100 20000 128 Forwarding Master На "FreeBSD bridge" tcpdump`ом вижу трафик. Тут мне непонятно, почему в Instance Type: CIST я вижу рутовый портв, а в Instance Type : MSTI(2) - нет. 2. Подключаю прямой линк: 3627: STP Instance Settings --------------------------- Instance Type : CIST Instance Status : Enabled Instance Priority : 8192 (Bridge Priority : 8192 , SYS ID Ext : 0 ) STP Instance Operational Status -------------------------------- Designated Root Bridge : 0 /00-15-17-8E-E7-EE External Root Cost : 20000 Regional Root Bridge : 4096 /00-1E-58-D9-13-00 Internal Root Cost : 20000 Designated Bridge : 4096 /00-1E-58-D9-13-00 Root Port : 24 Max Age : 6 Forward Delay : 4 Last Topology Change : 387 Topology Changes Count : 26 STP Instance Settings --------------------------- Instance Type : MSTI(2) Instance Status : Enabled Instance Priority : 8194 (Bridge Priority : 8192 , SYS ID Ext : 2 ) STP Instance Operational Status -------------------------------- Regional Root Bridge : 4098 /00-1E-58-D9-13-00 Internal Root Cost : 20000 Designated Bridge : 4098 /00-1E-58-D9-13-00 Root Port : 24 Remaining Hops : 19 Last Topology Change : 473 Topology Changes Count : 26 Command: show stp ports 24 MSTP Port Information ---------------------- Port Index : 24 , Hello Time: 2 /2 , Port STP : Enabled , LBD : No External PathCost : Auto/20000 , Edge Port : False/No , P2P : Auto /Yes Port RestrictedRole : False, Port RestrictedTCN : False Port Forward BPDU : Enabled MSTI Designated Bridge Internal PathCost Prio Status Role ----- ------------------ ----------------- ---- ---------- ---------- 0 1000/001E58D91300 20000 128 Forwarding Root 2 1002/001E58D91300 20000 128 Forwarding Root Command: show stp ports 21 MSTP Port Information ---------------------- Port Index : 21 , Hello Time: 2 /2 , Port STP : Enabled , LBD : No External PathCost : Auto/20000 , Edge Port : False/No , P2P : Auto /Yes Port RestrictedRole : False, Port RestrictedTCN : False Port Forward BPDU : Enabled MSTI Designated Bridge Internal PathCost Prio Status Role ----- ------------------ ----------------- ---- ---------- ---------- 0 0000/0015178EE7EE 20000 128 Discarding Alternate 2 2002/0022B026C100 20000 128 Discarding Alternate 3612: STP Instance Settings --------------------------- Instance Type : CIST Instance Status : Enabled Instance Priority : 4096 (Bridge Priority : 4096 , SYS ID Ext : 0 ) STP Instance Operational Status -------------------------------- Designated Root Bridge : 0 /00-15-17-8E-E7-EE External Root Cost : 20000 Regional Root Bridge : 4096 /00-1E-58-D9-13-00 Internal Root Cost : 0 Designated Bridge : 0 /00-15-17-8E-E7-EE Root Port : 9 Max Age : 6 Forward Delay : 4 Last Topology Change : 510 Topology Changes Count : 11 STP Instance Settings --------------------------- Instance Type : MSTI(2) Instance Status : Enabled Instance Priority : 4098 (Bridge Priority : 4096 , SYS ID Ext : 2 ) STP Instance Operational Status -------------------------------- Regional Root Bridge : 4098 /00-1E-58-D9-13-00 Internal Root Cost : 0 Designated Bridge : 4098 /00-1E-58-D9-13-00 Root Port : None Remaining Hops : 20 Last Topology Change : 532 Topology Changes Count : 11 Command: show stp ports 9 MSTP Port Information ---------------------- Port Index : 9 , Hello Time: 2 /2 , Port STP : Enabled , LBD : No External PathCost : Auto/20000 , Edge Port : False/No , P2P : Auto /Yes Port RestrictedRole : False, Port RestrictedTCN : False Port Forward BPDU : Enabled MSTI Designated Bridge Internal PathCost Prio Status Role ----- ------------------ ----------------- ---- ---------- ---------- 0 0000/0015178EE7EE 20000 128 Forwarding Root 2 1002/001E58D91300 20000 128 Forwarding Master Command: show stp ports 12 MSTP Port Information ---------------------- Port Index : 12 , Hello Time: 2 /2 , Port STP : Enabled , LBD : No External PathCost : Auto/20000 , Edge Port : False/No , P2P : Auto /Yes Port RestrictedRole : False, Port RestrictedTCN : False Port Forward BPDU : Enabled MSTI Designated Bridge Internal PathCost Prio Status Role ----- ------------------ ----------------- ---- ---------- ---------- 0 1000/001E58D91300 20000 128 Forwarding Designated 2 1002/001E58D91300 20000 128 Forwarding Designated И соотвественно трафик бежит напрямую между коммутаторами. При такой настройке схема работает наоборот. Не могу найти ошибку в настройке. Может кто увидит в чём тут проблема... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Shiva Опубликовано 20 января, 2012 · Жалоба А зачем Вам фря в качестве ещё одного устройства? пусть пропускает тупо пакеты... Прямому линку надо поставить Cost больший, чем суммарно св1 + фря + св2. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
G@riK Опубликовано 20 января, 2012 (изменено) · Жалоба А зачем Вам фря в качестве ещё одного устройства? пусть пропускает тупо пакеты... Прямому линку надо поставить Cost больший, чем суммарно св1 + фря + св2. Правильно ли я понял, что на фре делаем просто бридж без STP, при этом прямому линку между свитчами делаем больший Cost? Но как заставить freebsd без STP пропускать bpdu-пакеты? Изменено 20 января, 2012 пользователем G@riK Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 20 января, 2012 · Жалоба Но как заставить freebsd без STP пропускать bpdu-пакеты? А они разве дропаются при выключенном stp? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Shiva Опубликовано 20 января, 2012 · Жалоба G@riK, если нету фильтров, то пропустит всё, на то он и бридж. В остальном правильно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...