Как я могу настроить свой DHCP-сервер для распределения IP-маршрутов?

9

У меня есть сервер DHCP (Linux, IPCop, dnsmasq), работающий на моем сервере шлюза по умолчанию 192.168.0.1. У меня есть конечная точка VPN на другом сервере в сети (192.168.0.4). Можно ли настроить DHCP-сервер таким образом, чтобы он отправлял не только шлюз по умолчанию, но и информацию о маршрутизации для VPN (192.168.1. *) DHCP-клиентам, когда они запрашивают IP-адрес? Клиенты DHCP работают под управлением Windows и Linux.

Я пытался найти что-то в официальной документации ( http://www.ipcop.org/2.0.0/en/admin/html/custom-dnsmasq-local.html ), но не смог. Существование RFC3442 указывает на то, что это может быть как-то возможно.

blerontin
источник
Из ссылки мне не очевидно, что вставлять dnsmasq.local.
blerontin

Ответы:

9

Это можно сделать, добавив следующие строки dhcpd.conf:

option rfc3442-classless-static-routes code 121 = array of integer 8;
option rfc3442-classless-static-routes 24, 192, 168, 1, 192, 168, 0, 4;
option ms-classless-static-routes code 249 = array of integer 8;
option ms-classless-static-routes 24, 192, 168, 1, 192, 168, 0, 4;

Это распределяет запись маршрута для сети 192.168.1.0/24 с использованием шлюза 192.168.0.4.

Значение байтов (в скобках значение из приведенного выше примера):

WW, D1, D2, D3, R1, R2, R3, R4
WW      = destination network mask width (24)
D1..D3  = destination network address (192.168.1.*)
R1..R4  = router address (192.168.0.4)

Примечание. Количество D1..DNбайтов зависит от маски сети. См. RFC3442 для деталей.

blerontin
источник
2
сбит с толку - уверен, что OP указывает dnsmasq в качестве сервера
nhed
1
довольно подробное объяснение того, как это работает: serverfault.com/a/575936/155358
Бенедикт