DHCP 中继 NIC:
网卡 1:连接到 DHCP 服务器(由 172.20.0.1 分配):
enp1s0 Link encap:Ethernet HWaddr 00:e0:4c:68:39:0d
inet addr:172.20.0.103 Bcast:172.20.0.255 Mask:255.255.255.0
inet6 addr: fe80::2e0:4cff:fe68:390d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:541 errors:0 dropped:0 overruns:0 frame:0
TX packets:359 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:55554 (55.5 KB) TX bytes:73663 (73.6 KB)
网卡 2:DHCP 中继网卡
wlp3s0 Link encap:Ethernet HWaddr f8:16:54:8b:8b:f7
inet addr:172.20.0.210 Bcast:172.20.0.255 Mask:255.255.255.0
inet6 addr: fe80::fa16:54ff:fe8b:8bf7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:114 errors:0 dropped:0 overruns:0 frame:0
TX packets:123 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:21968 (21.9 KB) TX bytes:25195 (25.1 KB)
当客户端连接到 wlp3s0 并尝试获取 IP 地址时,中继会记录以下内容:
Apr 01 11:41:11 linroute sh[1318]: Forwarded BOOTREQUEST for d0:04:01:30:96:8d to 172.20.0.1
Apr 01 11:41:11 linroute sh[1318]: Forwarded BOOTREQUEST for d0:04:01:30:96:8d to 172.20.0.1
DHCP 服务器(172.20.0.1)同时记录此信息:
Apr 01 11:41:11 linux-router dhcpd[1296]: DHCPDISCOVER from d0:04:01:30:96:8d via 172.20.0.210
Apr 01 11:41:11 linux-router dhcpd[1296]: DHCPOFFER on 172.20.0.106 to d0:04:01:30:96:8d via 172.20.0.210
Apr 01 11:41:11 linux-router dhcpd[1296]: DHCPDISCOVER from d0:04:01:30:96:8d via 172.20.0.210
Apr 01 11:41:11 linux-router dhcpd[1296]: DHCPOFFER on 172.20.0.106 to d0:04:01:30:96:8d via 172.20.0.210
这告诉我 DHCP 服务器正在运行(确实如此:与其直接连接的所有设备都运行良好)。但 DHCP 中继似乎没有将响应转发回寻求地址的客户端。尽管 DHCP 服务器似乎很乐意为他们提供服务,但他们从未获得分配的 IP 地址。
中继配置:
SERVERS="172.20.0.1"
INTERFACES="wlp3s0"
中继服务器没有设置 iptables NAT。一切都允许(输入和转发)
答案1
中继配置中的接口也需要包含“源”适配器:
接口=“enp1s0 wlp3s0”
虽然只需要为 wlp3s0 接口上的客户端分配 IP 地址,但显然这还不够。