我对 Linux 上的 dhcp 服务器有疑问
我的服务器基本上有 2 个接口卡
- eth0:192.168.2.201/255.255.255.0
- eth1:192.168.4.1/255.255.255.0
- eth1:0:10.1.1.0/24
在此服务器上我正在运行 dhcpd 守护进程来在 192.168.4.0/24 子网中发放租约。
- eth0:连接到我的家庭路由器以访问互联网
- eth1:连接到端口 1 上的思科交换机(仅具有默认 vlan),IP 地址为 10.1.1.10 - 此接口用于通过 telnet 与交换机进行通信以进行管理
现在,当我将另一台计算机插入交换机上的任何端口时,我会看到以下内容
- 计算机获得 169.254 自我分配的 ip
- 我看到 DHCP 服务器确实发放了租约(/var/lib/dhcpd/dhcpd.leases 文件)
- 在以太网状态下客户端计算机我看到已发送的字节数,但收到的字节数为 0
现在我的问题是
dhcpd 守护进程绑定到 Linux 服务器上的哪个接口?由于我看到租约已分配,因此它显然正在获取 dhcp 请求,但它发出的租约尚未到达客户端。
任何帮助将非常感激 !
谢谢你,ankit
答案1
您不能使用 10.1.1.0 作为 NIC 的 IP,这是一个网络 ID。DHCPd 应该绑定到它具有子网定义的所有接口。因此,如果它只有 192.168.4/24 子网的定义,那么它应该只绑定到 eth1。DHCPd 启动时的输出是什么?它应该提到它正在监听哪些接口。
答案2
没有说明使用哪个 DHCP 服务器。在 的情况下isc-dhcp-server
,接口关联是根据其dhcpd.conf
文件中的地址范围配置自动完成的,即,如果接口 IP 地址属于某些已配置的 DHCP 范围给出地址,则服务器将绑定到该地址。如果提到了包含接口 IP 的范围,但没有可用的地址,或者地址范围配置中不包含该范围,则服务器不会绑定到该范围。