相信很多正在学习网络的同学,对DHCP这个协议即熟悉又陌生,这个协议是我们正常生活中想要通过终端设备上网必备的协议。而今天我们就来好好唠唠这个既熟悉也陌生的上网协议。    

        动态主机配置协议DHCP(Dynamic Host Configuration Protocol)是一种用于集中对用户IP地址进行动态管理和配置的技术。而在我们HCIA阶段学习该知识的时候,给的场景是很简单的----DHCP client和DHCP server在同一网段;而今天我们来普及下DHCP client和DHCP server不在同网段的场景下,如何让DHCP client可以获得ipv4地址的。

        

 

 

        如上图所示:假如DHCP client与DHCP server中间的路由器设备没有开启DHCP Relay功能,那么DHCP client要获取ipv4地址此时会发送DHCP discover广播报文,此时由于中间的路由器是隔离广播的,那么此时DHCP client发送的discover广播报文是无法通过这个中间路由器传递给DHCP server的。这就导致DHCP client永远无法从DHCP server中获得ipv4地址的。那么为了解决这个问题,我们就让中间的路由器设备开启DHCP Relay中继功能,当中间路由器开启了中继功能后,其会将client发来的discover广播报文转换为单播报文转发给DHCP server,此后所有的DHCP client与中继路由器之间相互发送的广播报文,在经过中继路由器之后,中继路由器与DHCP server之间都是以单播的方式相互交流。

        接下来我们通过一个具体的实验来给大家演示上面的理论

        

 

 

        实验场景描述:DHCP server和DHCP Relay之间属于10.1.1.0/24网段,DHCP Relay和DHCP client之间属于192.168.0.0/24网段,现在的目的就是让DHCP client PC1可以从DHCP server哪里获得一个192.168.0.x/24的ipv4地址,通过该地址可以进行上网。

        此时我们在R1的接口G0/0/1抓包

 

 

        此时我们在R2的接口G0/0/2抓包

 

 

        如上面两个抓包截图所示:DHCP Relay和DHCP client之间discover和Request报文都是广播,而这两个报文在DHCP server和DHCP Relay之间确实单播报文,这正好验证了前面关于报文的理论的。那么PC1到底有没有获得192.168.0.x/24的ipv4地址呢?是怎么获得的呢?PC1发送discover广播报文到了dhcp中继路由器R1上,dhcp中继路由器R1由将该discover报文变为单播报文传给了dhcp server上,而DHCP server通过这个discover报文中的“relay agent ip address=192.168.0.1“并且自己的服务器也有192.168.0.0/24的地址池。此时dhcp server就知道该给DHCP client分配一个192.168.0.x/24的地址了。如下图所示,最终PC1获得了一个192.168.0.254/24的地址。

 

      最后我给大家留两个思考题:

1.DHCP server是通过什么判断应该分配哪个网段的ipv4地址?

2.根据我们实验client192.168.0.0/24这个网段中,而服务器在10.1.1.0/24这个网段中,那么server怎么知道应该给客户端分配是192.168.0.0/24这个网段ip地址而不是分配10.1.1.0/24这个网段的ip地址的呢?

      

 

 


©著作权归作者所有:来自51CTO博客作者jinzhenwells的原创作品,如需转载,请与作者联系,否则将追究法律责任

更多相关文章

  1. web前端编程语言有哪些?
  2. python怎么安装pip
  3. 全球分布式,多模数据库Azure Cosmos DB
  4. #Build 2017观察# 微软的战略升级
  5. 原创 | 工业网络通讯数据分析之Wireshark插件编写
  6. 2、AP上线的那些事儿(1)capwap建立过程、设备初始化以及二层上线
  7. 微软大数据领域优势分析
  8. 探讨微软的混合云
  9. TCP/IP之TCP报文简介

随机推荐

  1. android selector 背景选择器
  2. Android系列教程之十:Intents and Intent
  3. Dagger2使用
  4. android监听键盘
  5. Android(安卓)5.X Activity过渡动画,以及
  6. Android的网络抓包工具Tcpdump
  7. 牛人博客收集
  8. 关于相对布局RelativeLayout的各种属性介
  9. Android(安卓)Activity 详解
  10. Android移动终端数据同步技术的一次了解