Urs_ak Posted December 1, 2017 Posted December 1, 2017 Подскажите, пожалуйста, у некоторых коллег тут на форуме используется VLAN на абонента без opt.82, протянутый до BRAS'а по QinQ отмечается что это хорошо: недорогие свичи на доступе, не надо бороться с софтовыми проблемами коммутатора и совместимостью и т.п. Такой вопрос - я правильно понимаю, что на доступе коммутаторы пред-настраиваются вида: 1 порт -1001 влан, 48 порт - 1048 влан ? А если дом большой и там, допустим, много коммутаторов - это получается у второго будет: 1 порт - 1049 влан, 48 порт - 1096 влан ? Так что-ли? Выглядит сложновато как-то: если в S-VLAN закодирован дом, а в C-VLAN стоит 1325 - то сразу и не поймёшь на каком коммутаторе абонент. Как это админится? Вставить ник Quote
s.lobanov Posted December 1, 2017 Posted December 1, 2017 ну если у вас есть хоть какая-то система тех. учета - будь то .xls-файл, самописное что-то и или специальное ПО/модуль к биллингу, то что мешает учитывать там S+C-vlan-ы (привязывать их к свитчу), а потом искать? Да, в случае если это специальное ПО/модуль биллинга, то возможно там этого нет из коробки и придется заплатить за доработку, но что уж тут поделать, либо пилите ИТ-системы сами, либо платите кому-то за это (что обычно дешевле в итоге) Вставить ник Quote
Avad0n Posted December 1, 2017 Posted December 1, 2017 Тут надо искать золотую середину между удобством администрирования и утилизацией доступного кол-ва svlan,cvlan. На большой сети второй фактор важнее (+ еще как пунктом инкапсуляции можно использовать мплс). А так в принципе до какого то момента достаточно и общедоступной таблицы... Вставить ник Quote
Urs_ak Posted December 1, 2017 Author Posted December 1, 2017 Я ещё потому спрашиваю, что может есть какой-то способ само-документирования в данной схеме, который я не знаю. Листая форум мне попалось, что кто-то завязывается на ip управления коммутатора и оттуда высчитывает вланы. Спасибо за ответы. Вставить ник Quote
s.lobanov Posted December 1, 2017 Posted December 1, 2017 да можно легко сделать и самодокументируемую схему, конечно у нее будут пределы по масштабируемости, но если у вас маленькая сеть, то пойдет ну типа S-vlan - номер цепочки (туда включить например номер агрег. свитча и номер порта агрегационного свитча), C-vlan/48 - номер свитча в цепочке, C-Vlan%48 - номер порта на свитче ну и в таком духе можно допиливать как вам нравится, но самодокументируемость рано или поздно выливается в ограничения и так или иначе приходится держать какие-то таблицы где данные соотносятся друг с другом Вставить ник Quote
kayot Posted December 1, 2017 Posted December 1, 2017 1 час назад, Urs_ak сказал: Такой вопрос - я правильно понимаю, что на доступе коммутаторы пред-настраиваются вида: 1 порт -1001 влан, 48 порт - 1048 влан ? А если дом большой и там, допустим, много коммутаторов - это получается у второго будет: 1 порт - 1049 влан, 48 порт - 1096 влан ? Так что-ли? У нас подобная схема используется. Все значительно проще. Каждый свич нумеруется, если он один на доме - имеет номер 1 и вланы 1100-1148. Если их 2 - второй имеет вланы 1201-1248 и т.д. Ничего сложного. В биллинге клиенту указывается свич в который воткнут клиент и номер порта, влан вычисляет простейший скрипт автоматом. Вставить ник Quote
Urs_ak Posted December 2, 2017 Author Posted December 2, 2017 13 часов назад, kayot сказал: Каждый свич нумеруется, если он один на доме - имеет номер 1 и вланы 1100-1148. Если их 2 - второй имеет вланы 1201-1248 и т.д. А 12 коммутатор получается 2201-2248 ? Ну кстати да - вполне само-документированно Вставить ник Quote
Ivan_83 Posted December 2, 2017 Posted December 2, 2017 А я вот всё думаю, когда провайдеры дозреют спонсировать опенсорц чтобы им фичи пилили, но они всё костылями обкладываются дальше и дальше. Я сейчас к том, что, например, можно не вешать 100500 релей агентов, по одному на влан а запилит который будет выше этого - сам уметь тэгировать/растегировать нужное количество меток. Вставить ник Quote
vurd Posted December 2, 2017 Posted December 2, 2017 16 минут назад, Ivan_83 сказал: А я вот всё думаю, когда провайдеры дозреют спонсировать опенсорц чтобы им фичи пилили, но они всё костылями обкладываются дальше и дальше. Я сейчас к том, что, например, можно не вешать 100500 релей агентов, по одному на влан а запилит который будет выше этого - сам уметь тэгировать/растегировать нужное количество меток. Это вообще куда применимо? Нормальная схема с влан пер юзер работает так, что службу дхцп реализует брас, а ему ип-адреса и остальные параметры дает уже радиус, который посмотрит в биллинг. Это вроде как у всех вендоров работает. Вставить ник Quote
Ivan_83 Posted December 3, 2017 Posted December 3, 2017 Это применимо к тем кто сидит на опенсорсе а не на вендорах. Вставить ник Quote
xcme Posted December 3, 2017 Posted December 3, 2017 В 02.12.2017 в 00:48, Urs_ak сказал: у некоторых коллег тут на форуме используется VLAN на абонента без opt.82, протянутый до BRAS'а по QinQ Если абонентам надо еще и адреса выдавать, то опция 82 все равно нужна) Просто вставлять ее может уже сам BRAS. Совсем без опции 82, это, наверное, только PPPoE =) Вставить ник Quote
xcme Posted December 4, 2017 Posted December 4, 2017 P.S. Да, забыл, еще можно так: В 03.12.2017 в 01:57, vurd сказал: Нормальная схема с влан пер юзер работает так, что службу дхцп реализует брас, а ему ип-адреса и остальные параметры дает уже радиус, который посмотрит в биллинг. Это вроде как у всех вендоров работает. Но у меня так не взлетело - кошак не захотел в запрос к радиусу вставлять svid/cvid, только MAC. Вставить ник Quote
buckethead Posted December 4, 2017 Posted December 4, 2017 9 часов назад, xcme сказал: Если абонентам надо еще и адреса выдавать, то опция 82 все равно нужна) Просто вставлять ее может уже сам BRAS. Совсем без опции 82, это, наверное, только PPPoE =) Адреса брасы выдают, зачем опция? Нужен постоянный адрес -- RADIUS выдаёт Framed-IP-Address атрибут, так делается в серьёзных ISP. Вставить ник Quote
xcme Posted December 4, 2017 Posted December 4, 2017 29 минут назад, buckethead сказал: Адреса брасы выдают, зачем опция? Нужен постоянный адрес -- RADIUS выдаёт Framed-IP-Address атрибут, так делается в серьёзных ISP. В следующем посте как раз ответ: в моем случае NAS не умеет svid/cvid в RADIUS. Если умеет, то согласен, можно и без опции 82 и без дхцп вообще. Я забыл про этот вариант :) Вставить ник Quote
buckethead Posted December 4, 2017 Posted December 4, 2017 (edited) В таком случае опция на брасе лучше чем опция на доступе, да. 2 часа назад, xcme сказал: P.S. Да, забыл, еще можно так: Но у меня так не взлетело - кошак не захотел в запрос к радиусу вставлять svid/cvid, только MAC. Это что за кошак, у меня есть рабочий BRAS (ISG, asr1k) с авторизацией в RADIUS по паре stag/ctag, там, правда, колхоза немножко, но жить можно. Edited December 4, 2017 by buckethead Вставить ник Quote
AlKov Posted December 4, 2017 Posted December 4, 2017 В 02.12.2017 в 00:23, kayot сказал: У нас подобная схема используется. Все значительно проще. Каждый свич нумеруется, если он один на доме - имеет номер 1 и вланы 1100-1148. Если их 2 - второй имеет вланы 1201-1248 и т.д. Ничего сложного. В биллинге клиенту указывается свич в который воткнут клиент и номер порта, влан вычисляет простейший скрипт автоматом. Я правильно понимаю, что свитч доступа (где вланы 1100-1148) не имеет никакого отношения к QinQ? Т.е. на нём только VLAN управления (тегом на аплинк-порту) и CVLAN-ы 1100... (на аплинке тегом, клиентские антегом). А SVLAN существует только на "агрегации", дальше транзитом до BRAS, на котором сконфигурён интерфейс "шлюза", вида eth0.2519 (где 2519 - это VID SVLAN) с IP шлюза и "клиентские" интерфейсы вида eth0.2519.1100 (без IP). Так? Вставить ник Quote
Urs_ak Posted December 4, 2017 Author Posted December 4, 2017 1 час назад, AlKov сказал: Так? Я тоже так понял эту конструкцию. Далее BRAS (например SE100) посылает RADIUS запрос в биллинг с атрибутом NAS-Port-ID вида "vlan-id 1005:1148", а биллинг разрешает и выдаёт адрес - либо через DHCP-ответ, либо через Framed-IP-Address атрибут Вставить ник Quote
kayot Posted December 4, 2017 Posted December 4, 2017 1 час назад, AlKov сказал: Я правильно понимаю, что свитч доступа (где вланы 1100-1148) не имеет никакого отношения к QinQ? Т.е. на нём только VLAN управления (тегом на аплинк-порту) и CVLAN-ы 1100... (на аплинке тегом, клиентские антегом). А SVLAN существует только на "агрегации", дальше транзитом до BRAS, на котором сконфигурён интерфейс "шлюза", вида eth0.2519 (где 2519 - это VID SVLAN) с IP шлюза и "клиентские" интерфейсы вида eth0.2519.1100 (без IP). Так? Абсолютно верно. На доступе только управление и клиентские вланы, никакого интеллекта от свичей не нужно. На аггрегации на порт домовой навешивается второй тег, нужна поддержка QinQ и ничего более. Весь мозг на БРАСе, тут dhcp с opt82 и терминация вланов. В linux-софт-брасе будут интерфейсы eth0.2519.1101 без IP, на них с помощью IP Unnumbered маршрутизируется нужный IP или подсеть. Вставить ник Quote
AlKov Posted December 4, 2017 Posted December 4, 2017 kayot , спасибо. С этим всё понятно. Ещё понадоедаю малость? ;-) 1. У меня на данный момент "агрегаторами" являются D-Link DGS-3120-24SC, сейчас на них настроены только "обычные домовые" влан(PPPoE, vlan-на дом). Вопрос в следующем - как на них параллельно поднять QinQ, не повалив действующую схему? Насколько я в курсе, в дилинках есть какие-то специфичные хитрости при настройке QinQ, вплоть до определённого порядка введения команд. Поделитесь опытом, пожалуйста. 2. Я так понимаю, для авторизации и полисинга Вы используете accel-ppp. Если "да", то пару слов о том, какую схему авторизации используете? 3. Вкратце, как выглядит конфиг dhcpd? Он "статический" (создаётся один раз при запуске нового доступа)? 4. Чем создаются интерфейсы и маршруты на BRASе при ребуте? Вставить ник Quote
casper.w00t Posted December 4, 2017 Posted December 4, 2017 21 минуту назад, AlKov сказал: kayot , спасибо. С этим всё понятно. Ещё понадоедаю малость? ;-) 1. У меня на данный момент "агрегаторами" являются D-Link DGS-3120-24SC, сейчас на них настроены только "обычные домовые" влан(PPPoE, vlan-на дом). Вопрос в следующем - как на них параллельно поднять QinQ, не повалив действующую схему? Насколько я в курсе, в дилинках есть какие-то специфичные хитрости при настройке QinQ, вплоть до определённого порядка введения команд. Поделитесь опытом, пожалуйста. 2. Я так понимаю, для авторизации и полисинга Вы используете accel-ppp. Если "да", то пару слов о том, какую схему авторизации используете? 3. Вкратце, как выглядит конфиг dhcpd? Он "статический" (создаётся один раз при запуске нового доступа)? 4. Чем создаются интерфейсы и маршруты на BRASе при ребуте? Давненько было дело, у меня под рукой конфигов и не осталось наверно. Если найдутся скину, но думаю быстрей подскажут те у кого сейчас все это дело доступно. Точно помню читал ftp://ftp.dlink.ru/pub/Trainings/SwitchWhitePapers/Q-in-Q_Port-Based_and_Selective.pdf Точно помню была загвоздка с ревизиями длинков. какие то не умели во vlan_translation (на 3200 только С умели, А и В нет. Даже в саппорт звонил сказали менять. Но это было давно.) а так если нужно не поломать существующий влан то делаем create vlan_translation ports 1 cvid 100 replace svid 100 (то есть оставляем vlanid без изменений) если нужно навесить метку то create vlan_translation ports 1 cvid 100 add svid 200 если конечно ничего не напутал. Вставить ник Quote
xcme Posted December 4, 2017 Posted December 4, 2017 2 часа назад, AlKov сказал: Насколько я в курсе, в дилинках есть какие-то специфичные хитрости при настройке QinQ, вплоть до определённого порядка введения команд. На старый сериях (3120 не относится к ним) после включения QinQ меняется outer_tpid на 0x88a8 и коммутатор становится недоступным. Нам нужно значение 0x8100 Проверить так: config qinq ports 1-28 outer_tpid 0x8100 Если скажет "You should enable QinQ at first!" - это проблемный коммутатор. В этом случае надо позаботиться о том, как вернуть эти значения на 0x8100 после включения QinQ. Очевидный вариант - техник с консолью на месте. Либо инкрементный конфиг с соответствующими командами. Если дает ставить любые значения без проблем, можно делать enable qinq. P.S. Пока разбирался с QinQ написал для себя пару заметок чтобы не забыть. 7 часов назад, buckethead сказал: Это что за кошак, у меня есть рабочий BRAS (ISG, asr1k) с авторизацией в RADIUS по паре stag/ctag, там, правда, колхоза немножко, но жить можно. А вот этот самый ASR1K и есть. Я пробовал через DHCP Server Radius Proxy и еще вариант с, кажется, initiator. Ни в том ни в том случае s-tag, c-tag не отправляются. Можно пример настроек и версию ПО? Ну и что за колхоз, тоже интересно. :) Вставить ник Quote
v_r Posted December 4, 2017 Posted December 4, 2017 1 час назад, xcme сказал: Если скажет "You should enable QinQ at first!" - это проблемный коммутатор. В этом случае надо позаботиться о том, как вернуть эти значения на 0x8100 после включения QinQ. Очевидный вариант - техник с консолью на месте. Либо инкрементный конфиг с соответствующими командами. Говорят с веб-интерфейса настройки изменяются в один заход. Вставить ник Quote
buckethead Posted December 5, 2017 Posted December 5, 2017 14 часов назад, xcme сказал: Можно пример настроек и версию ПО? Ну и что за колхоз, тоже интересно. :) Версии разные использовали. Сейчас 03.13.04.S Вот пример порта кастомера interface Port-channel1.400 encapsulation dot1Q 400 second-dot1q any ip unnumbered Loopback1 ip helper-address 192.168.100.27 no ip redirects no ip unreachables no ip proxy-arp ip mtu 1500 ip verify unicast source reachable-via rx l2-src ip access-group Bogons in shutdown service-policy type control Customers ip subscriber l2-connected initiator dhcp arp ignore local end Вот пример политики policy-map type control Customers class type control Unauth event timed-policy-expiry 1 service disconnect ! class type control always event session-start 1 authorize aaa password cisco identifier remote-id (здесь ещё можно попробовать nas-port-id) 3 set-timer Unauth 1 ! class type control always event session-restart 1 authorize aaa password cisco identifier remote-id 3 set-timer Unauth 1 ! class type control always event access-reject 1 service-policy type service name OpenGarden 2 service-policy type service name L4R 3 set-timer Unauth 3 ! ! class-map type traffic match-any L4R match access-group input name WebRedirectIn match access-group output name WebRedirectOut ! class-map type traffic match-any OpenGarden match access-group output name OpenGardenOut match access-group input name OpenGardenIn ! class-map type control match-all Unauth match timer Unauth match authen-status unauthenticated ! policy-map type service L4R class type traffic L4R redirect to group Enclosure ! class type traffic default in-out drop ! ! policy-map type service OpenGarden class type traffic OpenGarden police input 5000000 937500 1875000 police output 5000000 937500 1875000 ! class type traffic default in-out drop ! ! Где remote-id, там порт кастомера работает как DHCP-Relay, где nas-port-id работает как DHCP-Server. Колхоз заключается в парсинге того, что приходит на радиус, на предмет stag/ctag, они там в хексе могут быть, могут быть в аски. Вставить ник Quote
kayot Posted December 5, 2017 Posted December 5, 2017 19 часов назад, AlKov сказал: kayot , спасибо. С этим всё понятно. Ещё понадоедаю малость? ;-) 1. У меня на данный момент "агрегаторами" являются D-Link DGS-3120-24SC, сейчас на них настроены только "обычные домовые" влан(PPPoE, vlan-на дом). Вопрос в следующем - как на них параллельно поднять QinQ, не повалив действующую схему? Насколько я в курсе, в дилинках есть какие-то специфичные хитрости при настройке QinQ, вплоть до определённого порядка введения команд. Поделитесь опытом, пожалуйста. 2. Я так понимаю, для авторизации и полисинга Вы используете accel-ppp. Если "да", то пару слов о том, какую схему авторизации используете? 3. Вкратце, как выглядит конфиг dhcpd? Он "статический" (создаётся один раз при запуске нового доступа)? 4. Чем создаются интерфейсы и маршруты на BRASе при ребуте? 1. Старые вланы и управление пропускаются мимо qinq с помощью функционала selective qinq, выше давали верную команду для пропуска vid100 без изменений create vlan_translation ports 1 cvid 100 replace svid 100 Сам qinq на 3120 включается в веб-морде или консоли, ничего сложного там нет. 2. В качестве БРАСа linux с accel. Авторизация по номеру порта, на радиус приходит запрос вида svid.cvid, при положительном ответе клиент получает IP и стартует сессия 3. Dhcp отдельный разговор. В принципе он не нужен вообще, accel умеет запрашивать IP у радиуса и выдавать его клиенту как нормальные БРАСы. У меня используется perl-dhcp от Ivan83, биллинг заполняет табличку соответствий svid.cvid - ip, dhcp выдает адреса клиентам. 4. Это все проблемы accel, для этого он и нужен. Вставить ник Quote
AlKov Posted December 5, 2017 Posted December 5, 2017 QinQ сконфигурил без потерь в действующем PPPoE сегменте. А вот в сегменте IPoE обнаружилась проблема - не доходят dhcp запросы от клиентов. Смотрел tcpdump-ом непосредственно на интерфейсе BRAS(CentOS) - пусто.. Если клиенту назначить IP статикой, всё работает. На доступе DES-3200-26 с включённым dhcp_local_relay в клиентких влан. Где ещё поискать? Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.