[rhel6.5]DHCP分配IP地址以及保留地址

xiaoxiao2021-02-28  84

DHCP:表示Dynamic Host Configuration Protocol,其前身是bootp,DHCP基于bootp来说引入了租约的概念,当使用IP的主机关机之后,那么IP地址就会被释放,并且在租约的概念上面还引入了续租的概念实现了地址的动态管理;租约的续租是在使用时间接近于一半的时间时进行续租,DHCP的报文是通过广播的方式进行的,由于路由器不转发广播报文,所以DHCP服务器应该在局域网里面进行设置;DHCP协议的流程 client ------> DHCP服务器 DHCPDISCOVR(UDP,广播) <---------- DHCPOFFER DHCPREQUEST -----------> <----------- DHCPACK 上面的报文都是广播的 续租的过程是单播的 DHCPREQUEST -----------> <----------- DHCPACK 前面的虽然说路由器不进行广播报文,所以DHCP服务器不能够提供跨物理网络的地址分配请求,但是可以将路由器配置称为DHCP的中继器,单播转发跨网络的DHCP报文,在这个过程中: 1.DHCP和路由器的通信是单播的,请求主机和路由器的通信是广播的;2.DHCP提供的地址池,必须和IP在统一网段中;3.一个DHCP主机可以包含多地址池,在DHCP服务器转发非同一个网络的请求时,会通过路由器的某个接口的MAC地址进行转发,DHCP服务器可以根据MAC的信息选择一个合适的网段的IP进行分配;对于DHCP服务器来说,大多数情况下,分配的地址对于某个特定的服务器来说是特定的,这些地址成为保留地址.保留地址不使用地址池的地址,通过MAC地址来进行识别;rhel6系列上面提供了DHCP RELAY功能,这个功能和DHCP服务器不能够同时使用

规划

子网的范围是172.25.23.10–>172.25.23.100/24 默认的网关是:172.25.23.250 广播地址是:172.25.23.255 规划保留地址是:172.25.23.222

配置DHCP服务器

先说明以下这些配置文件都是什么意思 /var/lib/dhcpd/dhcpd.leases:表示租约,用于记录哪个地址给哪个主机使用;/etc/dhcp/dhcpd.conf:DHCP的主配置文件;/usr/sbin/dhcpd:用于提供主服务的程序;/usr/sbin/dhcrelay:表示DHCP的中继功能,不能够和DHCP同时使用;/etc/dhcp/dhcpd.conf:DHCP的主配置文件;

主配置文件/etc/dhcp/dhcpd.conf里面的语法说明:

#ddns-update-style none:动态DNS的更新方式, DNS和主机名称的对应关系随着DHCP的分配而改变,这个用于DHCP通知DNS进行对应关系的更改;subnet:表示子网;routers:表示默认的网关的;domain-name-servers:表示DNS服务器的地址;range:表示地址池范围;default-lease-time:表示默认的租约时间;max-lease-time:表示最大租约时间;

用于定义保留地址的说明

host passacaglia { hardware ethernet 0:0:c0:5d:bd:95; filename "vmunix.passacaglia"; server-name "toccata.fugue.com"; } DHCP服务器的配置DHCP服务器的安装,这里使用rpm软件包进行安装 [root@server23 ~]# yum install dhcp -y 对于配置文件,默认提供的是一个空的配置文件,需要从特定位置进行复制 [root@server23 ~]# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf cp: overwrite `/etc/dhcp/dhcpd.conf'? y 接下来需要按照规划来更改配置文件 subnet 172.25.23.0 netmask 255.255.255.0 { range 172.25.23.10 172.25.23.100; option routers 172.25.23.250; option broadcast-address 172.25.23.255; default-lease-time 600; max-lease-time 7200; } 上面的配置信息是没有包含保留地址的配置的,接下来启动DHCPD服务 [root@server23 ~]# service dhcpd start Starting dhcpd: [ OK ] 查看服务监听的端口 [root@server23 ~]# netstat -anulp Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp 0 0 0.0.0.0:67 0.0.0.0:* 2767/dhcpd 这里需要额外说明的是DHCPD服务器监听的是UDP/67端口,而client监听的是UDP/68端口;接下来需要另一台虚拟机来检测服务的配置是否正常首先需要更改的是IP的获得方式,一般情况下,默认是DHCP,如果以前修改为static,现在改为DHCP;然后从新启动网络服务

* 接下来查看DHCP client是否打开UDP/68端口 * 也可以通过租约文件来查看IP地址的分配情况

[root@server23 ~]# cat /var/lib/dhcpd/dhcpd.leases lease 172.25.23.10 { starts 1 2018/04/09 11:46:09; ends 1 2018/04/09 11:56:09; cltt 1 2018/04/09 11:46:09; binding state active; next binding state free; hardware ethernet 52:54:00:e7:89:57; } 如果分配出去额地址很多,那么这个租约文件里面的内容会十分多;接下来更改配置文件,使分配到172.25.23.10的主机重新分配IP地址,得到172.25.23.222这个地址 更改配置文件如下: subnet 172.25.23.0 netmask 255.255.255.0 { range 172.25.23.10 172.25.23.100; option routers 172.25.23.250; option broadcast-address 172.25.23.255; default-lease-time 600; max-lease-time 7200; host newhost { hardware ethernet 52:54:00:e7:89:57; //这个地址需要和你需要保留的地址一致; fixed-address 172.25.23.222; } } 接下来重新启动服务 [root@server23 ~]# service dhcpd restart Starting dhcpd: [ OK ] 接下来检测是否分配到符合期望的IP地址
转载请注明原文地址: https://www.6miu.com/read-2631421.html

最新回复(0)