Day-3 DHCP

DHCP部署

一、DHCP服务理论

动态主机配置协议(Dynamic Host Configuration Protocol,动态主机配置协议)

1. 其目的主要是为TCP/IP协议网络自动分配IP地址和相关参数(可分配的相关网络参数为主机的IP地址、子网掩码、广播地址、默认网关、DNS地址等)。
2. 工作在局域网的网络应用层协议,使用UDP协议工作。服务端监听67    客户端监听68
3. 主要作用:减轻管理员配置网络尤其是配置IP地址的压力,灵活、方便、快捷,也减轻了IP地址的使用浪费,避免IP地址冲突。

DHCP的分配方式

固定分配(不需要考虑租约问题)
手动分配
动态分配(使用完毕即释放)

DHCP四次交互原理

DHCP客户端通过和DHCP服务器的交互通讯以获得IP地址租约。为了从DHCP服务器获得一个IP地址,在标准情况下DHCP客户端和DHCP服务器之间会进行四次通讯。DHCP协议通讯使用端口UDP 67(服务器端)和UDP 68(客户端)进行通讯,UDP68端口用于客户端请求,UDP67用于服务器响应,并且大部分DHCP协议通讯使用广播进行。
在这里插入图片描述

第一阶段 DHCP DISCOVER
DHCP客户端(自动获取IP地址)进行初始化(DHCP客户端启动计算机、启用网络适配器或者连接到网络时);
DHCP客户端请求某个IP地址被DHCP服务器拒绝,通常发生在已获得租约的DHCP客户端连接到不同的网络中;
DHCP客户端释放已有租约并请求新的租约。
APIPA(自动专有IP地址,169.254.0.0/16),如果没有配置APIPA地址和备用IP地址,则DHCP客户端会每隔5分钟再发送DHCPDISCOVER广播消息,直到从DHCP服务器获取IP地址为止。
第二阶段 DHCP OFFER
所有接收到DHCP客户端发送的DHCPDISCOVER广播消息的DHCP服务器会检查自己的配置,
如果具有有效的DHCP作用域和富余的IP地址,则DHCP服务器发起DHCPOFFER广播消息来应答发起DHCPDISCOVER广播的DHCP客户端,此消息包含以下内容:
客户端MAC地址;
DHCP服务器提供的客户端IP地址;
DHCP服务器的IP地址;
DHCP服务器提供的客户端子网掩码;
其他作用域选项,例如DNS服务器、网关、WINS服务器等;租约期限等。
因此DHCP客户端没有IP地址,所以DHCP服务器同样使用广播进行通讯:
源IP地址为DHCP服务器的IP地址,而目的IP地址为255.255.255.255。同时,DHCP服务器为此客户保留它提供的IP地址,从而不会为其他DHCP客户分配此IP地址。
如果有多个DHCP服务器给予此DHCP客户端回复DHCPOFFER消息,则DHCP客户端接受它接收到的第一个DHCPOFFER消息中的IP地址。
第三阶段 DHCP REQUEST
当DHCP客户端接受DHCP服务器的租约时,它将发起DHCPREQUEST广播消息,告诉所有DHCP服务器自己已经做出选择,接受了某个DHCP服务器的租约。
在此DHCPREQUEST广播消息中包含了DHCP客户端的MAC地址、接受的租约中的IP地址、提供此租约的DHCP服务器地址等,
所有其他的DHCP服务器将收回它们为此DHCP客户端所保留的IP地址租约,以给其他DHCP客户端使用。
此时由于没有得到DHCP服务器最后确认,DHCP客户端仍然不能使用租约中提供的IP地址,所以在数据包中仍然使用0.0.0.0作为源IP地址,
广播地址255.255.255.255作为目的地址。
第四阶段 DHCP ACK
提供的租约被接受的DHCP服务器在接收到DHCP客户端发起的DHCPREQUEST广播消息后,
会发送DHCP  ACK广播消息进行最后的确认,在这个消息中同样包含了租约期限及其他TCP/IP选项信息。
如果没有其他主机使用此IP地址,则DHCP客户端的TCP/IP使用租约中提供的IP地址完成初始化,从而可以和其他网络中的主机进行通讯。
至于其他TCP/IP选项,如DNS服务器和WINS服务器等,本地手动配置将覆盖从DHCP服务器获得的值。

