1.物理网卡自身集成了DHCP的功能为了请求获取合法、可用的IP
2、DHCP服务端核心功能在于通过自定义的网段的地址池来给新假如网络环境的设备以租约的方式分配合法IP
DHCP好处:减少管理员的工作量
避免输入错误的可能
避免IP地址冲突
当网络更改IP地址段时,不需要再重新配置每个用户的IP地址
提高了IP地址的利用率
方便客户端的配置
DHCP的分配方式:自动分配:当DHCP客户机第一次成功地从DHCP服务器获取到一个IP地址后,就永久地使用这个IP地址
手动分配:DHCP服务器管理员专门指定IP地址
动态分配:DHCP客户机第一次从DHCP服务器获取IP地址后,并非永久地使用该地址,而是每次使用完后,DHCP客户机就会释放这个IP地址供其他客户机使用。
DHCP工作过程客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程分为四个步骤:
1、客户机请求P地址
当一个DHCP客户机启动时,客户机还没有IP地址,所有客户机要通过DHCP获取一个合法的地址,此时DHCP客户机以广播方式发送DHCPDiscover发现信息来寻找DHCP服务器;
2、服务器响应
DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机。如果有DHCP服务器将此IP地址上做上标记,加入到DHCP Offer的消息中。然后广播一则DHCP Offer消息
3、客户机选择IP地址
客户机选择第一台DHCP服务器回复的ip地址,并且要广播发送DHCP request,通告给局域网中的所有的DHCP服务器,它选择了哪个IP和哪个DHCP(发送DHCP request的原因有两层,第一层是通告所有的DHCP,让未被选中的服务器,把未使用的地址收回,第二层是通告给选中的服务器,这个IP地址客户机要使用了)
4、服务器确定租约
DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息,当客户机收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化。
重新登录:DHCP客户机每次重新登录网络时,不需要再发送DHCP Discover 信息,而是直接发送包含前一次所分配的IP地址的DHCP Pequest请求信息
更新租约:当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约;客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约。
DHCP服务优点为大量客户机自动分配地址,提供集中管理
减轻管理和维护成本、提高网络配置效率
可分配的地址信息主要包括网卡的IP地址、子网掩码
对应的网络地址、广播地址
默认网关地址
DNS服务器地址
DHCP中继原理与配置DHCP配置文件中的参数
#设置全局配置参数
defau7t-lease-time 21600; #默认租约为6小时,单位为秒I
max-lease-time 43200; #最大租约为12小时,单位为秒
option domain-name "benet.com"; #指定默认域名
option domain-name-servers 202.106.0.20,202.106.148.1; #指定DNS服务器地址
ddns-update-style none; #禁用DNS动态更新
#subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet 192.168.100.0 netmask 255.255.255.o { #声明要分配的网段地址
range 192.168.100.128 192.168.100.200; #设置地址池
option routers 192.168.100.10; #指定默认网关地址
#host主机声明(给单机分配固定的IP地址)
host hgstname{ #指定需要分配固定IP地址的客户机名称
hardware ethernet 00:c0:c3:22:46:81; #指定该主机的MAC地址
fixed-address 192.168.100.22; #指定保留给该主机的IP地址
1、关闭防护墙
[root@localhost ~]# systemctl stop firewalld.service [root@localhost ~]# setenforce 0
2、安装服务并查看相关配置文件
[root@localhost ~]# yum install -y dhcp #安装DHCP服务 [root@localhost ~]# rpm -qc dhcp #查看相关配置文件 /etc/dhcp/dhcpd.conf #我们只需要对/etc/dhcp/dhcpd.conf 此文档进行配置 /etc/dhcp/dhcpd6.conf /etc/openldap/schema/dhcp.schema /etc/sysconfig/dhcpd /var/lib/dhcpd/dhcpd.leases /var/lib/dhcpd/dhcpd6.leases [root@localhost ~]# vim /etc/dhcp/dhcpd.conf #空的 # DHCP Server Configuration file. # see /usr/share/doc/dhcp*/dhcpd.conf.example #可以将此文档拷贝过来 # see dhcpd.conf(5) man page
3、拷贝并修改/etc/dhcp/dhcpd.conf配置文件
[root@localhost ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf cp:是否覆盖"/etc/dhcp/dhcpd.conf"? yes #拷贝上述文档并覆盖,4.2.5代表版本 [root@localhost ~]# cd /etc/dhcp/ #切换至dhcpd.conf所在目录 [root@localhost dhcp]# vim dhcpd.conf #进入编辑器查看配置文件,此时不为空了
4、更改网卡连接模式仅为主机
硬件–》网络适配器–》自定义 VMnet1—》确定
更改完成后Xshell断开,进虚拟机终端更改配置
5、修改网卡
[root@localhost dhcp]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 #修改网卡ip地址及网关,然后保存退出 IPADDR=192.168.100.10 GATEWAY=192.168.100.2 [root@localhost dhcp]# systemctl restart network #重启网络服务 root@localhost dhcp]# ifconfig #查看一下ip地址是不是配好了
6、修改配置文件
[root@localhost ~]# cd /etc/dhcp/ #切换至dhcpd.conf所在目录
[root@localhost dhcp]# vim dhcpd.conf #修改配置文件
末行模式下:set nu显示行号
#第8行 修改默认的全局DNS地址
option domain-name-servers 8.8.8.8;
#直接修改27行
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.128 192.168.100.200;
option routers 192.168.100.2;
option domain-name-servers 114.114.114.114;
}
subnet 192.168.1.0 netmask 255.255.255.0{
range 192.168.1.128 192.168.1.200;
option routers 192.168.1.2;
}
subnet 192.168.2.0 netmask 255.255.255.0{
range 192.168.2.128 192.168.2.200;
option routers 192.168.2.2;
}
[root@localhost dhcp]# systemctl start dhcpd #启动dhcp服务
[root@localhost dhcp]# systemctl status dhcpd #查看是否成功启动
[root@localhost dhcp]# netstat -anup | grep "dhcp" #查看网络状态,过滤出dhcp端口
7、验证区域与全局优先级
#windows设置虚拟网卡为仅主机模式
#虚拟网络编辑器里也设置成仅主机模式,一定要把使用本地DHCP选项勾掉
#改一下windows虚拟机的网卡配置
#在windows系统的cmd里测试是否能ping通dhcp服务器,然后释放并重启一下网络
ping 192.168.100.100 ping 一下dhcp服务器,看是否可以ping通
ipconfig 查看网卡信息
ipconfig /release 释放地址
ipconfig /renew 重新获取地址
ipconfig /all 可以看到详情信息,
8、DHCP中继配置
准备好需要的设备:
sys [Huawei]sys SW1 [SW1]vlan batch 10 20 100 [SW1]int e0/0/2 [SW1-Ethernet0/0/2]port link-type access [SW1-Ethernet0/0/2]port default vlan 10 [SW1-Ethernet0/0/2]int e0/0/3 [SW1-Ethernet0/0/3]port link-type access [SW1-Ethernet0/0/3]port default vlan 20 [SW1-Ethernet0/0/3]int e0/0/4 [SW1-Ethernet0/0/4]port link-type access [SW1-Ethernet0/0/4]port default vlan 100 [SW1-Ethernet0/0/4]int e0/0/5 [SW1-Ethernet0/0/5]port link-type access [SW1-Ethernet0/0/5]port default vlan 100 [SW1-Ethernet0/0/5]int e0/0/1 [SW1-Ethernet0/0/1]port link-type trunk [SW1-Ethernet0/0/1]port trunk allow-pass vlan all
sys [Huawei]sys SW2 [SW2]int g0/0/1 [SW2-GigabitEthernet0/0/1]port link-type trunk [SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan all #开启dhcp功能 [SW2]dhcp enable #配中继 [SW2]vlan batch 10 20 100 [SW2]int vlan 10 [SW2-Vlanif10]ip add 192.168.10.1 24 [SW2-Vlanif10]dhcp select relay [SW2-Vlanif10]dhcp relay server-ip 192.168.100.10 [SW2-Vlanif10]int vlan 20 [SW2-Vlanif20]ip add 192.168.20.1 24 [SW2-Vlanif20]dhcp select relay [SW2-Vlanif20]dhcp relay server-ip 192.168.100.10 [SW2-Vlanif20]int vlan 100 [SW2-Vlanif100]ip add 192.168.100.1 24 [SW2-Vlanif100]dhcp select relay [SW2-Vlanif100]dhcp relay server-ip 192.168.100.10
ping测,PC测试
anif20]int vlan 100
[SW2-Vlanif100]ip add 192.168.100.1 24
[SW2-Vlanif100]dhcp select relay
[SW2-Vlanif100]dhcp relay server-ip 192.168.100.10
ping测,PC测试 [外链图片转存中...(img-yo3ZsY01-1655199015891)] [外链图片转存中...(img-LFyiZi6b-1655199015892)] 



