Jump to content
Калькуляторы

DHCP Unicast -> Brodcast DHCP Relay

Наверно безумная идея, но вдруг. Ситуация. Есть Bras Cisco ASR 1004, есть на сети Dlink DES 3026 много. Стоит задача используя запрос DHCP и option 82 авторизовать абонентов. ASR настроен в режиме

ip subscriber l2-connected

initiator dhcp

Т.е. коммутаторы находятся в L2 сети и проблем с другими коммутаторами нет, ASR релеит на DHCP сервер биллинга и все работает как надо. Но DES 3026 умеет вставлять опцию 82 только в собственный релей, т.е. пакует запрос DHCP в уникаст.

А как известно CISCO имеет "страшное" ограничение

ISG DHCP Restrictions

ISG cannot relay DHCP requests when a Layer 3 DHCP relay agent is between an ISG device and subscriber devices.

Описывалось довольно подробно здесь. ISG DHCP Restrictions

Собственно вопрос, можно каким-нибудь средством из уникаста сделать снова бродкаст, т.е. предоставить ASR пакет, с которым он умеет работать?

Сразу скажу, что изменить логику подключения практически невозможно - таков биллинг.

Share this post


Link to post
Share on other sites

вам нужно выплюнуть еще в нужный vlan, чтобы bras корректно сессию повесил. в вашем случае лучше сделать vlan per user и автаризовывать без dhcp opt 82.

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Меняйте или допиливайте биллинг, это дешевле, чем трахаццо со всем парком железа, да и перспектив больше будет

Share this post


Link to post
Share on other sites

Да в том то дело нет возможности сменить биллинг в обозримой перспективе.

Все-таки есть мысль как и чем сделать из пакета уникаста DHCP сделать бродкаст?

Share this post


Link to post
Share on other sites

Поставить рядом железку на которую будут релеить коммутаторы.

На ней линух который будет перехватывать пакет, и отправлять в нужный влан от имени абонента уже бродкастом.

 

На форуме были темки про самописные дхцп сервера, их можно взять за основу и переделать.

 

Лично я использую ядерный модуль который разбирает qinq (без создания интерфейсов) и выдаёт ип абонентам.

 

можно пробросить сетевуху в виртуалку и сделать всё на ней. Нагрузка будет минимальной.

Edited by VVSina

Share this post


Link to post
Share on other sites

Появится проблема в отравлении fdb таблицы. Т.к. правильно отправлять dhcp discover с src mac абонента - иначе bras может что-то не так сделать.

Share this post


Link to post
Share on other sites

Появится проблема в отравлении fdb таблицы. Т.к. правильно отправлять dhcp discover с src mac абонента

 

в нужный влан от имени абонента

 

Я примерно это и сказал.

Поставить нужней мак ойпи-мак отправителя проблем нету. и с барсом тут трудностей возникнуть не должно.

 

Другой вопрос в том что будут делать L2 железки т.к. там тоже буду отравления.

хотя статическая запись мак-порт должна это вылечить.

 

Точный ответ дадут только стендовые испытания. Ибо что железки сравнивать - разные прошивки на одном и том-же коммутаторе ведут себя по разному.

Share this post


Link to post
Share on other sites

а на каком количестве вланов на одном свиче нужно делать option82 ? dhcp local relay оставляет броадкаст нетронутым лишь вставляя 82 .

правда на длинках ограничение по количеству вланов - 16 или 20 штук не помню

Share this post


Link to post
Share on other sites

Не знаю насчёт д.линков но на SNRах снупинг с 82й и релей это разные фичи, причём иногда разом не работающие.

Share this post


Link to post
Share on other sites

То что вам нужно легко сделает скрипт на перле/.../прога на сях строк на 10-30.

Создаём юдп сокет, биндим его на нужный интерфейс/порт, читаем с него в цикле, после прочтения отправляем через другой сокет/этот же на адрес 255.255.255.255.

Всё.

 

Может вылезут и другие грабли после того как пакеты начнут ходить, об этом мне не известно.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this