![DHCP服务器如何根据客户端的物理顺序对MAC地址进行排序?](https://linux22.com/image/157097/DHCP%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%A6%82%E4%BD%95%E6%A0%B9%E6%8D%AE%E5%AE%A2%E6%88%B7%E7%AB%AF%E7%9A%84%E7%89%A9%E7%90%86%E9%A1%BA%E5%BA%8F%E5%AF%B9MAC%E5%9C%B0%E5%9D%80%E8%BF%9B%E8%A1%8C%E6%8E%92%E5%BA%8F%EF%BC%9F%20.png)
有数百台服务器,其中一台充当 DHCP 服务器。
DHCP 服务器的主机文件指定每个客户端服务器的 IP 地址和主机名。但客户端服务器的MAC地址未知。
所有客户端服务器都是无盘系统并由 pxe 启动。启动后,自动收集客户端服务器的MAC地址和通过DHCP获取的IP地址并发送给DHCP服务器。
当我们第一次启动所有客户端服务器时,DHCP服务器如何根据客户端的物理顺序对MAC地址进行排序?
这个问题我需要再详细说明一下。
事实上,我无法清楚地描述我的问题。
在一个机柜中,服务器的名称从上到下依次是node0、node1、node2……。当所有节点第一次通过PXE启动时(所有节点一次启动,无论顺序),使用DHCP获取以太网IP地址。然后,这些节点自动收集 MAC 地址并将其发送到服务器。此前,服务器并不知道这些节点的MAC地址信息。
当我们获取到客户端发来的MAC信息时,可能与服务器名称(node0、node1...)不对应,需要手动修改dhcpd.conf文件,将IP地址与服务器名称(node0、node1...)进行绑定...)下次启动时。
我希望它自动完成,但我不知道该怎么做。
答案1
在一个机柜中,服务器的名称从上到下依次是node0、node1、node2……。当所有节点第一次通过PXE启动时(所有节点一次启动,无论顺序),使用DHCP获取以太网IP地址。
实际上,PXE涉及到DHCP。所以发生的情况是每个节点已经有一个 MAC 地址(但是这个 MAC 地址是被分配的)。然后,该节点使用该 MAC 地址来广播 DHCP 请求。 DHCP 服务器可以识别 MAC 地址,并发回 TFTP 服务器地址以允许节点获取 PXE 映像以及节点的 IP 地址。
然后,这些节点自动收集 MAC 地址并将其发送到服务器。此前,服务器并不知道这些节点的MAC地址信息。
我不确定你说的是哪个服务器。也许您有一个额外的服务器来收集 MAC 地址,并且他们在启动过程中有一个自定义步骤,将这些 MAC 地址发送到该服务器?
无论如何,DHCP服务器从 DHCP 广播请求中获取 MAC 地址。有时候是这样的前他们获得 PXE 映像。如果 DHCP 服务器想要对 MAC 地址执行任何特殊操作,例如选择正确的 PXE 映像,则此 MAC 地址必须在 DHCP 配置文件中提及。
如果问题是“如何找到给定物理节点的 MAC 地址?”,您要么需要查看该节点的配置(有时 MAC 地址是 Uboot 等的参数),要么需要断开连接从 LAN 中获取该节点,将其连接到其他计算机,启动它,并在 DHCP 广播请求中记录 MAC 地址。