Перейти к содержимому
Калькуляторы

dnsmasq и выдача адресов через dhcp-relay agent как выдавать адреса с secondary диапазона на интерфейсе ?

Схема сети ip unnumbered. Если на loopback одна подсеть, то вроде всё работает, но допустим, что настало время добавить ещё одну подсеть в связи с исчерпанием первой. Добавляю как secondary, добавляю range в конфиг dnsmasq, запросы всёравно приходят от основного адреса loopback и dnsmasq не выдаёт ничего и ругается "no address range available for DHCP request via 192.168.20.1".

 

Пока конечно это стенд, собранный на столе. В качестве эксперимента я закомментировал в конфиге dnsmasq основной диапазон, т.к. не знаю, как сэмулировать переполнение этого основного диапазона.

 

Т.е. хотим, чтобы при исчерпании адресов из подсети 192.168.20.0/24 адреса начали выдаваться из следующей на интерфейсе 192.168.21.0/24 подсети. Ну и если что, то потом добавить другие подсети и необязательно подряд.

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

 

!

interface Loopback20

ip address 192.168.21.1 255.255.255.0 secondary

ip address 192.168.20.1 255.255.255.0

no ip redirects

end

 

# dnsmasq.conf

interface=eth0.10

no-ping

port=0

#log-dhcp

log-async=20

log-facility=/tmp/dnsmasq.log

dhcp-hostsfile=/etc/dnsmasq/dnsmasq.hosts

dhcp-leasefile = /tmp/dnsmasq.lease

 

#dhcp-range=set:r20,192.168.20.2,192.168.20.253,255.255.255.0,12m

dhcp-range=set:r21,192.168.21.2,192.168.21.253,255.255.255.0,12m

 

#dhcp-option = tag:r20, option:router, 192.168.20.1

dhcp-option = tag:r21, option:router, 192.168.21.1

 

P.S. Опция "ip dhcp smart-relay" проблему как бы решает, но желаемого эффекта не даёт. Т.е. включенным клиентам надо давать адреса из одних сетей, отключенным за неуплату - из других, а смарт-релей продолжает "помнить" Gateway-IP успешно полученной лизы и потом всё время её шлёт. Т.е. смарт-релей так и работает, перебирает секондари адреса для пересылки dhcp запроса, а потом помнит. Хотелось бы решить проблему чисто на dnsmasq стороне.

Изменено пользователем wtyd

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1) а сеть \23 сделать не вариант?

2) что мешает вешать на разные лупбеки?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1) а сеть \23 сделать не вариант?

2) что мешает вешать на разные лупбеки?

 

1) В общем случае на lo будет несколько блоков С реальных адресов для включенных клиентов, они вовсе не обязательно подряд будут идти. Так же там будет несколько серых "цешек" для отключенных зя неуплату клиентов. Ещё там будет серая цешка для незарегистрированных абонентов. Всем желательно быстро выдавать адрес. прям вот очень крайне желательно быстро, а то в случае со смарт-релеем ждать приходится, пока клиент несколько dhcp запросов пошлёт и цыска разродится на изменение атрибута шлюза -- чем больше блоков адресов на lo, тем медленнее этот смарт-релей будет отрабатывать.

 

2) Потому что хотим, чтобы отключенные и включенные абоненты были на одном lo :-). Чтобы вланы им не перекидывать, чтобы свичи доступа вообще не перенастраивать. Типа изоляция портов на доступе, влан на гирлянду свичей (на дом или на сколько-то последовательно включенных свичей) и такие вланы в ip unnumbered на один lo. На доступе только IPSG требуется.

 

... чё-то я размечтался похоже опять ... опять из-за какой-нибудь ерунды работать не будет ;-).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2) Потому что хотим, чтобы отключенные и включенные абоненты были на одном lo :-). Чтобы вланы им не перекидывать, чтобы свичи доступа вообще не перенастраивать. Типа изоляция портов на доступе, влан на гирлянду свичей (на дом или на сколько-то последовательно включенных свичей) и такие вланы в ip unnumbered на один lo. На доступе только IPSG требуется.

 

я абсолютно не вижу принципиальной разницы между

int vlan 100
ip unnumbered loopback2

и

int vlan 100
ip unnumbered loopback3

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

при этом не меняется влан, а меняется родительский намберед интерфейс.

зачем смарт релей? в чем преимущество? обычного релея недостаточно?

Изменено пользователем GrandPr1de

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2) Потому что хотим, чтобы отключенные и включенные абоненты были на одном lo :-). Чтобы вланы им не перекидывать, чтобы свичи доступа вообще не перенастраивать. Типа изоляция портов на доступе, влан на гирлянду свичей (на дом или на сколько-то последовательно включенных свичей) и такие вланы в ip unnumbered на один lo. На доступе только IPSG требуется.

 

я абсолютно не вижу принципиальной разницы между

int vlan 100
ip unnumbered loopback2

и

int vlan 100
ip unnumbered loopback3

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

при этом не меняется влан, а меняется родительский намберед интерфейс.

зачем смарт релей? в чем преимущество? обычного релея недостаточно?

 

В схеме vlan-per-user -- да, но я рассматриваю другую схему, где в одном влане много юзеров - нельзя им всем менять лупбак.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

mac-vlan в помощь :)

 

Да не, всё получилось. Пришлось взять freeradius и запилить ему дверь dhcp :-). Выдаёт разную лизу и разные ойпи в зависимости отимени пула (unregistred, disabled, tarif1, tarif2 ...), старается выдавать те адреса, которые этому маку уже когда-то были выданы, не выпендривается в отличии от некоторых, т.е. всех остальных dhcp серверов, при наличии лизы. Пока что не совсем красиво получилось с его внутренней лизой, которую он в пул пишет -- хорошо бы её тоже менять, но с этим я может быть разберусь завтра ... ну и ещё на случай "кому-то выдавать статику" тоже надо подумать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поищите на наге здесь перловый DHCP. Он как и радиус работает с БД, тоже должно быть довольно удобно.

А у себя использую isc-dhcp.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.