C114门户论坛百科APPEN| 举报 切换到宽版

亚星游戏官网

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索
查看: 20853|回复: 14

[原理资料] 广播报文在以太网中应用浅析 [复制链接]

军衔等级:

亚星游戏官网-yaxin222  新兵

注册:2012-3-6
发表于 2013-6-17 10:16:00 |显示全部楼层
广播报文在以太网中应用浅析
江西电信遂川分企业 袁良忠

目录

图表目录

摘要
本文通过实验抓捕报文的方式,模拟常见的网络应用,浅析在以太网通信过程中广播报文的作用、特性。从底层了解数据报文的交互过程及数据报的流动,从表面现象剖析内层的原理本质。从而清晰了解链路层的工作模式原理,为大家排障故障提供参考帮助。
关键字
交换机原理 广播报文 广播域 Flood 广播风暴 PING PPPOE  wireshark

前言
什么是广播报文,广播报文在大家的通信中究竟起到什么作用呢?什么时候会产生广播报文呢?广播给网络带来什么危害?有什么手段解决?带着这些问题,大家以常见网络用途和使用方式,以抓包的方式,向大家呈现一个底层数据报文的通信过程,来一一解答这些问题。
通过了解广播报文的特性与作用后,在日常设备维护过程中,充分发挥报文的作用,避免报文引发的故障,提升网络服务水平。

第1章  原理篇1.1  以太网交换机的工作原理
·交换机根据收到数据帧中的源MAC地址建立该地址同交换机端口的映射,并将其写入MAC地址表中。
·交换机将数据帧中的目的MAC地址同已建立的MAC地址表进行比较,以决定由哪个端口进行转发。
·如数据帧中的目的MAC地址不在MAC地址表中,则向所有端口转发。这一过程称之为泛洪(flood)。
·广播帧和组播帧向所有的端口转发。
1.2  什么是广播报文?什么是广播域?
什么是广播报文? 广播报文简单地定义为当交换机收到某些特征报文时,交换机把这些报文转发给除发送端口外的其它所有端口,通常特征就是数据帧中目的MAC地址为全1的报文(思考:广播报文是不是目的MAC一定是全1呢?),就像老师(报文发送者)在教室中(交换机的区域中,即广播域)中大声说,”同学们,下课了”(广播报文),在座的所有同学都听的到了(这就是广播)。
广播域就是网络中能接收任何一设备发出的广播帧的所有设备的集合。例如PC1发出广播报文broadcast1,能够接收到broadcast1报文的设备集合就称为一个广播域,通常一个交换机的所有端口以及连在该交换机上的交换机的所有端口处在同一广播域中。

第2章  实验篇2.1  实验网络环境
下面搭建一个的网络环境,三台PC电脑分别接到一台HUAWEIS2008交换机上(实验也可用普通二层交换机),在PC机上装上优秀的抓包工具wireshark 0.9905。通过它捕获PC机在通信时的所发送和接收到的报文。
图1:网络环境拓扑
亚星游戏官网-yaxin222
图表 1网络环境拓扑
表格 1三台电脑的网络参数
  
PC机名称
  
MAC地址
IP地址
在S2008的端口
  
PC1
  
00:13:d4:1f:c1:38
192.168.1.100
  
PC2
  
00:0f:1f:aa:05:ec
192.168.1.15
  
PC3
  
00:40:05:db:0f:72
192.168.1.1
2.2  实验一:两台PC之间Ping测试的广播报文
当PC1在PING PC3时,PC1发出了什么报文?收到了什么报文?PC2又能收到什么报文?根据TCP/IP协议卷三,大家推测PC1在PINGPC3时,由于两个地址在同一个网段,PC1发送ARP广播报文,请求PC3IP 地址的MAC地址,同时PC2上能捕获到ARP广播报文。通过以下实验来验证一下。
在PC1和PC2上打开抓包工具wireshark,并在 PC1上运行PING命令:
  
        
微软    Windows XP [版本 5.1.2600]
   
(C) 版权所有 1985-2001 微软 Corp.
   
   
C:\Documents    and Settings\Administrator>cd\
   
   
C:\>ping    192.168.1.1
   
   
Pinging    192.168.1.1 with 32 bytes of data:
   
   
Reply from    192.168.1.1: bytes=32 time<1ms TTL=64
   
Reply from    192.168.1.1: bytes=32 time<1ms TTL=64
   
   
Ping statistics    for 192.168.1.1:
   
    Packets: Sent = 2, Received = 2, Lost =    0 (0% loss),
   
Approximate    round trip times in milli-seconds:
   
       Minimum = 0ms, Maximum = 0ms, Average = 0ms
   
Control-C
   
^C
   
C:\>
   
   
   
亚星游戏官网-yaxin222
表格 2 PC1 PING PC3在PC1抓到的报文:
  
No.
  
Time
Source
Destination
Protocol
Info
  
1
  
0.000000
00:13:d4:1f:c1:38
ff:ff:ff:ff:ff:ff
ARP
Who has  192.168.1.1?  Tell 192.168.1.100
  
Frame  1 (42 bytes on wire, 42 bytes captured)
  
Ethernet  II, Src: 00:13:d4:1f:c1:38 (00:13:d4:1f:c1:38), Dst: ff:ff:ff:ff:ff:ff  (ff:ff:ff:ff:ff:ff)
  
Address  Resolution Protocol (request)
  
  
注解:PC1发送了一个目的MAC为全1的ARP广播报文
  
  
No.
  
Time
Source
Destination
Protocol
Info
  
2
  
0.000250
00:40:05:db:0f:72
00:13:d4:1f:c1:38
ARP
192.168.1.1 is at  00:40:05:db:0f:72
  
Frame  2 (60 bytes on wire, 60 bytes captured)
  
Ethernet  II, Src: 00:40:05:db:0f:72 (00:40:05:db:0f:72), Dst: 00:13:d4:1f:c1:38  (00:13:d4:1f:c1:38)
  
Address  Resolution Protocol (reply)
  
  
注解:PC3 192.168.1.1 响应ARP
  
  
No.
  
Time
Source
Destination
Protocol
Info
  
3
  
0.000255
192.168.1.100
192.168.1.1
ICMP
Echo (ping) request
  
Frame  3 (74 bytes on wire, 74 bytes captured)
  
Ethernet  II, Src: 00:13:d4:1f:c1:38 (00:13:d4:1f:c1:38), Dst: 00:40:05:db:0f:72  (00:40:05:db:0f:72)
  
Internet  Protocol, Src: 192.168.1.100 (192.168.1.100), Dst: 192.168.1.1 (192.168.1.1)
  
Internet  Control Message Protocol
  
  
注解:PC1 192.168.1.100 向 PC3 192.168.1.1发送PING请求
  
  
No.
  
Time
Source
Destination
Protocol
Info
  
4
  
0.000794
192.168.1.1
192.168.1.100
ICMP
Echo (ping) reply
  
Frame  4 (74 bytes on wire, 74 bytes captured)
  
Ethernet  II, Src: 00:40:05:db:0f:72 (00:40:05:db:0f:72), Dst: 00:13:d4:1f:c1:38  (00:13:d4:1f:c1:38)
  
Internet  Protocol, Src: 192.168.1.1 (192.168.1.1), Dst: 192.168.1.100 (192.168.1.100)
  
Internet  Control Message Protocol
  
  
注解:PC3应答PC1的PING请求
  
  
No.
  
Time
Source
Destination
Protocol
Info
  
5
  
0.987877
192.168.1.100
192.168.1.1
ICMP
Echo (ping) request
  
Frame  5 (74 bytes on wire, 74 bytes captured)
  
Ethernet  II, Src: 00:13:d4:1f:c1:38 (00:13:d4:1f:c1:38), Dst: 00:40:05:db:0f:72  (00:40:05:db:0f:72)
  
Internet  Protocol, Src: 192.168.1.100 (192.168.1.100), Dst: 192.168.1.1 (192.168.1.1)
  
Internet  Control Message Protocol
  
  
注解:PC1 192.168.1.100 向 PC3 192.168.1.1发送PING请求
  
  
No.
  
Time
Source
Destination
Protocol
Info
  
6
  
0.988264
192.168.1.1
192.168.1.100
ICMP
Echo (ping) reply
  
Frame  6 (74 bytes on wire, 74 bytes captured)
  
Ethernet  II, Src: 00:40:05:db:0f:72 (00:40:05:db:0f:72), Dst: 00:13:d4:1f:c1:38  (00:13:d4:1f:c1:38)
  
Internet  Protocol, Src: 192.168.1.1 (192.168.1.1), Dst: 192.168.1.100 (192.168.1.100)
  
Internet  Control Message Protocol
  
  
注解:PC3应答PC1的PING请求
  
在PC2上抓到的报文:
表格 3PC1 PING PC3时在PC2上抓到的报文:
  
No.
  
Time
Source
Destination
Protocol
Info
  
1
  
0.000000
00:13:d4:1f:c1:38
Broadcast
ARP
Who has 192.168.1.1?  Tell 192.168.1.100
  
Frame  1 (60 bytes on wire, 60 bytes captured)
  
Ethernet  II, Src: AsustekC_1f:c1:38 (00:13:d4:1f:c1:38), Dst: Broadcast  (ff:ff:ff:ff:ff:ff)
  
Address  Resolution Protocol (request)
  
  
注解:PC2 上收到PC1发出的ARP广播报文
  
通过以上实验,大家发现广播报文,并了解广播报文的特性,向除发送端口外的其它广播域中的端口广播,即广播域中的设备都能接收到广播Frame。完全证实大家的推论是正确的。
2.3  实验二:广播报文的另种形式,flood
是不是广播报文目的MAC地址一定是全1呢?大家接着上面的实验再做个实验。
在PC1上PING下PC3,拨掉PC3接在交换机上的网上再马上拨上(目的是清掉交换机MAC地址表中学到的PC3的MAC地址),在PC1上再次PING PC3,同时打开PC1和PC2上的的抓包工具。
PC1上的PING命令过程如下:
亚星游戏官网-yaxin222
表格 4在PC1上第二次PINGPC3时在PC1抓到的报文
  
