网络之路23:DHCP进阶实验


目录

网络之路第一章:Windows系统中的网络

0、序言
1、Windows系统中的网络
1.1、桌面中的网卡
1.2、命令行中的网卡
1.3、路由表
1.4、家用路由器
网络之路第二章:认识企业设备

2、认识企业设备
2.1、MSR810-W外观
2.2、登录MSR810-W管理页面
2.3、快速设置上网
2.4、WLAN配置
2.5、LTE模块配置
2.6、MSR810-W高级设置
网络之路第三章:认识设备命令行

3、认识设备命令行
3.1、通过Console接口登录设备
3.2、远程登录设备
3.3、Comware系统的基本命令
3.4、MSR810-W配置解读
3.5、MSR810-W初始化配置
网络之路第四章(上):认识网络模拟器

4、认识网络模拟器
4.1、HCL华三云实验室
4.2、eNSP企业网络模拟平台
4.3、Cisco Packet Tracer
4.4、EVE-NG
4.4.1、从OVF导入部署到ESXi
4.4.2、使用ISO安装到WorkStation
4.4.3、EVE-NG导入iol镜像
4.4.4、EVE-NG导入qemu镜像
网络之路第四章(下):认识虚拟化

4.5、虚拟化环境VMware ESXi
4.5.1、定制ESXi 6.7安装镜像
4.5.2、部署ESXi 6.7
4.5.3、ESXi 6.7升级ESXi 7.0
4.5.4、vCenter纳管ESXi主机
4.6、虚拟化环境CAS
4.6.1、部署CVM管理节点
4.6.2、部署CVK计算节点
4.6.3、CVM纳管CVK节点
4.7、网络功能虚拟化NFV
4.7.1、部署NFV
4.7.2、配置NFV网络
4.7.3、NFV设备初始配置
网络之路18:简单网络环境搭建与测试

5、基础网络实验
5.1、简单网络环境搭建与测试
网络之路19:网络设备基本连接与调试

5.2、网络设备基本连接与调试
网络之路20:ARP配置

5.3、ARP协议
网络之路21:DHCP报文交互过程

5.4、DHCP报文交互过程
网络之路22:DHCP基础实验

5.5、DHCP基础实验
理论上讲,学完了上次课程(网络之路22:DHCP基础实验),90%以上的DHCP配置都能满足了。但是,有时我们还是会遇到一些复杂的场景,比如装在Windows Server上的DHCP服务器等等(配置Windows Server 2016作为DHCP服务器),所以有兴趣的小伙伴可以把业务场景覆盖率提升到98%。

首先回顾一下,DHCP请求报文是什么类型的报文?是不是广播报文?广播报文能否跨三层转发?

第一个问题,如何在设备上开启多个DHCP地址池。

图片

当然,这个拓扑不太合理,但是在没接触三层交换机之前,我们先大概借此模型认识一下。假设2个客户端都需要从DHCP服务器获取IP地址,我们一般是要配置2个DHCP地址池的,分别对应到两个互联接口所在的网段,配置如下:

#dhcp enable#dhcp server ip-pool h4c0 gateway-list 10.1.0.1 network 10.1.0.0 mask 255.255.255.0#dhcp server ip-pool h4c1 gateway-list 10.1.1.1 network 10.1.1.0 mask 255.255.255.0#interface GigabitEthernet0/0 ip address 10.1.0.1 255.255.255.0#interface GigabitEthernet0/1 ip address 10.1.1.1 255.255.255.0

然后我们查看客户端地址的获取情况。

图片

客户端1获取到了10.1.0.2/24的IP地址。

图片

客户端2获取到了10.1.1.2/24的IP地址。

那有没有可能两个主机使用一个地址池内的地址呢?正好10.1.0.0/24和10.1.1.0/24可以聚合为10.1.0.0/23,试一下。

#dhcp server ip-pool h4c2 gateway-list 10.1.1.1 10.1.0.1 network 10.1.0.0 mask 255.255.254.0

此时客户端1获取到的IP地址还是正常的,但是网关却不响应请求了。

图片

而到了客户端2这边,也是同样的情况。

图片

这就导致了虽然能学到ARP信息,但是无法通信。

图片

所以,正如我们上次实验所提到的,如果我们想扩容地址池,还是要考虑掩码长度和网关的配置问题,如果不匹配,可能就会出现上面这种情况。

那如何配置多个DHCP地址池呢?

上面这种模型明显不太合理,所以这个时候一般会将地址池配置到三层交换机上,为每个VLAN配置单独的DHCP地址池,像下面这样:

