DHCPDISCOVER/DHCPOFFER,但没有 DHCPACK

DHCPDISCOVER/DHCPOFFER,但没有 DHCPACK

我有一台远程客户端计算机正在发送 DHCPDISCOVER。服务器以 DHCPOFFER 做出响应,但没有 DHCPACK。

这大约每 30 秒从同一主机重复一次。我可以远程执行某些操作吗?还是需要找人重新启动它?它在数据中心,所以我可能必须去那里执行此操作!


感谢您的建议。我已经重启了所有机器,但问题仍然存在。我认为我的配置有问题。这看起来正确吗?

#
# /etc/dhcpd.conf for primary DHCP server
#

authoritative;
ddns-update-style none;
deny duplicates;
default-lease-time 600;
max-lease-time 3600;

# Our fixed hosts
host host2  { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address x.x.x.202; }
host host3  { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address x.x.x.203; }
host host4  { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address x.x.x.204; }
host host5  { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address x.x.x.205; }

subnet x.x.x.128 netmask 255.255.255.128 {
  option subnet-mask 255.255.255.128;
  option broadcast-address x.x.x.255;
  option routers x.x.x.129;
  option domain-name-servers 8.8.8.8, 8.8.4.4;

  # Testing pool.
  pool {
    max-lease-time 300; # 5 minutes
    range x.x.x.250 x.x.x.254;
    deny known-clients;
  }

  # Our hosts - I didn't have this pool declaration before, do I need it if I want
  # the hosts to be running dhcp but always get the same address?
  pool {
    max-lease-time 1800;
    range x.x.x.200 x.x.x.220;
    deny unknown-clients;
  }
}

答案1

内容如下:

CLIENT -> DHCPDISCOVER
SERVER -> DHCPOFFER
CLIENT -> DHCPREQUEST
SERVER -> DHCPACK

您的描述中缺少 DHCPACK 之前的 DHCPREQUEST。

如果客户端与 DHCP 服务器位于不同的子网,则 DHCPOFFER 会通过 UDP 端口 67 单播发送到 DHCP 中继。DHCP 中继代理会通过 UDP 端口 68 将 DHCPOFFER 广播到子网。

我会调查与 DHCPOFFER 相关的连接问题。跟踪它,看看它是否能找到返回客户端的路径,如果能,为什么客户端没有 DHCPREQUEST:ing 地址。

常见的 dhcp 中继代理是 cisco 交换机中特定接口下的“ip helper-address”选项。

答案2

假设你的 DHCP 服务器和 DHCP 客户端都连接到同一个以太网段,并且假设这个以太网段跨越多个 L2 交换机,这些交换机与不同的“中继”互连(802.1q) 链接,当至少一个中继链接的配置不匹配时,我遇到过类似的问题。

详细地说,DHCP-DISCOVER / DHCP-OFFER的永无止境的循环(从DHCP服务器端看到),让我认为DHCP客户端是不是收到 DHCP-OFFER 后,继续重新发出 DHCP-DISCOVER 消息。此 DHCP-DISCOVER(从 DHCP 客户端看来)已从 DHCP-SERVER 正确接收。

考虑以下情况: 在此处输入图片描述 两个中继端口的错误/不匹配的设置意味着:

  • SW A 沿中继发送到 SW B(或者从 DHCP 服务器到 DHCP 客户端)的 VLAN X 流量是 UNTAGGED;
  • SW B 沿中继发送到 SW A(或者从 DHCP 客户端到 DHCP 服务器)的 VLAN X 流量被标记。
  • 由于 SW B 的中继端口的本机 VLAN 设置,DHCP 客户端将不是从 DHCP 服务器接收数据包。

这很容易排除故障,如果您“控制”DHCP客户端主机。在这种情况下,假设eth0是 DHCP 客户端主机使用的网络接口,简单来说:

tcpdump -n -i eth0 ether-host <dhcp-server-mac-address>

将会呈现如果客户端是否从 DHCP-SERVER 接收 DHCP-OFFER。

如果你能不是控制客户端。

PS:显然,上述问题以及其他相关争论可以通过使用适当的技术轻松避免(例如地理空间路径规划虚拟专用网络或其他非严格手动配置方法)但是......这超出了这个答案的范围

答案3

遇到了同样的问题。没有看到任何 DHCPACK。这里的问题是:

磁盘已满

dhcpd 无法写入/var/lib/dhcp/dhcpd.leases

答案4

就我的情况而言,我的 AP 控制器已DHCP Protection启用。它确保没有 AP 转发任何不是从指定 IP/MAC 发起的 DHCP 回复。

我花了半天时间才找到这个功能并更新了设置。另一个 RTFM 综合症症状。

相关内容