Существуют ли какие-либо DHCP-серверы Linux, которые будут прослушивать то, что Cisco называет «ненумерованным» интерфейсом, или то, что другие могут назвать интерфейсом «NBMA» (нешироковещательный).
У меня есть система Linux, которая подключается к ряду других с помощью туннелей GRE. Машины на другом конце отправляют на эту машину запросы DHCP, я могу увидеть их с помощью tcpdump. Однако ISC DHCP 3.0.3 отказывается слушать интерфейс, потому что он не является широковещательным.
Интерфейс, который я бы хотел, чтобы DHCP слушал:
tap2 Link encap:Ethernet HWaddr removed-for-privacy
inet6 addr: removed-for-privacy/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:518 errors:0 dropped:0 overruns:0 frame:0
TX packets:510 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:196242 (191.6 KiB) TX bytes:52425 (51.1 KiB)
Это старый вопрос, но:
Вам нужно скомпилировать dhcpd с USE_SOCKETS. Если вы этого не сделаете, он использует некоторый код pcap для приема пакетов, и этот код pcap имеет жестко запрограммированные предположения, что канальным уровнем является Ethernet, поэтому он не работает на туннельных интерфейсах.
Эээ, хорошо, но почему? Ваш DHCP-сервер отказывается слушать нешироковещательный интерфейс, потому что весь его смысл - отвечать на эти запросы на интерфейсе, который он слушает. Вот что такое протокол DHCP ... Способ локального получения информации о конфигурации IP в подсети. Вы бы не захотели слушать в одной подсети и транслировать в другой, потому что запрашивающий хост там не будет ...
Можете ли вы запустить ретранслятор DHCP на этом интерфейсе и на реальном сервере где-нибудь еще?