dnsmasq выдаёт IP в статическом диапазоне

У меня есть следующее в моем dnsmasq.conf:

dhcp-range=set:red,10.1.1.2,10.1.1.69,72h,static
dhcp-range=set:blue,10.1.1.70,10.1.1.100,72h,static
dhcp-range=set:white,10.1.1.101,10.1.1.200,12h
dhcp-range=10.1.1.201,10.1.1.250,12h

Я бы подумал, что первые два диапазона будут недоступны для всех, кто не находится в файле hosts, то есть зарезервирован для статического IP-резервирования.

Однако, когда я добавляю случайное устройство в сеть, он, кажется, назначает IP в красном диапазоне, например, даже если для него нет статического резервирования IP. Я ожидал, что IP будет назначен в диапазоне от 10.1.1.101 до 10.1.1.250.

Эта функция работает не так, как я ожидаю?

5
задан 1 June 2015 в 03:57

3 ответа

Старое сообщение, но я дам этому движение....

Это вызвано тем, что все диапазоны имеют ту же подсеть..

, Если бы eth0 был 10.1.1.1 затем, он обеспечил бы адреса в 10.1.1.2 к 10.1.1.254, который вошел через тот интерфейс. Поэтому все новые машины получают адреса в том ниже (красном) диапазоне.

, Но если у Вас был второй физический интерфейс (eth1/wlan0 на 10.1.2.1) затем все запросы, входящие через это; был бы дан адреса в 10.1.2.x диапазон, , если настроено тот путь . Это - единственный способ, о котором я знаю; из разделения трафика легко с брандмауэром управляет и т.д.

, поскольку все диапазоны имеют ту же подсеть; dnsmasq просто присваивает дюйм/с, которые являются в его собственной сети интерфейсов слушания. 10.1.1.x

В man dnsmasq о диапазонах DHCP это указывает If you have more than one network, you will need to repeat this for each network on which you want to supply DHCP service.. Это мне; средства, которые - другой физический интерфейс и именование их цветом то, как я отличаю сети, при помощи различных цветных кабелей. :)

Чтение больше в dnsmasq документацию, я думаю, что/etc/hosts используется в качестве части сервера имен и не присвоения DHCP, поскольку статический IP обычно требует, чтобы название машины или MAC-адрес функционировали правильно.

2
ответ дан 1 June 2015 в 13:57

Сообщение является еще более старым теперь, но я просто столкнулся с этим сам...

, Если начальный и конечный адрес используется:

dhcp-range=set:red,10.1.1.2,10.1.1.69,static

Адреса будут розданы, иногда даже на неправильной подсети.

Вместо этого попробуйте только сетевой адрес и маску подсети:

dhcp-range=set:red,10.1.1.0,static,255.255.255.0
0
ответ дан 1 June 2015 в 13:57

Нет необходимости явно определять статические диапазоны в вашем dnsmasq.conf, если они принадлежат к подсети, определенной в dhcp-range: просто определите статические аренды с помощью dhcp-host (например, dhcp-host=[MAC-адрес],[IP-адрес]. Определение статических диапазонов необходимо только в том случае, если необходимо назначить статические IP-адреса в подсети, где динамические IP-адреса также не назначаются.

С страницы man:

Адреса, выделенные следующим образом [т.е. с помощью dhcp-host], не ограничены для нахождения в диапазоне, заданном параметром -dhcp-range, но они должны находиться в той же подсети, что и некоторые допустимые dhcp-range. Для подсетей, которым не требуется пул динамически выделяемых адресов, используйте ключевое слово "static" в объявлении -dhcp-range.

Итак, чтобы назначить 10.1.1.70 в качестве статического IP-адреса машине с MAC-адресом 00:11:22:33:44:55 с 72-часовой арендой и пометьте его тегом blue, use:

dhcp-range=10.1.1.201,10.1.1.250,12h
dhcp-host=00:11:22:33:44:55,set:blue,10.1.1.70,72h
0
ответ дан 14 June 2020 в 17:48

Другие вопросы по тегам:

Похожие вопросы: