查看: 26901|回复: 5

抓包分析源路由

[复制链接]
发表于 2012-7-30 11:13:43 | 显示全部楼层 |阅读模式
通过抓取数据包分析源路由处理过程

什么是源路由
源路由是一种基于源地址进行路由选择的策略,可以实现根据多个不同子网或内网地址,有选择性地将数据包发往不同目的地址的功能。即让源主机指定一条通过网络的路径。例如:为了测试在某个物理网络上的吞吐量,即使正常的情况下路由器选择的路径中不包含该链路,系统管理员也可以使用源站路由强制要求IP数据报经过该链路。IP支持2种形式的源路由:1:松散源路由:它给出了一连串路由器接口的IP地址序列,报文必须沿着IP地址序列传送,但是允许在相继的两个地址之间跳过多个路由器。2:严格源路由:给出了一系列路由器接口的IP地址序列,报文必要严格按照路由转发,如果下一跳不再列表中,那么将会发生错误。

源路由分析.pdf

655.72 KB, 下载次数: 62, 下载积分: 魔法币 -3

回复

使用道具 举报

发表于 2012-7-30 15:58:27 | 显示全部楼层
分享 学习!
回复

使用道具 举报

发表于 2012-7-31 09:32:20 | 显示全部楼层
我是一只菜菜菜菜鸟,我是来学习的!
回复

使用道具 举报

发表于 2012-8-2 16:46:02 | 显示全部楼层
学习了,感谢版主
回复

使用道具 举报

发表于 2012-8-3 10:29:26 | 显示全部楼层
谢谢楼主分享,用转包软件来学习协议或特定功能是很直挂并高效的学习方式。
回复

使用道具 举报

发表于 2012-8-3 22:41:58 | 显示全部楼层
本帖最后由 碧云天 于 2012-8-3 22:48 编辑

不知道是否是IOS的差别,我用wireshark抓包和楼主抓包不一样。(我觉得wireshark不可能与科来会有这么大的区别)
A.我在GNS3中测试的
B.用的IOS为:2691-adventerprisek9-mz.124-15.T14.BIN。
我测试的结果,R3给R1(192.168.2.2给192.168.1.1)发icmp包时,不管在SW1还是SW2上抓包(实际测试没有用交换机,大鲨鱼可以在接口直接抓包),源地址和目标地址都没有改变,源:192.168.2.2 目标:192.168.1.1 回包相反,但是在IP包头中ip选项是有变化的,并且在R3去萍 R1时在R2上debug ip icmp也没有抓到包。
我的推测可能是这样:
一:去的数据包:
A.R3准备ping R1,并且设定了第一跳是192.168.2.1 第二跳为192.168.1.1 loop方式
B.R2判断192.168.2.1,为自己直连网段,能直接到达,所以将ip路由选项中只保留192.168.1.1,告诉R2下一跳为192.168.1.1,三层包头源和目标不变
C.二层数据包目标mac为192.168.2.1的mac就将包扔给了R2
D.R2收到数据包后,一看三层包头目标地址为192.168.1.1,并且IP路由选项中192.168.1.1为自己直连路由,为了保证对方能够回包经过自己,在IP路由选项中把自己与192.168.1.1直连的接口地址加上,保留原有三层包头信息
E,三层封包完成后就是二层,二层目标MAC为192.168.1.1的mac后,把包扔给R1
二,回来的数据包:
A.R1收到数据包后,因为正好是给自己的,就准备给回复,源地址和目标地址刚好与来的数据包相反
B.但是在IP路由选项中设定了自己的接口地址和目标地址,因为对于它来说,它只知道给192.168.1.1回,其他的不知道
C.二层封包目标MAC为之前收到的IP路由选项中的192.168.1.2的地址,将包扔给了R2
D.R2收到了数据包之后,因为不是给自己的,并且路由选项中包含内容,如是将IP路由选项中192.168.2.2的地址换成自己的接口地址192.168.2.1(保证以后回包给这个地址回)后,三层源地址目标地址不变
E.三层封包完成后,就是二层,因为目标地址为192.168.2.2,为直连网段,将目标MAC地址设定为192.168.2.2的mac后,把包扔给了R3

以上是根据抓包的猜测,不一定正确,还请指正。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | CSNA会员注册

本版积分规则

快速回复 返回顶部 返回列表