fox_m Posted July 1, 2024 Posted July 1, 2024 Всем привет. DHCP сервер (Centos 7) имеет один интерфейс. Подскажите, как его заставить раздавать ip адреса для других подсетей, с которыми у него нет L2 подключений? option domain-name "example.ru"; option domain-name-servers 77.88.8.8; option domain-name-servers 77.88.8.1; option routers 10.100.45.1; ddns-update-style none; default-lease-time 14400; subnet 10.100.45.0 netmask 255.255.255.0 { #authoritative; #range 10.100.45.10 10.100.45.29; default-lease-time 14400; max-lease-time 172800; } ens192: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.100.31.28 netmask 255.255.255.0 broadcast 10.100.31.255 при таком раскладе он ругается: Jul 1 13:04:59 nat02 dhcpd: No subnet declaration for ens192 (10.100.31.28). Jul 1 13:04:59 nat02 dhcpd: ** Ignoring requests on ens192. If this is not what Jul 1 13:04:59 nat02 dhcpd: you want, please write a subnet declaration Jul 1 13:04:59 nat02 dhcpd: in your dhcpd.conf file for the network segment Jul 1 13:04:59 nat02 dhcpd: to which interface ens192 is attached. ** что в общем логично, поскольку не понимает, какой интерфейс ему слушать. Вставить ник Quote
sol Posted July 1, 2024 Posted July 1, 2024 Ту сеть, к которой у него есть физическое подключение необходимо или описать (выдавать в ней при этом адреса не обязательно), или явно указать в параметрах запуска на каком интерфейсе слушать. Ну и для всех остальных сетей, для которых серверу релеятся запросы, надо описать subnet с нужными параметрами. Вставить ник Quote
fox_m Posted July 1, 2024 Author Posted July 1, 2024 Говорят, что через shared-network это делается. И да, походу нужно описать сеть, в которой находится интерфейс сервера shared-network my-net { option domain-name "example.ru"; option domain-name-servers 77.88.8.8; option domain-name-servers 77.88.8.1; subnet 10.100.31.0 netmask 255.255.255.0 { range 10.100.31.240 10.100.31.54; option routers 10.100.31.28; default-lease-time 14400; max-lease-time 172800; } subnet 10.100.4.50.0 netmask 255.255.255.0 { range 10.100.4.50.16 10.100.4.50.251; option routers 10.100.4.50.254; default-lease-time 14400; max-lease-time 172800; } Вставить ник Quote
sol Posted July 1, 2024 Posted July 1, 2024 shared-network тут вообще не при делах. Это когда у вас разные подсети в одном броадкаст сегменте. Вставить ник Quote
FiN Posted July 1, 2024 Posted July 1, 2024 2 часа назад, fox_m сказал: что в общем логично, поскольку не понимает, какой интерфейс ему слушать. dhcpd слушает на всех на всех интерфейсах, ругается он что есть интерфейс которого нет в конфиге и он будет игнорить запросы с такой сеткой, что логично потому что такой сетки нет в конфиге. Вставить ник Quote
sol Posted July 1, 2024 Posted July 1, 2024 dhcpd по умолчанию слушает на всех интерфейсах. Его можно попросить так не делать, указав в командной строке после всех ключей список интерфейсов, которые ему надо слушать. dhcpd не будет игнорить запросы с неописанных интерфейсов. Он будет не запускаться с описанной выше руганью. Вставить ник Quote
naves Posted July 1, 2024 Posted July 1, 2024 (edited) гуглите про dhcp-relay в конфиге сервера описываете все сети, он сам разберется откуда пришел запрос. subnet 10.133.5.0 netmask 255.255.255.0 { range 10.133.5.101 10.133.5.199; option broadcast-address 10.133.5.255; option routers 10.133.5.1; } subnet 10.133.6.0 netmask 255.255.255.0 { range 10.133.6.101 10.133.6.199; option broadcast-address 10.133.6.255; option routers 10.133.6.1; } Если вы не хотите, чтобы он раздавал в подключенной сети, то оставьте секцию этой сети пустой. Edited July 1, 2024 by naves Вставить ник Quote
sol Posted July 1, 2024 Posted July 1, 2024 Не "сам", а проверит поле giaddr и отдаст ту подсеть, которой принадлежит адрес из этого поля. Вставить ник Quote
FiN Posted July 2, 2024 Posted July 2, 2024 13 часов назад, sol сказал: dhcpd по умолчанию слушает на всех интерфейсах. Его можно попросить так не делать, указав в командной строке после всех ключей список интерфейсов, которые ему надо слушать. dhcpd не будет игнорить запросы с неописанных интерфейсов. Он будет не запускаться с описанной выше руганью. ну значит я что то делаю не так, вот специально рестартанул Sending on BPF/vlan2100.2/00:07:e9:09:cc:11/10.134.64.36/30 Listening on BPF/vlan2100.1/00:07:e9:09:cc:11/10.134.64.4/30 Sending on BPF/vlan2100.1/00:07:e9:09:cc:11/10.134.64.4/30 No subnet declaration for vlan4004 (10.55.0.243). ** Ignoring requests on vlan4004. If this is not what you want, please write a subnet declaration in your dhcpd.conf file for the network segment to which interface vlan4004 is attached. ** Sending on Socket/fallback/fallback-net sockstat -4 | grep dhcpd root dhcpd 23527 5 udp4 *:67 *:* Вставить ник Quote
ixi Posted July 3, 2024 Posted July 3, 2024 (edited) (удалено) Edited July 3, 2024 by ixi Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.