ARP和RARP

合集下载

ARP和RARP

ARP和RARP

ARP欺骗
其实,此起彼伏的瞬间掉线或大面积 的断网大都是ARP欺骗在作怪。
ARP攻击
ARP攻击主要是存在于局域网网络 中,局域网中若有一个人感染ARP木马, 则感染该ARP木马的系统将会试图通过 “ARP欺骗”手段截获所在网络内其它 计算机的通信信息,并因此造成网内其 它计算机的通信故障。
4.2 RARP 协议
ARP分组(以以太网为例) 分组(以以太网为例) 分组
以太网报头中的前两个字段是以太网的源地址和目的地址 两个字节长的以太网帧类型表示后面数据的类型。对于 两个字节长的以太网帧类型表示后面数据的类型。对于A R P请求或应答来说,该字段的值为 x 0 8 0 6。 请求或应答来说, 请求或应答来说 该字段的值为0 。 协议指请求分组询问协议地址(OX0800是I P地址) 地址) 协议指请求分组询问协议地址( 是 地址 硬件地址指所要映射的硬件地址( 是以太网地址 是以太网地址) 硬件地址指所要映射的硬件地址(1是以太网地址) 硬件地址长度和协议地址长度分别指出硬件地址和协议地 址的长度,以字节为单位。对于以太网上 地址的 地址的A 址的长度,以字节为单位。对于以太网上I P地址的 R P 请求或应答来说,它们的值分别为 和 。 请求或应答来说,它们的值分别为6和4。
ARP高速缓存和 高速缓存和ARP命令 高速缓存和 命令
每一项的生存时间一般为20分钟 每一项的生存时间一般为 分钟 ARP命令 显示和修改 命令: 显示和修改ARP缓存 命令 缓存 ARP -s inet_addr eth_addr [if_addr] ARP -d inet_addr [if_addr] ARP -a [inet_addr] [-N if_addr] -a 显示当前的 显示当前的ARP缓存信息,可以指定网络地址 缓存信息, 缓存信息 -g 跟-a一样 一样. 一样 -d 删除由 删除由inet_addr指定的主机记录 可以使用 来删除所有主机 指定的主机记录. 指定的主机记录 可以使用* 来删除所有主机. -s 添加主机,并将网络地址跟物理地址相对应,这一项是永久生效 添加主机,并将网络地址跟物理地址相对应, 的。

ARP协议和RARP协议

ARP协议和RARP协议

ARP协议和RARP协议协议名称:ARP协议和RARP协议一、介绍ARP(Address Resolution Protocol)协议和RARP(Reverse Address Resolution Protocol)协议是计算机网络中用于解决IP地址与MAC地址之间映射关系的协议。

ARP协议用于将IP地址解析为对应的MAC地址,而RARP协议则相反,将MAC地址解析为对应的IP地址。

二、ARP协议1. 定义ARP协议是一种网络层协议,用于解析IP地址与MAC地址之间的映射关系。

当主机需要发送数据到目标主机时,会首先查询本地ARP缓存表,若未找到对应的MAC地址,则会发送ARP请求广播到本地网络中的所有主机,请求目标主机的MAC地址。

目标主机收到ARP请求后,会发送ARP响应包回复请求主机,包含自己的MAC地址。

请求主机收到响应包后,将目标主机的IP地址和MAC地址映射关系存储到本地ARP缓存表中,以便下次直接访问。

2. 工作原理(1) ARP请求:发送ARP请求广播,包含源主机的IP地址和MAC地址。

(2) ARP响应:目标主机收到ARP请求后,发送ARP响应包,包含目标主机的IP地址和MAC地址。

(3) ARP缓存:请求主机收到ARP响应包后,将目标主机的IP地址和MAC地址映射关系存储到本地ARP缓存表中。

3. 优点(1) 简单有效:ARP协议是一种简单有效的地址解析协议,能够快速解析IP地址与MAC地址之间的映射关系。

(2) 动态更新:ARP协议能够动态更新本地ARP缓存表,确保地址映射关系的实时性。

4. 缺点(1) 安全性:ARP协议缺乏安全机制,容易受到ARP欺骗攻击,导致IP地址与MAC地址映射关系被篡改。

(2) 效率:ARP协议在大规模网络中广播ARP请求,会消耗大量带宽资源。

三、RARP协议1. 定义RARP协议是一种逆向的地址解析协议,用于将MAC地址解析为对应的IP地址。

RARP协议通常用于无盘工作站等设备,这些设备没有存储IP地址,需要通过RARP协议从服务器获取IP地址。

ARP协议和RARP协议

ARP协议和RARP协议

ARP协议和RARP协议ARP(Address Resolution Protocol)和RARP(Reverse Address Resolution Protocol)是计算机网络中常用的两种地址解析协议。

它们有着不同的功能和用途。

ARP协议是一种用于将IP地址解析为物理地址(MAC地址)的协议。

它通过在局域网中广播一个ARP请求包来查找目标设备的物理地址。

当主机想要与目标设备进行通信时,它需要知道目标设备的物理地址。

ARP协议会将目标设备的IP地址包装在ARP请求包中发送给所有设备,目标设备会收到这个请求包并根据自己的IP地址判断是否是目标设备,如果是就会回复一个ARP应答包,将自己的物理地址发送给请求的主机。

主机收到应答包后就知道了目标设备的物理地址,可以向该地址发送数据。

RARP协议与ARP协议相反,它是一种将物理地址解析为IP地址的协议。

RARP协议在局域网中广播一个RARP请求包,请求包包含主机的物理地址,子网将根据物理地址来确定IP地址,并将IP地址封装在RARP应答包中返回给主机。

RARP协议主要用于无盘工作站或者磁盘less的设备,这些设备存储着自身的物理地址,但是却没有存储IP地址。

当这些设备启动时,它们使用RARP协议来获取IP地址。

RARP协议在现代网络中并不常用,因为大多数设备都可以自己设置IP地址,或者通过DHCP协议来获取IP地址。

RARP协议的局限性在于它需要在局域网中进行广播,这会增加网络负载并且使得网络变得复杂。

因此,RARP协议在现代网络中被较少使用。

总结而言,ARP协议和RARP协议是用于地址解析的协议,ARP协议将IP地址解析为物理地址,而RARP协议则将物理地址解析为IP地址。

ARP协议在局域网中广播ARP请求包,RARP协议则广播RARP请求包。

这些协议的作用是使得网络设备能够进行通信。

然而,由于网络技术的发展,现代网络中更普遍使用的是其他更高级的协议来分配IP地址,如DHCP协议。

第三章ARP与RARP

第三章ARP与RARP
14
ARP回顾
• 当某主机要向以太网中另一台主机发送I P数据时, 它首先根据目的主机的I P地址在A R P高速缓存 中查询相应的以太网地址, A R P高速缓存是主 机维护的一个I P地址到相应以太网地址的映射表。
• 如果查到匹配的结点,则相应的以太网地址被写 入以太网帧首部,数据报被加入到输出队列等候 发送。
}; #define SHA(p) (&p->ar_addrs[0]) #define SPA(p) (&p->ar_addrs[p->ar_hwlen]) #define THA(p) (&p->ar_addrs[p->ar_hwlen + p->ar_prlen]) #define TPA(p) (&p->ar_addrs[(p->ar_hwlen*2) + p->ar_prlen]) Notation --- S:source, T:Target; H:Hardware, P:Protocol; A:Address
28
CRC 4
PAD 18
PAD
18
10
ARP数据包格式
struct arp { u_short ar_hwtype; /* hardware type */ u_short ar_prtype; /* protocol type */ u_char ar_hwlen; /* hardware address length */ u_char ar_prlen; /* protocol address length */ u_short ar_op; /* ARP operation (see list above) */ u_char ar_addrs[1]; /* sender and target hw & proto addrs */

ARP协议和RARP协议 (2)

ARP协议和RARP协议 (2)

ARP协议和RARP协议协议名称:ARP协议和RARP协议一、引言ARP(地址解析协议)和RARP(逆地址解析协议)是计算机网络中常用的协议,用于将网络层的IP地址映射到数据链路层的物理地址。

本协议旨在详细描述ARP协议和RARP协议的功能、工作原理、数据包格式以及应用场景。

二、ARP协议1. 功能ARP协议用于获取目标IP地址对应的物理地址(MAC地址),以便进行数据链路层的通信。

2. 工作原理- 当主机A要发送数据到目标主机B时,首先检查本地ARP缓存中是否存在目标IP地址对应的物理地址。

如果存在,则直接将数据包发送给目标主机B。

- 如果ARP缓存中不存在目标IP地址对应的物理地址,则主机A会发送一个ARP请求广播消息到局域网上的所有主机,问询目标IP地址对应的物理地址。

- 目标主机B收到ARP请求后,会将自己的物理地址封装在ARP响应消息中发送给主机A。

- 主机A收到ARP响应后,将目标IP地址和物理地址存储在本地ARP缓存中,并将数据包发送给目标主机B。

3. 数据包格式ARP请求消息和ARP响应消息的数据包格式如下:- 以太网帧头部- ARP协议头部- 硬件类型:表示使用的物理网络类型,如以太网。

- 协议类型:表示上层网络协议类型,如IPv4。

- 硬件地址长度:表示物理地址长度,如MAC地址长度为6字节。

- 协议地址长度:表示IP地址长度,如IPv4地址长度为4字节。

- 操作码:表示ARP请求(1)或者ARP响应(2)。

- 发送方硬件地址:发送方的物理地址。

- 发送方协议地址:发送方的IP地址。

- 目标硬件地址:目标主机的物理地址。

- 目标协议地址:目标主机的IP地址。

4. 应用场景ARP协议广泛应用于局域网中,用于解析目标主机的物理地址。

它可以匡助路由器和交换机等设备进行数据包转发,提高网络传输效率。

三、RARP协议1. 功能RARP协议用于根据物理地址(MAC地址)获取对应的IP地址,主要用于无盘工作站等设备无法自行获取IP地址的场景。

ARP和RARP

ARP和RARP

ARP 和RARP§3-1 引言⏹在网络级上,主机和路由器用它们的逻辑地址(IP地址)来标识。

⏹分组都要通过物理网络才能到达这些主机和路由器。

⏹在物理级上,主机和路由器用它们的物理地址(MAC地址)来标识。

⏹这就表示将分组交付到一个主机或路由器需要两级地址:逻辑地址和物理地址。

需要他们之间的互相映射。

⏹可以使用静态和动态映射。

⏹静态映射是创建一个表,他将一个逻辑地址与物理地址关联起来,这个表就存储在网络上的每一个机器上。

这种做法局限性比较大。

⏹在动态映射中,每当一个机器知道两个地址(逻辑地址或物理地址)中的一个时,就可使用协议将另一个地址找出来。

⏹有两个协议来完成动态映射:地址解析协议(ARP)和逆地址解析协议(RARP)。

⏹ARP和RARP使用单播和广播物理地址。

§3-2 ARP⏹在任何时候,当主机或路由器有数据报要发送给另一个主机或路由器时,它必须有接收站的逻辑(IP)地址。

但是IP数据报必须封装成帧才能通过物理网络。

⏹这就表示,发送站必须有接收站的物理地址。

⏹ARP将一个IP地址与其物理地址关联起来。

⏹任何时候当主机或路由器需要找出另一个主机或路由器在此网络上的物理地址时,他就发送一个ARP查询分组。

⏹这个分组包括发送站的物理地址和IP地址,以及接收站的IP地址。

⏹因为发送站不知道接收站的物理地址,查询就在网络上广播。

⏹每一个在网络上的主机或路由器都接受和处理这个ARP查询分组,但只有意图中的接受者才识别其IP 地址,并发回ARP 响应分组。

⏹这个分组直接用单播发送给查询者,并使用接受到的查询分组中所用的物理地址。

请求系统A 系统B我要查找一个结点的物理地址,其IP 地址为:141.23.56.23a. ARP 请求用广播发送我是你要找的结点。

我的物理地址为:A46EF45983AB回答系统A系统Bb. 回答用单播发送§3-3 ARP 分组格式⏹ARP 分组是直接封装在数据链路帧中。

什么是ARP-RARP协议

什么是ARP-RARP协议

什么是ARP/RARP协议一、ARP/RARP协议地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。

主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。

地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。

ARP命令可用于查询本机ARP缓存中IP 地址和MAC地址的对应关系、添加或删除静态对应关系等。

ARP工作流程举例:主机A的IP地址为192.168.1.1,MAC地址为0A-11-22-33-44-01;主机B的IP地址为192.168.1.2,MAC地址为0A-11-22-33-44-02;当主机A要与主机B通信时,地址解析协议可以将主机B的IP地址(192.168.1.2)解析成主机B的MAC地址,以下为工作流程:(1)根据主机A上的路由表内容,IP确定用于访问主机B的转发IP地址是192.168.1.2。

然后A主机在自己的本地ARP缓存中检查主机B的匹配MAC地址。

(2)如果主机A在ARP缓存中没有找到映射,它将询问192.168.1.2的硬件地址,从而将ARP请求帧广播到本地网络上的所有主机。

源主机A的IP地址和MAC地址都包括在ARP请求中。

本地网络上的每台主机都接收到ARP请求并且检查是否与自己的IP地址匹配。

如果主机发现请求的IP地址与自己的IP地址不匹配,它将丢弃ARP请求。

(3)主机B确定ARP请求中的IP地址与自己的IP地址匹配,则将主机A 的IP地址和MAC地址映射添加到本地ARP缓存中。

ARP与RARP

ARP与RARP

5
18
ARP – 目的主机不在本地网络
6
19
ARP
免费ARP :是指系统在启动时,设备对自己的IP地址进行一次 ARP请求。目的是:
(1)检测同一网段上有无与自己相同的IP;
(2)设备更新网卡后,发这样一个ARP请求,使同网段上其 他设备能及时更新他们的ARP缓冲。
如何查看ARP缓存表 :ARP缓存表是可以查看的,也可以添加 和修改。 在命令提示符下,输入“arp -a”就可以查看ARP缓存表中的内 容了。
1
用“arp -d”命令可以删除ARP表中某一行的内容;
用“arp -s”可以手动在ARP表中指定IP地址与MAC地址的对 应
20
ARP带来的问题
ARP广播增加了媒体开销 ARP映射表带来来安全隐患--ARP spoofing
21
ARP带来的问题
ARP欺骗(spoofing)
4
发送端以太网地址:为请求方的MAC地址。 发送端协议地址(IP地址):为请求方的IP地址。 目的端以太网地址:请求操作时,为空0;应答操作时,为被 请求方的MAC地址 。 目的端协议地址:为被请求方的IP地址。
1
5
ARP – Mapping IP to MAC Addresses
ARP过程分为两种:
(1)目的在本地 (2)目的在外网
6
ARP – 目的主机在本地网络
ARP的工作过程: (1)首先,每台主机都会在自己的ARP缓冲区 (ARP Cache)中建立一个 ARP列表,以表示IP地址和MAC地址的对应关系。 (2)当源主机需要将一个数据包发送到目的主机时,会首先检查自己 ARP 列表中是否存在该 IP地址对应的MAC地址,如果有就直接将数据包发送到这 个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此 目的主机对应的MAC地址。此ARP请求数据包里包括源主机的IP地址、硬件 地址以及目的主机的IP地址。 (3)网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是 否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同,该主机首 1 先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已 经存在该IP的信息,则将其覆盖,然后给源主机发送一个 ARP响应数据包, 告诉对方自己是它需要查找的MAC地址; (4)源主机收到这个ARP响应数据包后,将得到的目的主机的IP地址和 MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。如果源 主机一直没有收到ARP响应数据包,表示ARP查询失败。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Example: ARP Request
Example: ARP Request
6.1.4 Proxy ARP
“Honest”
Hided
Q: In the same IP network or not?
Answer
RFC 925: Multi-LAN Address Resolution MultiExplicit subnets subnets( ARP) Transparent subnets(Extended ARP)
.3向.35发送IP分组 .3向.35发送IP分组 发送IP .35向.3发送IP分组 .35向.3发送IP分组 发送IP
IP发送失败 IP发送失败
ARP失败 ARP失败
.3广播请求.35的ARP分组, .3广播请求.35的ARP分组,R不转发广播 广播请求.35 分组
IP发送成功 I2:
IP
D
sMAC=MAC2,dMAC=MAC3 sMAC=MAC sMAC=MACA,dMAC=MAC1 IP 不在本网内, sIP=IPA,dIP=IPD 4,dMAC=MACD 不在本网内, dMAC=广播 广播, dMAC=广播,Target_IP=IP1 sIP=IPA,dIP=IPD sIP=IPsIP=IPA,dIP=IPD 分组由R1转发 分组由R1 R1转发 A,dIP=IPD ARP A IP C request IP1 IP2 IP3 IP4 IPA,MACA MAC MAC2 MAC3 MAC4 IPC,MACC 1 ARP ARP IPB,MACB
.35广播请求.62的ARP分组 .35广播请求.62的ARP分组 广播请求.62
6.1.5 Gratuitous ARP
Duplicate address test
A 202.115.12.34 1. ARP request: sIP = tIP = 202.115.12.34
W. Stevens: 《TCP/IP Illustrated Volume 1: Protocol》 The Protocol》
Network
To: To:电子科技大学 成都市建设北路2 成都市建设北路2段4号
Issues
A B C D E
A送往E的分组需封装在Ethernet帧中传送 送往E的分组需封装在Ethernet Ethernet帧中传送
IP地址: IP地址:全局性 地址 物理地址: 物理地址:本地性 Ethernet Frame: Frame:
Example: ARP Request Packet
Example: ARP Reply Packet
6.1.3 ARP Process
A IPA,MACA B IPB,MACB IP1 MAC1 R1 IP2 MAC2 IP3 MAC3 R2 IP4 MAC4 C IPC,MACC D IPD,MACD
MAC address
ARP
RARP
LANs
MANs
WANs
6.1.1 ARP Operation
I’m looking for the physical address of a node whose IP address is: 1.2.3.5 Request Broadcast A: 1.2.3.1 Request Request I am the node you are looking for, and my physical address is: 0005.5D06.1418 Unicast Request Reply E: 1.2.3.5
Example
A host with IP address 130.23.43.20 and physical address 0xB23455102210 has a packet to send to another host with IP address 130.23.43.25 and physical address 0xA46EF45983AB. The two hosts are on the same Ethernet network. Show the ARP request and reply packets encapsulated in Ethernet frames.
2. ARP reply: sIP = tIP = 202.115.12.34 202.115.12.34
B 3. Disable local interface: Startup or 202.115.12.34 Change IP address
6.2 ARP Package
ARP Cache
解析器
( 1)
FTP TCP ARP 以太网 驱动程序 ARP
( 6)
IP地址 IP地址
TCP
( 3) ( 4)
ARP
( 5) ( 7)
IP
IP
以太网 驱动程序
以太网 驱动程序
IP Packet and ARP Packet
No binding IP packet IP packet IP packet ARP request ARP reply IP IP IP IP
B: 1.2.3.2
C: 1.2.3.3
D: 1.2.3.4 MAC address 0005.5D06.1418
A’s ARP Cache: Cache:
IP address 1.2.3.5
bind
用户输入命令“ftp 主机名”时的操 主机名” 用户输入命令“ 作
主机名 主机名
目的 FTP
( 2)
Encapsulation of ARP packet
The byte order of ARP packet
byte 2 2 1 1 2 HType PType HL PL OP 6 sMAC 4 sIP 6 tMAC 4 tIP
Example: Example:Ethernet frame
byte 6 6 源MAC 2 46 ~ 1500 46 28 bytes 4 目的MAC 目的MAC 0x0806 ARP Packet pad FCS Packet 类型
request ARP B reply request request
B
IP4 MAC4 C IPC,MACC D IPD,MACD MAC Address MACB MACA MACA
R1
R2
IPB,MACB IP Address IPB IPA IPA
A’s ARP Cache: Cache: B’s ARP Cache: Cache: R1’s ARP Cache: Cache:
Host( Host(Windows XP) XP)
C:\> arp –a C:\ Interface: 202.115.12.34 --- 0x2 Internet Address Physical Address 202.115.12.33 00-90-27-a7-98-41 00-90-27-a7-98202.115.12.47 00-90-27-1d-d9-94 00-90-27-1d-d9202.115.12.62 00-90-27-1a-67-e7 00-90-27-1a-67Type dynamic dynamic dynamic
Binding IP packet
6.1.2 ARP Packet
Hardware Type Hardware address len Protocol address len Protocol Type Operation Request 1, Reply 2
Sender hardware address example, Ethernet) (For example,6 bytes for Ethernet) Sender protocol address example, IP) (For example,4 bytes for IP) It is not filled in a request Target hardware address example, Ethernet) (For example,6 bytes for Ethernet) Target protocol address example, IP) (For example,4 bytes for IP)
Discussion
.33 .34 .35 .1
设想: 设想: 代替.35 .35向 R代替.35向.3 返回ARP ARP应答 返回ARP应答 —— Proxy ARP 925) (RFC 925) .100 .201
R
.62 .3 200.6.8.0/24 Main network
200.6.8.32/27 Hided network
Case 1:A 1:
B
Case 2:A 2:
D
In same IP network Lab 2
In different IP network
Case 1:A 1:
sMAC=MACA,dMAC=MACB sIP=IPA,dIP=IPB dMAC=广播 广播, dMAC=广播,Target_IP=IPB sIP=IPA,dIP=IPB A ARP IP request IP1 IP2 IP3 IPA,MACA MAC MAC3 1 ARP MAC2 ARP IP
RFC 1027: Using ARP to Implement Transparent Subnet Gateways
Routers: Explicit subnets Hosts: Transparent subnets
“ From the host point of view, there are no subnets, and their physical networks are simply one big IP network. ”
相关文档
最新文档