租约到期
DHCP客户机重新登录,直接发起一个之前使用的IP地址的request请求,如服务器已分配,重新执行上述四阶段。
DHCP服务器将IP地址提供给DHCP客户端时,会包含租约的有效期,默认租约期限为8天(691200秒),
客户机租用的IP地址达到50%,就要更新租约,若服务器未回复,最大可以使用期限的87.5%,到达后客户机进行IP租用寻址,进行四个阶段

二、DHCP服务器的搭建

1. 安装配置

yum -y install dhcp-server //安装配置
配置方式
	dhcp主配置文件:/etc/dhcp/dhcpd.conf
	dhcp模板配置文件:/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example
	dhcp分配ip和租约记录文本配置文件:/var/lib/dhcpd/dhcpd.leases //租约调试记录
cp /usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf  //复制模板
vim /etc/dhcp/dhcpd.conf //更改主配置文件,完成DHCP服务器的设置
#47-55行
 46 # A slightly different configuration for an internal subnet.
 #地址池
 47 subnet 192.168.10.0 netmask 255.255.255.0 {
 48   range 192.168.10.20 192.168.10.30;
 49   option domain-name-servers 192.168.10.100;
 50   option domain-name "xiaok.org";
 51   option routers 192.168.10.2;
 52   option broadcast-address 192.168.10.255;
 53   default-lease-time 36000;
 54   max-lease-time 72000;
 55 }
#DHCP绑定固定ip	76行为绑定者的MAC地址
 75 host fantasia {
 76   hardware ethernet 08:00:07:26:c0:a5;
 77   fixed-address fantasia.example.com;
 78 }
systemctl enable --now dhcpd	#设置开机自启
systemctl start dhcpd		#启动服务   
ss -unl  		#查看dhcp监听地址  

在这里插入图片描述
客户端测试注意将网卡改为自动获取ip

2. DHCP服务器的中继服务

通常情况下,DHCP只能在广播域使用,为了实现广播域外一定范围的DHCP服务,需要使用DHCP中继技术。

实验配置DHCP中继
环境:
	DHCP服务器node-1:网卡NAT 192.168.10.100
	DHCP中继服务器node-2:两张网卡分别为NAT和仅主机
		NAT IP:192.168.10.110/24
		仅主机IP:192.168.66.100
	DHCP客户端node-3:网卡仅主机 192.168.66.120

中继服务器为新网卡添加地址

nmcli connection add con-name eth1 ifname eth1 type ethernet autoconnect yes ipv4.addresses 192.168.66.100/24

重启网卡

nmcli connection down eth1
nmcli connection up eth1

查看中继服务器的路由,并添加路由转发功能

route -n
echo "1" >/proc/sys/net/ipv4/ip_forward

在这里插入图片描述

将DHCP客户端2网卡改为仅主机(网段192.168.66.0/24)
修改网卡配置文件,地址为静态,注释掉dns 重启网卡

cd /etc/NetworkManager/system-connections
vim eth0.nmconnection 

在这里插入图片描述
重启网卡 添加路由

nmcli connection reload
nmcli connection down eth0
nmcli connection up eth0

dhcp Server添加路由
ip r a 192.168.66.0/24 via 192.168.10.110
在这里插入图片描述
此时,可以保证客户端node-3和dhcpser间的连通性
在这里插入图片描述
客户端node-3网卡改为自动获取
在这里插入图片描述
中继器安装服务,开启dhcp推送

yum -y install dhcp-relay
dhcrelay 192.168.10.100

dhcp服务器改配置文件

 vim /etc/dhcp/dhcpd.conf
 46 # A slightly different configuration for an internal subnet.
 47 subnet 192.168.10.0 netmask 255.255.255.0 {
 48   range 192.168.10.20 192.168.10.30;
 49   option domain-name-servers 192.168.10.100;
 50   option domain-name "xiaok.org";
 51   option routers 192.168.10.2;
 52   option broadcast-address 192.168.10.255;
 53   default-lease-time 36000;
 54   max-lease-time 72000;
 55 }
 56 subnet 192.168.66.0 netmask 255.255.255.0 {	#为66段增加地址池
 57   range 192.168.66.20 192.168.66.30;
 58   option domain-name-servers 192.168.10.100;
 59   option domain-name "xiaok.org";
 60   option routers 192.168.66.1;
 61   option broadcast-address 192.168.66.255;
 62   default-lease-time 36000;
 63   max-lease-time 72000;
 64 }
 systemctl restart dhcpd	#重启服务

客户端重启网卡

nmcli connection reload
nmcli connection down eth0
nmcli connection up eth0

在这里插入图片描述

  • 9
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值