DHCP服务的简介和配置详解
1
、
DHCP
服务简介
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个
局域网
的
网络协议
,使用
UDP
协议工作,
主要有两个用途
:给内部网络或
网络服务
供应商自动分配
IP地址,给用户或者内部网络管理员作为对所有
计算机
作中央管理的手段,在
RFC 2131中有详细的描述。DHCP有3个端口,其中UDP67和UDP68为正常的DHCP服务端口,分别作为DHCP Server和DHCP Client的服务端口;546号端口用于DHCPv6 Client,而不用于DHCPv4,是为DHCP failover服务,这是需要特别开启的服务,DHCP failover是用来做”双机热备”的。
2
、
DHCP
服务作用
Ø
为大量客户机自动分配地址,提供集中管理
Ø
减轻管理和维护成本、提高网络配置效率
3
、
DHCP
服务
可分配的地址信息主要包括
Ø
网卡的
IP
地址、子网掩码
Ø
对应的网络地址、广播地址
Ø
默认网关地址
Ø
DNS
服务器地址
Ø
引导文件、
TFTP
服务器地址
4
、
DHCP
的原理
1
、客户端寻×××器进行
IP
请求
2
、服务器提供地址信息
3
、接受并广播(客户机选择
IP
)
4
、服务器确认租约(
DHCPACK
)
服务器确认租约(
DHCPNACK
)
如果
DHCP
客户机无法找到
DHCP
服务器
,
将从
TCP
/IP
的
B
类网段
169.254.0.0
、
16
中挑选一个
IP
作为自己的
IP
地址,每隔
5
分钟继续尝试与
DHCP
服务器通信。
5
、客户端重新登录
6
、服务器确认
DHCP客户机续租:
DHCP客户机会在租期过去50%的时候,直接向为其提供IP地址的DHCP服务器发送DHCPREQUEST消息包。如果客户机接收到该服务器回应的DHCPPACK消息包,客户机就根据包中所提供的新的租期以及其他已经更新的TCP/IP参数更新自己的配置,IP租用更新完成。如果没有收到该服务器的回复,则客户机继续使用现有的ip地址,因为当前租期还有50%。
如果在租期过去
50%的时候没有更新,则DHCP客户机在租期过去87.5%的时候再次向为其提供IP地址的DHCP服务器联系,如果还不成功,到租约的100%的时候,DHCP客户机必须放弃这个IP地址,重新申请。如果此时无DHCP服务器可用,DHCP客户机会使用169.254.0.0/16中随机的一个地址,并且每隔5分钟再进行尝试。
5
、
DHCP
的相关配置文件
端口号:
ipv4 udp 67
(源端口:接收客户端请求的)、
udp 68
(目的端口:向客户端发送请求成功或失败的回应)
ipv6 udp 546
、
udp 547
服务名:
dhcpd
、
dhcrelay
主配置文件:
/etc/dhcp/dhcpd.conf
模板文件:
/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample
中继配置文件:
/etc/sysconfig/dhcrelay
执行程序:
/usr/sbin/dhcpd
、
/usr/sbin/dhcrelay
服务脚本:
/etc/init.d/dhcpd
、
/etc/init.d/dhcrelay
执行参数配置:
/etc/sysconfig/dhcpd
查看租约文件
:
/var/lib/dhcpd/dhcpd.lease
很多网络服务的排错日志
:
/var/log/messages
===========================================================================
6
、
DHCP
服务配置步骤
本次操作是在
VMware
虚拟机中进行的。
(
1
)操作前的准备
防火墙临时关闭:
iptables
–
F
防火墙永久关闭:
/etc/init.d/iptables stop
查看防火墙状态:
iptables -L
selinux
临时关闭:
setenforce 0
selinux
永久关闭:
sed
–
i
“
7s/enforcing/disabled/g
”
/etc/selinux/config
(
2
)客户端配置
1
、
关闭防火墙和
selinux
2、
自己在虚拟网络编辑器创建一个局域网的网卡,并设置好网段,取消虚拟网络编辑器的DHCP自动分配功能
3、
进入客户机设置IP地址为自动获取(就是让
DHCP
选项生效),然后用
service network restart
重启客户机网卡
,
到这里客户端就设置完成。
(
3
)服务端配置
1
、
进入服务机设置
IP
地址、网关和虚拟网络编辑器那个网卡的网段一致,然后重启网卡
2
、
配置
yum
源,挂载光盘,然后用
yum
–
y install dhcp
安装
dhcp
软件
3、
进入dhcp配置文件
/etc/dhcp/dhcpd.conf
发现里面是空的,然后把
dhcp
模板文件中的内容导入
dhcp
配置文件,如下
:
4
、
将配置文件的前几个
subnet
声明注释掉,修改最后一个
subnet
的声明
5
、
修改完成后保存退出,用
service dhcpd configtest
测试文件是否有错误
6
、
然后用
service dhcpd start
重启
dhcp
服务
7
、
重启客户机网卡,看能不能获取到服务机地址池的
IP
地址
8
、
为某台主机设置
IP
地址保留,把要保留
IP
的
MAC
地址和要保留的
IP
地址写入
dhcpd.conf
的配置文件即可,然后设置客户机为自动获取
IP
9
、
用
ifdown eth0
停止服务机网卡,再用
ifup eth0
开启网卡,然后用
service dhcpd start
重启
dhcp
服务,看客户机能不能获取到指定
IP
———————————————————————————————————————————
7
、
超级作用域配置
(
1
)当电脑很多一个网段不够用时,我们要让一个
DHCP
服务器可以分配两个网段,这时,我们需要把之前设置的
dhcpd.conf
里面的网段声明和主机声明全部都注释掉,重新进行配置。
(
2
)这里我们实验需要用到三台同一局域网的虚拟机,其中一台作为
DHCP
服务器,另外两台作为客户机并且都设置为自动获取
IP
的状态,为了实验方便,配置文件里面我们设置两个网段,每个网段只有一个
IP
地址可以分配,观察两台客户机能不能获取到两个网段的
IP
地址。
(
3
)用
service dhcpd start
重启
dhcp
服务,同时重启两个客户机的网卡,看客户机能不能获取到两个网段的
IP
地址
===============================================================================
8
、
DHCP
中继配置
(
1
)准备一台连接内网
eth0(192.168.116.10)vmnet5
的
DHCP
服务器
,
网关设置成中继的
vmnet5
的
IP
地址
准备一台两个网卡的
DHCP
中继,
eth0(192.168.116.20)
网卡连接内网
vmnet5
,
eth1(100.100.100.1)
网卡连接外网
vmnet6
准备一台外网客户机
eth0
连接到
vmnet6
,并设置为自动获取
IP
方式
关闭虚拟网络编辑器的
DHCP
分配功能
(
2
)配置
yum
源,挂载光盘,在服务机和中继分别安装
dhcp
软件
(
3
)修改
dhcp
配置文件
(
4
)修改中继器相关配置文件
(5)修改客户机
网卡
为自动获取IP地址,
并注释掉原有的IP,然后
重启客户端网卡即可获取DHCP服务器
分配
的IP
地址
转载于:https://blog.51cto.com/longlei/2063336