我们有大量的静态IP地址或DHCP预留系统。 (除了保留的地址,我们不发送任何地址)。 一些服务器有多个Nics和ILO卡。 它烦得要扫描子网find免费的IP才能使用,特别是因为当我执行扫描时服务器可能会离线几分钟。 任何上市似乎很快被遗忘..
我想为我的子网中的每个IP地址创build一个预留。 这将使事情变得更容易pipe理/查看。 (之后,看看设置DHCP来执行DNS更新)
我已经运行了下面的命令:
sudo arp-scan -I eth0 10.10.10.0/24
并有一个所有的IP和Mac地址列表。 我即将获得所有主机/ DNS名称的列表。 (如果他们没有主机名,我会称之为ip-last八位组,因此对于10.10.10.100,“ip-100”)。 在Open Office Calcl中做一些工作很容易
有没有办法自动添加保留到dhcpd.conf文件?
因为有数百个(多个子网),我真的不想编辑这个。
有一个简单的方法,我可以调用一个命令创build一个预留,或从CSV导入列表? 我可以find许多方法来使用Net Sh,而不是使用基于CentOS的DHCP服务器。
我宁愿使用现有的方式,然后不得不写我自己的工具。
TL:DR – 我需要一种从命令行修改Cento的DHCPd的方法,就像在Windows中使用Netsh一样
我想你正在使用ISC DHCPD。 在这种情况下只需添加
host client_name { hardware ethernet 00:00:de:ad:be:ef; fixed-address 10.10.10.100; }
到/etc/dhcpd.conf中的范围。
当然,你不会“手工编辑”这个,而是创build一个简短的脚本,以便在每个范围内吐出必要的主机定义。 像这样的事情会做:
#!/bin/bash function hostdef { echo host $1 { echo -e \\thardware ethernet $2\; echo -e \\tfixed-address $3\; echo } echo } cat $1 | while read name mac ip; do hostdef $name $mac $ip; done
调用它与这样的内容的平面文件:
ip-100 00:00:de:ad:be:ef 10.10.10.100 ip-101 00:00:0b:ad:be:ef 10.10.10.101 ip-102 00:00:0b:ad:de:ed 10.10.10.102 ip-103 00:00:de:af:be:ef 10.10.10.103
会生成必要的行来粘贴到您的configuration文件中,或者将输出写入到一个单独的文件中,这个文件将包含在您的dhcpd.confconfiguration中,如下所示:
include "/etc/dhcpd-reservations-10-10-10.conf";
看看omshell它可以做你想做的。它允许你创build新的主机对象保留了一个特定的MAC地址的IP地址。
获取omapi在你的DHCP服务器上监听
创build一个密钥来确保访问
dnssec-keygen -a HMAC-MD5 -b 512 -n HOST omapi_key
生成类似的文件
Komapi_key.+157+24472.key Komapi_key.+157+24472.private
我使用私人文件中的Key:行的内容
fzg+LkcuXNcnFL1GqwuGv/OafeWEszUjn3dZV0FJkXyPyrOSjqNUKII0NSqEWN8W9/BEakGf9aa/GSV44C0zNQ==
编辑你的dhcp.conf文件并添加
omapi-port 9999; key omapi_key { algorithm HMAC-MD5; secret fzg+LkcuXNcnFL1GqwuGv/OafeWEszUjn3dZV0FJkXyPyrOSjqNUKII0NSqEWN8W9/BEakGf9aa/GSV44C0zNQ==;
}; omapi-key omapi_key;
使用上面生成的密钥。
启动dhcpd
/usr/sbin/dhcpd
现在你可以使用omshell来添加主机
/usr/bin/omshell > port 9999 > server 192.168.200.207 > key omapikey fzg+LkcuXNcnFL1GqwuGv/OafeWEszUjn3dZV0FJkXyPyrOSjqNUKII0NSqEWN8W9/BEakGf9aa/GSV44C0zNQ== > connect obj: <null> > new host obj: host
现在,您可以按照手册页中的说明添加主机条目。
如果您对OMshell做任何事情,请按照Iain的build议,记住这些变化是暂时的。 如果您通过OMAPI为给定的MAC地址创build新的租约对象,那么在下次重新启动服务器时,该对象将会丢失。
您需要同时执行这两个操作 – OMAPI立即将保留添加到正在运行的服务器,以及为后代更新dhcpd.conf的脚本。