No.
  
Time
Source
Destination
Protocol
Info
  
7
  
1.987850
192.168.1.100
192.168.1.1
ICMP
Echo (ping) request
  
Frame  7 (74 bytes on wire, 74 bytes captured)
  
Ethernet  II, Src: AsustekC_1f:c1:38 (00:13:d4:1f:c1:38), Dst: AniCommu_db:0f:72  (00:40:05:db:0f:72)
  
Internet  Protocol, Src: 192.168.1.100 (192.168.1.100), Dst: 192.168.1.1 (192.168.1.1)
  
Internet  Control Message Protocol
  
  
注解:由于PC1中第已PING过PC3,已经缓存了PC3的ARP,本次PING未发ARP请求,直接把目的MAC
  封装进报文发送出去。
  
  
No.
  
Time
Source
Destination
Protocol
Info
  
8
  
1.988249
192.168.1.1
192.168.1.100
ICMP
Echo (ping) reply
  
Frame  8 (74 bytes on wire, 74 bytes captured)
  
Ethernet  II, Src: AniCommu_db:0f:72 (00:40:05:db:0f:72), Dst: AsustekC_1f:c1:38  (00:13:d4:1f:c1:38)
  
Internet  Protocol, Src: 192.168.1.1 (192.168.1.1), Dst: 192.168.1.100 (192.168.1.100)
  
Internet  Control Message Protocol
  
  
注解:PC1收到来自PC3的PING应答报文
  
在PC1抓包的同时, 在PC2上抓到的报文
表格 5 PC1 PING PC, 在PC2上抓到的Flood报文
  
No.
  
Time
Source
Destination
Protocol
Info
  
2
  
48.364774
192.168.1.100
192.168.1.1
ICMP
Echo (ping) request
  
Frame  2 (74 bytes on wire, 74 bytes captured)
  
Ethernet  II, Src: AsustekC_1f:c1:38 (00:13:d4:1f:c1:38), Dst: AniCommu_db:0f:72  (00:40:05:db:0f:72)
  
Internet  Protocol, Src: 192.168.1.100 (192.168.1.100), Dst: 192.168.1.1 (192.168.1.1)
  
Internet  Control Message Protocol
  
  
注解:在PC2上居然抓到了目的MAC是PC3的报文!!!
  
PC1 PING PC3,正常应答,PC2上抓到了PC1发出的单播PING报文,为什么呢?按理这个目的MAC地址是明确的,交换机应该直接转发给PC3上的端口。
大家再回想下交换机的工作原理,交换机收到目的MAC明确的单播报文时,查询MAC地址表,找到则直接单独转发到对应的端口,如果未找到则广播。在PC1 第二次PING PC3前,拨插了PC3的网线,导致交换掉清掉了PC3的MAC记录,当交换机收到PC1的PING报文时,未能找到PC3的MAC,于是交换机就广播出该报文,这就是Flood,泛洪,广播报文的另种形式。
2.4  实验三:广播报文的危害,环路等因素引发广播风暴
广播报文带来便捷的通信方式,如使用不当,会有什么问题吗?做个如下实验
在交换机上直接用网线将两个端口A和B连在一起,在PC1 上试着随便PING个地址,如192.168.1.2,同时打开抓包工具。
表格 6出现广播风暴时在PC1瞬间抓到大量的广播包
PC1瞬间抓到无数的广播包
  
        
No.Time        Source         Destination     Protocol    Info
   
1 0.000000    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
2 0.000013    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
3 0.000023    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
4 0.000967    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
5 0.000972    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
6 0.001377    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
7 0.001381    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
8 0.001957    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
9 0.001962    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
10    0.002314    00:74:04:e5:65:0c  Broadcast    ARP Who has 192.168.1.2?  Tell 192.168.1.1
   
…………………………….
   
…………………………….
   
……………………………..
   
No.      Time       Source             Destination    Protocol    Info
   
  27938 4.559987    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27939 4.560092    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27940 4.560291    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27941 4.560364    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27942 4.560449    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27943 4.560523    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27944 4.560877    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27945 4.560961    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27946 4.561160    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27947 4.561244    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27948 4.561328    00:74:04:e5:65:0c     Broadcast      ARP         Who has 192.168.1.2?  Tell 192.168.1.1
   
  27949 4.561434    00:74:04:e5:65:0c     Broadcast      ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27948 4.561328    00:74:04:e5:65:0c     Broadcast0c        ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
  27949 4.561434    00:74:04:e5:65:0c     Broadcast0c        ARP      Who has 192.168.1.2?  Tell 192.168.1.1
   
   
   

参考文献
<<TCP/IP协议卷三>> wireshark帮助说明 中兴8220操作手册

举报本楼

本帖有 14 个回帖,您需要登录后才能浏览 登录 | 注册
您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系大家 |网站地图  

GMT+8, 2024-11-16 16:52 , Processed in 0.883487 second(s), 17 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部
XML 地图 | Sitemap 地图