#vlan 10#vlan 20#vlan 30#vlan 40#dhcp server ip-pool h4c10 gateway-list 10.1.10.254 network 10.1.10.0 mask 255.255.255.0#dhcp server ip-pool h4c20 gateway-list 10.1.20.254 network 10.1.20.0 mask 255.255.255.0#dhcp server ip-pool h4c30 gateway-list 10.1.30.254 network 10.1.30.0 mask 255.255.255.0#dhcp server ip-pool h4c40 gateway-list 10.1.40.254 network 10.0.0.0 mask 255.0.0.0#interface Vlan-interface10 ip address 10.1.10.254 255.255.255.0#interface Vlan-interface20 ip address 10.1.20.254 255.255.255.0#interface Vlan-interface30 ip address 10.1.30.254 255.255.255.0#interface Vlan-interface40 ip address 10.1.40.254 255.255.255.0

这样,配合VLAN终结就可以实现不同VLAN获取不同的地址段了,这也是目前用的比较多的方案。

当然,还有一种情况,那就是有单独的DHCP服务器的情况,此时一般结合DHCP中继来使用(DHCP 中继代理信息选项)。DHCP中继用于DHCP客户端和DHCP服务器处于不同物理网段的情况,客户端可以通过DHCP中继与DHCP服务器通信,获取IP地址及其他配置信息。

此时,我们需要在中继设备连接终端的接口下配置DHCP中继,并且保证服务器和中继设备的接口地址可以通信,此时终端就可以获取到IP地址了。中继设备的配置如下:

#dhcp enable#interface GigabitEthernet0/0 ip address 10.1.0.1 255.255.255.0 dhcp select relay dhcp relay server-address 10.1.2.2

终端获取到的地址信息如下:

图片

这里还有时间相关的信息,具体的介绍可以参考协议规范(DHCP:动态主机配置协议详解),其中Allocated lease指租约时长,86400秒指1天,可以通过expired命令进行修改,如设置为6天7小时8分9秒的命令如下:

#dhcp server ip-pool h4c1 expired day 6 hour 7 minute 8 second 9

另外的两个,T1指DHCP客户端的一半左右租约时间(以秒为单位),是个随机值;T2为DHCP客户端的7/8租约时间(以秒为单位),是精确值。

还有一些DHCP option参数(【先码后看】DHCP 扩展选项大全),常用的有Option 43和Option 60子选项,一般用来指定服务提供商的标识子选项,客户端和服务器使用此选项来交换特定于厂商的消息,比如Option 43子选项为供应商指定信息(Vendor-Specific Information,VSI),可以来配置AC的IP地址,当AP收到DHCP Offer报文时,就可以记录AC的IP地址;而option 60子选项为供应商类标识符(Vendor Class Identifier,VCI),可以唯一地标识供应商设备的类型,这个参数一般携带在AP发送的DHCP Discover报文中,用来标识自己的厂商和型号等信息。现在的配置比之前也人性化多了,可以直接使用IP地址了,之前还要手工转换为二进制字符串。

图片

我们查看一下AP发送的DHCP Discover报文:

图片

可以看到,携带的option 60信息为H3C. H3C WA6320-HCL,也就是设备型号,跟在设备命令行看到的一致。

图片

再看一下DHCP服务器响应的DHCP Offer报文:

图片

可以看到此处的值为0a010101,对应点分十进制的10.1.1.1,就是我们配置的AC的IP地址。

如果配置多个IP地址的话,此处的长度就会增加。

图片

DHCP还有一种安全特性,叫做DHCP Snooping,用于保证客户端从合法的服务器获取IP地址,并记录DHCP客户端IP地址与MAC地址的对应关系。一般需要结合信任端口来使用,仅从信任端口正常转发接收到的DHCP报文,而丢弃非信任端口接收到DHCP服务器响应的DHCP-ACK和DHCP-OFFER报文,避免假冒DHCP服务器的影响。

如果我们想开启DHCP Snooping表项功能,一般使用如下配置:

#dhcp snooping enable#interface GigabitEthernet1/0/1 dhcp snooping trust#interface GigabitEthernet1/0/2 dhcp snooping binding record

通过在连接DHCP服务器的接口配置信任端口,在连接客户端的接口启用DHCP Snooping表项功能,来实现记录信息。

图片

当然,这个命令在三层口下不被支持,需要使用交换机验证。

声明:文中观点不代表本站立场。本文传送门:https://eyangzhen.com/175426.html

联系我们
联系我们
分享本页
返回顶部