Option249

Материал из ExpertBilling

Перейти к: навигация, поиск

Настройка выдачи маршрутов по DHCP (Option 249/121)

В wiki появилась статья о простейшей установке и настройке микротика, и вот остановимся на пункте о настройке DHCP.

Дано: клиент, получающий адрес посредством DHCP, подключение к Интернет - посредством VPN (ip-адрес клиента 172.12.0.18, ip-адрес сервера(шлюз) 172.12.0.1; ряд ресурсов интернета должны быть доступны без поднятия vpn-соединения. (Рассматривается частный случай и разговор идет о конкретной настройке микротика и биллинг не затрагивает. Во избежание лишней полемики :) )

Ситуация: Клиент получает допустим адрес 192.168.130.18/24, шлюз 192.168.130.254, днс 192.168.130.254 - всё это достаточно легко настраивается через winbox и вопросов возникнуть не должно. Есть сайт [1] (81.25.32.44) - который провайдер сделал доступным по локальной сети без поднятия vpn-подключения. Пока не поднято vpn-соединение - всё чудесно - доступ к сайту происходит через шлюз по умолчанию 192.168.130.254, но стоит поднять vpn-соединение - адрес шлюза по-умолчанию сменится на 172.12.0.1 - и сайт будет уже доступен не через локальную сеть, а через Интернет. Соответствено - списываются денежки.

Решение 1 (простое, правильное, трудновнедряемое): Каждый клиент прописывает у себя статический маршрут к данному сайту. Ужас провайдера и страшный сон техподдержки, особенно если подсетей не одна, и не две, а сайтов гораздо больше.

Решение 2 (сложнее, правильное, легковнедряемое): Внимательнее расмотрим настройку DHCP Network

30.png

Нас интересует DHCP Options.

Немного теории - для передачи статических маршрутов в DHCP сервере микротика используется опция с кодом 249 для Windows систем или 121 для Linux. Синтаксис строки для данной опции (все значения в 16-ричной системе HEX) :

0x[маска подсети адреса назначения][адрес назначения][адрес шлюза]

Наш конкретный пример:

адрес назначения: 81.25.32.44  НЕХ: 5119202С
маска подсети : 32 НЕХ: 20
адрес шлюза: 192.168.130.254  НЕХ: C0A882FE

Итоговая конструкция:

0x205119202СC0A882FE

Все последующие маршруты дописываются без пробелов справа по тем же правилам. Теперь о настройке. Переходим на закладку Options, нажимаем "плюс" - появится окно "New DHCP Option" Настраиваем поля:

Name (название опции): Opt_130 название может быть любым, я использовал конструкцию из Opt[ion]_[адрес подсети]130 Code: 249 Value: 0x205119202СC0A882FE

На закладке Networks, в настройке DHCP Network - выбираем для DHCP Option нашу опцию Opt_130

Результат: Теперь при получении адреса от DHCP-сервера в таблице маршрутов клиента появится маршрут к maxigame.by (81.25.32.44), и доступ к данному сайту всегда будет через указанный вами шлюз вне зависимости от того, поднято vpn-соединение или нет.

Пример 2: условия те же, но добавим еще сеть 10.9.0.0/16 через шлюз 192.168.130.254

0x[маска подсети адреса назначения][адрес назначения][адрес шлюза]
адрес назначения: 81.25.32.44  НЕХ: 5119202С
маска подсети : 32 НЕХ: 20
адрес шлюза: 192.168.130.254  НЕХ: C0A882FE

адрес назначения: 10.9.0.0  НЕХ: 0A09
10 = A , добавляем 0 - итог 0A
9 = 9, добавляем 0 - итог 09

10.9.0.0 = 0A09
!!!!! Нули в конце адреса отбрасываются и не прописываются !!!!!!

маска подсети : 16 НЕХ: 10
адрес шлюза: 192.168.130.254  НЕХ: C0A882FE

Итоговая конструкция:

0x205119202СC0A882FE100A09C0A882FE

Именно так - без пробелов. Для понимания две конструкции рядом 1-ая и 2-ая:

0x205119202СC0A882FE
0x205119202СC0A882FE100A09C0A882FE

Автор DerShaman.

Личные инструменты