博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
我的IP我做主--抓包图解DHCP中继代理
阅读量:6091 次
发布时间:2019-06-20

本文共 1600 字,大约阅读时间需要 5 分钟。

DHCP(动态主机配置协议)可以帮助我们很多IT朋友省不少事。
大大减少了IT环境管理人员的工作量,也是我们最常使用的网络服务之一。
这里简单回顾一下,当我们面对一个作用域(针对一个广播域)的时候,DHCP的工作过程。
我们在DHCP服务器上抓到了DHCP全广播的工作过程从discover 到 ACK。
 
大家可以在上图中看到DHCP的租约过程:
1、MAC地址为0003FFE54AE5的客户机以广播的方式发送Discover请求IP;
2、LOCAL(DHCP服务器)以广播的形式发送Offer响应客户机;
3、MAC地址为0003FFE54AE5的客户机以广播的方式Request选择IP;
4、LOCAL(DHCP服务器)以广播形式发送ACK确认租约。
 
下面我们再来以数据包的形式图解一下DHCP中继代理的过程(可以理解为帮助客户机把广播以单播的形式传给DHCP服务器):
 
为了让大家理解的更加透彻,我们这里采用倒叙的方式来阐述:
 
首先,让我们来看看客户机上获取到的网络配置信息:
从上图中我们可以看到当前客户机client001:a MAC地址是0003FFE54AE5
                                                                                     b 获取到的IP是192.168.1.31/24
                                                                                     c DHCP服务器是192.168.0.2
 
第二步、我们在DHCP服务器上抓到了由DHCP中继代理转发过来的Discover到ACK的过程,大家会注意下图中源MAC地址和目标MAC地址,显然的单播过程。
a 由MAC为0003FFE04AE5的接口发送了一个Discover的单播给DHCP服务器;
b DHCP服务器又将Offer以单播的方式发送给了MAC地址为0003FFE04AE5的接口;
c 由MAC为0003FFE04AE5的接口又以单播的方式将Request返回给DHCP服务器;
d DHCP服务器又以单播方式回复ACK确认信息给MAC地址为0003FFE04AE5的接口。
附DHCP服务器MAC地址:
 
而这样一个单播的神奇过程是怎么形成的呢?
下面让我们去DHCP中继代理上去抓包揭开谜底:
第三步、确定刚刚DHCP服务器上收到的Discover包是从哪来的
大家可以从上图中看到向DHCP服务器发送单播的接口正式中继代理上的“本地连接2”,IP地址为192.168.0.1/24和DHCP服务器在同一个广播域的接口。
 
第四步、我们一起来看一下在中继代理上与客户机在同一广播域的网卡接口(本地连接2)上抓取到的数据包:
从上图中我们可以看到:
                                              a 客户机client001发送Discover广播给DHCP中继代理;
                                              b 由DHCP中继代理本机向客户机以单播的形式传递Offer;
                                              c 客户器client001发送Request广播给DHCP中继代理;
                                              d 由DHCP中继代理向客户机以单播形式传递ACK确认;
第五步、在DHCP中继代理与DHCP服务器相连的接口(本地连接)上抓到的数据包如下:
从图中可以看到:
                                a 由DHCP中继代理向0003FFE24AE5(DHCP服务器,第二步附图中可见。)发送了Discover的单播;
                                b DHCP服务器向DHCP中继代理发送了Offer的单播;
                                c  由DHCP中继代理向0003FFE24AE5(DHCP服务器)发送了Request的单播;
                                d  DHCP服务器向DHCP中继代理发送了ACK的单播;
 
 
ok,经过这么五步我们可以很清晰的看到DHCP中继代理的工作过程:
将客户机的DHCP广播请求(Discover和Request)以单播的形式传递给DHCP服务器,同时将DHCP服务器的响应(Offer和ACK)以单播的形式传递给客户机。
本文转自 angerfire 51CTO博客,原文链接:http://blog.51cto.com/angerfire/149366,如需转载请自行联系原作者
你可能感兴趣的文章
微小企业如何更好的管理自己的进销?分享你一个saas平台
查看>>
如何用Redis实现分布式缓存
查看>>
git 免密码操作
查看>>
年糕妈妈社区架构实践
查看>>
从零开始打造一个iOS图片加载框架(二)
查看>>
MySQL数据库审计插件htp_audit正式开源,热璞科技回馈MySQL社区
查看>>
阿里腾讯Android开发十年,到中年危机就只剩下这套移动架构体系了!
查看>>
iOS 自定义导航栏组件
查看>>
Git和GitHub的应用
查看>>
《Spring Cloud》学习(一) 服务治理!
查看>>
iOS逆向(10)-越狱!越狱!远程连接登录手机
查看>>
node本地服务器
查看>>
java io、java nio、netty的缓冲区比较
查看>>
前端笔记—第3篇Flex布局
查看>>
Item 10 Always override toString
查看>>
大咖书单 | 技术人员不容错过的职场修炼手册
查看>>
BXA联手ONEROOT推出数字金融服务
查看>>
你真的了解标签栏设计吗?
查看>>
69道 Spring 面试题及答案
查看>>
支付宝又要刷屏了,红包活动开始了
查看>>