Centos7 dhcp配置文件参数全解析需要了解以下几个方面:
- DHCP服务器的安装和启动
- DHCP服务器的配置文件(/etc/dhcp/dhcpd.conf)的结构和语法
- DHCP服务器的配置文件中的各种参数的含义和用法
- DHCP服务器的配置文件中的不同范围(scope)和子网(subnet)的设置方法
- DHCP服务器的配置文件中的一些高级功能,如动态DNS更新,租约时间,预留地址等
subnet192.168.10.0 netmask 255.255.255.0 { #声明要分配的网段和子网掩码
range 192.168.10.3 192.168.10.254; #声明可用IP地址池
option domain-name "yichen.com"; #设置DNS域
option domain-name-servers 8.8.8.8 ; #设置DNS服务器地址
option routers 192.168.10.2; #默认网关的地址
option broadcast-address 192.168.10.255; #广播地址(可不写)
default-lease-time 600; #默认租约(s)
max-lease-time 7200; #最大租约(s)
}
好的,我可以告诉你如何释放或续约DHCP分配的IP地址。如果你想释放DHCP分配的IP地址,也就是告诉DHCP服务器你不再使用这个IP地址,你可以在终端中输入以下命令:
dhclient -r eth0
这个命令会向DHCP服务器发送DHCP Release包,然后清除网卡的IP地址和其他网络配置信息,并终止dhclient进程。你可以在终端中看到类似以下的输出:
Internet Systems Consortium DHCP Client 4.3.5
Listening on LPF/eth0/08:00:27:6f:6c:2a
Sending on LPF/eth0/08:00:27:6f:6c:2a
Sending on Socket/fallback
DHCPRELEASE on eth0 to 192.168.1.1 port 67 (xid=0x7b8f9e7c)
如果你想续约DHCP分配的IP地址,也就是向DHCP服务器请求延长租约时间,你可以在终端中输入以下命令:
dhclient -n eth0
这个命令会向DHCP服务器发送DHCP Request包,然后等待DHCP ACK包或者DHCP NAK包的回应。如果收到DHCP ACK包,dhclient进程会更新网卡的IP地址和其他网络配置信息,并输出相关的信息到终端中。如果收到DHCP NAK包,dhclient进程会重新发送DHCP Discover包,重新开始获取地址的过程。你可以在终端中看到类似以下的输出:
Internet Systems Consortium DHCP Client 4.3.5
Listening on LPF/eth0/08:00:27:6f:6c:2a
Sending on LPF/eth0/08:00:27:6f:6c:2a
Sending on Socket/fallback
DHCPREQUEST of 192.168.1.102 on eth0 to 255.255.255.255 port 67 (xid=0x7b8f9e7c)
DHCPACK of 192.168.1.102 from 192.168.1.1
bound to 192.168.1.102 -- renewal in 375 seconds.
如果你想给某个主机固定IP,你可以在DHCP服务器的配置文件中定义一个主机范围(host scope),并指定该主机的MAC地址和固定地址参数。例如,如果你想给一个主机名为printer,MAC地址为00:11:22:33:44:55的打印机分配一个固定的IP地址为192.168.1.100,你可以在DHCP服务器的配置文件中添加以下内容:
host printer {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.100;
}
这里要注意需要有一个地址池是独立出来的,不能全部写在shared-network中
不然可能会导致得到的ip与设置的网段不同
subnet 192.168.20.0 netmask 255.255.255.0{
range 192.168.20.100 192.168.20.120;
option routers 192.168.20.2;
option domain-name-servers 192.168.20.20;
}
shared-network super-scope {
subnet 192.168.21.0 netmask 255.255.255.0 {
range 192.168.21.100 192.168.21.200;
option routers 192.168.21.1;
option domain-name-servers 8.8.8.8;
}
subnet 192.168.22.0 netmask 255.255.255.0 {
range 192.168.22.100 192.168.22.200;
option routers 192.168.22.1;
option domain-name-servers 8.8.8.8;
}
}
Q:dhcp中继?也就是当某个子网需要动态地址的时候会去寻找指定的dhcp服务器?
A:DHCP中继就是当某个子网的客户端需要动态地址的时候,会通过路由器上的DHCP中继代理来寻找指定的DHCP服务器,然后从DHCP服务器获取IP地址和其他网络参数。
假设您有一个局域网,其中有两个子网,分别是192.168.1.0/24和192.168.2.0/24,每个子网有一个路由器接口连接到主干网。您想为这两个子网提供DHCP服务,您有以下三台机: 一台DHCP服务器,位于192.168.1.0/24网段,IP地址为192.168.1.10,可以为两个子网分配IP地址。 一台中继代理,位于主干网,有两个网卡,分别连接到两个子网,IP地址分别为192.168.1.1和192.168.2.1,可以转发DHCP报文。 一台客户机,位于192.168.2.0/24网段,需要从DHCP服务器获取IP地址。 您需要进行以下配置: 在DHCP服务器上,创建两个作用域,分别为192.168.1.0/24和192.168.2.0/24,指定可分配的IP地址范围和其他网络参数。 在中继代理上,开启DHCP中继功能,并指定DHCP服务器的IP地址为192.168.1.10。 在客户机上,将网卡的IP地址获取方式设置为自动获取。
客户机
服务机
路由器
配置服务机服务
首先配置路由
vim /etc/sysctl.conf
添加 net_ipv4.ip_forward=1
然后sysctl -p加载后就会自动添加路由
然后检查测试机上的路由别让测试机上的路由干扰配置
在路由主机上dhcrelay -i ens33 192.168.20.1 -d 监听抓发的网口和转发的地址和调试模式-d