DHCP( Dynamic Host Configuration Protocol ,动态主机配置协议 )
由 Internet 工作任务小组设计开发
专门用于为 TCP/IP 网络中的计算机制动分配TCP/IP 参数的协议
DHCP( 动态主机配置协议)是一个局域网的网络协议,指的是由服务器控制一段 IP 地址范围,客户机登录服务器时可以自动获取服务器分配的 IP 地址和子网掩码。在默认情况下,DHCP作为Windows Server 的一个服务组件是不会被系统自动安装的,需要管理员手动安装并进行配置。
典型的C/S模式:
在网络中假设一台专用的DHCP服务器,负则集中分配各种网络地址参数(主要包括 IP、子网掩码、广播地址、默认网关、DNS服务器地址),其他主机作为DHCP的客户机,将网卡配置为自动获取地址,即可与DHCP服务器进行通讯,完成自动配置的过程
DHCP是C/S模式,DHCP服务端和客户端需要保持通信,DHCP基于UDP协议,双方都有可能回主动向对方发起通信,因此双方都需要监听端口
Server端:DHCP Server(运行dhcp服务)
UDP服务:监听端口67(bootps)
Client端:DHCP Client(运行dhcp程序)
UDP服务:监听端口68(bootpc)
减少管理员的工作量
避免输入错误的可能
避免IP地址冲突
当更改IP地址段时,不需要重新配置每个用户的IP地址
提高了IP地址的利用率
方便客户端的配置
1、自动分配:分配到一个IP地址以后永久使用
2、手动分配:由DHCP服务器管理员专门指定IP地址
3、动态分配:使用完后释放该IP,供其他客户机使用
客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程
1、客户机请求IP地址
2、服务器响应
3、客户机选择IP地址
4、服务器确定租约
重新登陆:
更新租约:
DHCP服务
可分配的地址信息主要包括
网卡的IP地址、子网掩码
对应的网络地址、广播地址
默认网关地址
DNS服务器地址
●软件CentOS光盘中的dhcp-4.2.5-47.el7.centos.x86_64.rpm
●DHCP软件包的主要文件
1、主配置文件: letc/dhcpd.conf
2、执行程序:/usrlsbin/dhcpd、lusr/sbin/dhcrelay
1、 yum安装dhcp服务
2、配置dhcp配置文件
3、启动服务
4、查看端口
5、验证服务
rpm -q dhcp #查看是否有服务
未安装软件包 dhcp
yum -y install dhcp #下载服务
rpm -q dhcp
dhcp-4.2.5-83.el7.centos.1.x86_64
rpm -qc dhcp #查看配置文件有哪些
cat /etc/dhcp/dhcpd.conf //服务刚安装好,配置文件是没有任何东西的,需要把模板拷贝过来
cp -fp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf //拷贝模板起名为dhcpd.conf
vim /etc/dhcp/dhcpd.conf //编辑配置文件
7 option domain-name “example.org”; //指定默认搜索域,本地域名
8 option domain-name-servers ns1.example.org, ns2.example.org; //指定 DNS 服务器地址,多台用逗号隔开
10 default-lease-time 600; //默认租约为600秒
11max-lease-time 7200; //最大租约为2小时,在客户端没有特殊的租约时间请求的时候,都会统一的指 派默认租约时间(多数情况)。 如果客户端请求了自定义的租约时间,服务器将会启用最大租约时间作为限制,客户端自己请求的租约时间不能大于该值
ddns-update-style none; /禁用 DNS 动态更新,提高DHCP的效率,减少带宽的使用,默认注释了
ignore client-updates: //与ddns-update-style设定相关,客户端可以通过DHCP服务器来更新DNS相关信息,这里暂时不予考虑,所以设置成igo
注:以上为DHCP全局配置
vi /etc/dhcp/dhcpd.conf
subnet 192.168.10.0 netmask 255.255.255.0 { //声明网段地址
#default-lease-time 6000; //默认租约为6000秒,当和全局设置重复时,subnet里的配置生效
range 192.168.10.100 192.168.10.110; //设置地址池
#option broadcast-address 192.168.10.255; //定义广播地址
option routers 192.168.10.105; //指定默认网关地址
option domain-name-servers 114.114.114.114; //定义DNS服务器
}
启动DHCP和服务查看端口
客户端验证:
ipconfig /release
ipconfig /renew
ipconfig /all #查看所有
补:
客户机预留指定的固定ip地址
host 声明用于设置单个主机的网络属性,通常用于为网络打印机或个别服务器分配固定的 IP 地址(保留地址),这些主机的共同特点是要求每次获取的 IP 地址相同,以确保服务的稳定性。
vim /etc/dhcp/dhcpd.conf
host win10{
hardware ethernet 00:0C:29:BE:10:C7; #hardware ethernet:mac地址
fixed-address 192.168.10.105; #保留地址
}
#host 后面可自定义名称
less /var/lib/dhcpd/dhcpd.leases
dhclient -d ens33 ##-d 选项使其在前台运行
在服务器端可以通过查看租约文件/var/lib/dhcpd/dhcpd.leases 来了解服务器的IP 地址分配情况
租约文件中记录了分配出去的每个 IP 地址信息(租约记录), 包括 IP 地址、客户端的 MAC 地址、租用的起始时间和结束时间等。
客户端需要通过 dhclient 命令释放获取的 IP 租约时,可以结合“-r”选项。此时再通过执行ifconfig 命令就看不到分配的 IP 地址了。
dhclient -r ens33
vim /var/lib/dhclient/dhclient.leases //linux的dhcp客户端租约文件
例子:
renew 3 2021/05/19 20:42:06; renew:下一次去找dhcpd服务器续约的时间点 = 租约时间的50%
rebind 3 2021/05/19 20:46:36; rebind:renew失败后,重试的时间点 =租约时间的 85% 左右
expire 3 2021/05/19 20:47:51; expire:过期的时间点
方法一:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=dhcp
ifdown ens33 ; ifup ens33
■当企业的内部网络规模较大时,通常被划分为多个不同的子网,网络内配置了VLAN,VLAN能隔离广播,而DHCP协议使用广播
■DHCP服务器在VLAN 100中,就只有VLAN 100内的客户机能从在此获取lP地址
■如果VLAN 2或VLAN 3的客户机也需要通过这台DHCP服务器来获取IP地址,应该怎么办?
■两种解决办法
●为每个网段安装一台DHCP服务器,但这种方式存在资源上的浪费,而且不利于集中管理
●在连接不同网段的设备上开启DHCP中继功能,将DHCP这种特殊的广播信息在VLAN之间转发,让其他VLAN的客户机也能从DHCP服务器获得IP地址
语法格式:ip helper-address DHCPsrv=IPAddress
●DHCPsrv-IPAddress 为DHCP服务器的IP地址
利用三层交换机作为不同vlan之间的dhcp中继,ensp里用云朵绑定vmnet网卡实现与linux的dhcp服务器通信(linux服务器使用仅主机模式)
基本网卡配置:
vim /etc/sysconfig/network-scripts/ifcfg-ens33 #修改
Linux中设置:
vim /etc/dhcp/dhcpd.conf
option domain-name “kgc.com”;
option domain-name-servers 8.8.8.8;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.120;
option routers 192.168.1.254;
}
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.100 192.168.2.120;
option routers 192.168.2.254;
}
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.200 192.168.1.230;
option routers 192.168.100.254;
}
SW1:
#
sysname SW1
#
undo info-center enable
#
vlan batch 10 20 100
#
cluster enable
ntdp enable
ndp enable
#
drop illegal-mac alarm
#
dhcp enable
#
diffserv domain default
#
drop-profile default
#
aaa
authentication-scheme default
authorization-scheme default
accounting-scheme default
domain default
domain default_admin
local-user admin password simple admin
local-user admin service-type http
#
interface Vlanif1
#
interface Vlanif10
ip address 192.168.1.254 255.255.255.0
dhcp select relay
dhcp relay server-ip 192.168.100.100
#
interface Vlanif20
ip address 192.168.2.254 255.255.255.0
dhcp select relay
dhcp relay server-ip 192.168.100.100
#
interface Vlanif100
ip address 192.168.100.254 255.255.255.0
#
interface MEth0/0/1
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 4094
SW2:
#
sysname SW2
#
undo info-center enable
#
vlan batch 10 20 100
#
cluster enable
ntdp enable
ndp enable
#
drop illegal-mac alarm
#
diffserv domain default
#
drop-profile default
#
aaa
authentication-scheme default
authorization-scheme default
accounting-scheme default
domain default
domain default_admin
local-user admin password simple admin
local-user admin service-type http
#
interface Vlanif1
#
interface MEth0/0/1
#
interface Ethernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 4094
#
interface Ethernet0/0/2
port link-type access
port default vlan 10
#
interface Ethernet0/0/3
port link-type access
port default vlan 20
#
interface Ethernet0/0/4
port link-type access
port default vlan 100
#
interface Ethernet0/0/5
port link-type access
port default vlan 100
1.DHCP的定义以及好处
2.DHCP的分配方式:自动分配,手动分配,动态分配
3.DHCP的工作原理:
4.DHCP中继原理与配置