ARP:地址解析协议

  ARP背后的基本概念,网络接口有一个硬件地址(一个48bit的值,标识不同的以太网或令牌环网接口)。知道主机的IP地址并不嗯呢该让内核发送一帧数据给主机。必须要知道目的端的硬件地址才能发送数据。

  ARP的功能就是在32bit的IP地址和采用不同网络技术的硬件地址之间提供动态映射。(就是通过IP地址找到以太网地址。)

  下图是tftp通信过程中抓取的ARP请求及应答报文。

  虽然在应答报文中的字段“以太网源地址”和“发送端源地址”一样的,但是应该明白的是,在应答报文传输的过程中一台网源地址是可能变化的。故,发送端源地址才是整个ARP通信最终需要的地址

 1 3、ARP:Who has 192.168.1.2? Tell 192.168.1.5
 2 3    31.841367    RealtekS_34:16:f4    Broadcast    ARP    42    Who has 192.168.1.2? Tell 192.168.1.5
 3 
 4     0000   ff ff ff ff ff ff 00 e0 4c 34 16 f4 08 06 00 01
 5     0010   08 00 06 04 00 01 00 e0 4c 34 16 f4 c0 a8 01 05
 6     0020   00 00 00 00 00 00 c0 a8 01 02
 7 
 8     ff ff ff ff ff ff     #以太网广播地址                              
 9     00 e0 4c 34 16 f4     #以太网源地址                                
10     08 06                 #帧类型:ARP请求或应答                       
11     00 01                 #硬件类型:以太网地址                        
12     08 00                #协议类型:IP地址                            
13     06                    #硬件地址长度-MAC地址                        
14     04                    #协议地址长度-IP地址                         
15     00 01                #1:ARP请求 2:ARP应答 3:RARP请求 4:RARP应答   
16     00 e0 4c 34 16 f4     #发送端以太网地址                            
17     c0 a8 01 05           #发送端:IP 192.168.1.5                        
18     00 00 00 00 00 00     #目的以太网地址                              
19     c0 a8 01 02          #目的IP地址:192.168.1.2                     
20 
21 4、ARP:192.168.1.2 is at 08:00:27:00:01:92    
22 4    31.842162    CadmusCo_00:01:92    RealtekS_34:16:f4    ARP    60    192.168.1.2 is at 08:00:27:00:01:92
23 
24     0000   00 e0 4c 34 16 f4 08 00 27 00 01 92 08 06 00 01
25     0010   08 00 06 04 00 02 08 00 27 00 01 92 c0 a8 01 02
26     0020   00 e0 4c 34 16 f4 c0 a8 01 05 00 00 00 00 00 00
27     0030   00 00 00 00 00 00 00 00 00 00 00 00
28 
29     00 e0 4c 34 16 f4    #以太网广播地址                            
30     08 00 27 00 01 92    #以太网源地址                              
31     08 06                #帧类型:ARP请求或应答                     
32     00 01                #硬件类型:以太网地址                      
33     08 00                #协议类型:IP地址                          
34     06                   #硬件地址长度-MAC地址                      
35     04                   #协议地址长度-IP地址                       
36     00 02               #1:ARP请求 2:ARP应答 3:RARP请求 4:RARP应答 
37     08 00 27 00 01 92    #发送端以太网地址                          
38     c0 a8 01 02          #发送端:IP 192.168.1.5                    
39     00 e0 4c 34 16 f4    #目的以太网地址                            
40     c0 a8 01 05          #目的IP地址:192.168.1.2                   
41     
42     00 00 00 00 00 00    #这是什么字段?
43     00 00 00 00 00 00 
44     00 00 00 00 00 00          

ARP代理

1、代理ARP

  上图中gemini发送ARP请求给140.252.1.29(sun),gemini比较网络号(140.252)和子网号(1),因而在以太网中发送ARP请求。路由器netb识别该IP属于它的一个拨号主机,于是把自己的以太网接口地址140.252.1作为硬件地址来应答。这个过程对于140.252.1子网上的主机来说是透明的,主机sun实际上是在路由器netb后面进行配置。

  在gemini上执行arp命令,发现同一个子网140.252.1上的netb和IP地址映射的硬件地址是相同的。

  总的来说,就是路由器netb完成了ARP代理功能

2、SLIP拨号IP

  NetBlazer通过分组到达的串行线路接口确定发送分组的拨号主机。所有的拨号主机使用同一个IP地址140.252.1.183作为SLIP链路的目的地址。

3、免费ARP

  发送自己IP地址的ARP请求,一般发生在引导过程中。

  作用:

  1)、确定是否有另一个主机设置了相同的IP;

  2)、如果发送方的硬件地址变化了,那么这个分组的其他主机的高速缓存中的数据就能进行更新了。

ARP欺骗的3种基本方式:

  1. 主机C冒充网关欺骗主机B;

  2. 主机c冒充主机B欺骗网关;

  3. 主机C同时欺骗主机B和网关,实现数据中转,并监听到所有主机B的数据。

猜你喜欢

转载自www.cnblogs.com/mofei004/p/8994237.html