最重点:
《1》二层网络中,数据包到达路由器,是读取以太网头部,先记录源地址+端口(MAC表),再检查根据目的mac找到出端口,而后转发出去;而主机收到数据包后,是经过读取数据包的arp报文来获取目的IP及mac;
《2》arp是后到位准。
《3》同一网络下,A换了mac地址后,经过发送arp请求(广播包)B地址来刷新B的arp表;可是C有两种状况:(1)原来没有A的arp缓存,丢弃arp request包;(2)原来有A的arp缓存,更新。
----------------------------------------------缓存
《1》ARP介绍:
ARP:Address Resolution Protocol,解决地址映射问题的协议,只有知道目的逻辑地址对应的硬件地址,才能发送出去。注意ARP只能适用于IPV4,而IPV6由于ARP安全问题,经过ICMPV6替代ARP发送邻居探索消息。
arp只适合多点网络,而不适于点对点网络,例如PPP、GRE、IPSEC、FC等
《2》ARP报文:安全
硬件类型:表示硬件地址类型,1为以太网;
协议类型:表示要映射的协议地址类型,例如0X0800(IP)、
硬件地址长度:通常值为6,死记。
协议地址长度:通常值为4,死记。
opcode操做码:四种操做类型,ARP请求为1,ARP应答为2,RARP请求为3和RARP应答为4
发送端硬件地址:
发送端IP地址:
目的硬件地址:
目的IP:
《3》arp高速缓存:若是每发一个IP数据报都要一次ARP请求以此肯定MAC地址,那将会形成没必要要的网络流量。所以,一般的作法是把获取到的mac地址与IP地址的映射关系缓存起来。
《4)工做原理:(复制)网络
1) 应用程序FTP客户端调用函数g e t h o s t b y n a m e(3)把主机名(bsdi)转换成32 bit的IP地址。
这个函数在D N S(域名系统)中称做解析器,咱们将在第 1 4章对它进行介绍。这个转换
过程或者使用DNS,或者在较小网络中使用一个静态的主机文件( /e t c / h o s t s)。
2) F T P客户端请求T C P用获得的I P地址创建链接。
3) T C P发送一个链接请求分段到远端的主机,即用上述 I P地址发送一份 I P数据报(在第
1 8章咱们将讨论完成这个过程的细节)。
4) 若是目的主机在本地网络上(如以太网、令牌环网或点对点连接的另外一端) ,那么I P数
据报能够直接送到目的主机上。若是目的主机在一个远程网络上,那么就经过 I P选路
函数来肯定位于本地网络上的下一站路由器地址,并让它转发 I P数据报。在这两种情
况下, I P数据报都是被送到位于本地网络上的一台主机或路由器。
5) 假定是一个以太网,那么发送端主机必须把 32 bit的I P地址变换成48 bit的以太网地址。
从逻辑I n t e r n e t地址到对应的物理硬件地址须要进行翻译。这就是 A R P的功能。
A R P原本是用于广播网络的,有许多主机或路由器连在同一个网络上。
6) A R P发送一份称做 A R P请求的以太网数据帧给以太网上的每一个主机。这个过程称做广
播,如图 4 - 2中的虚线所示。 A R P请求数据帧中包含目的主机的 I P地址(主机名为
b s d i),其意思是“若是你是这个 I P地址的拥有者,请回答你的硬件地址。 ”
图4-2 当用户输入命令“ ftp 主机名”时ARP的操做
7) 目的主机的 A R P层收到这份广播报文后,识别出这是发送端在寻问它的 I P地址,因而
发送一个A R P应答。这个A R P应答包含I P地址及对应的硬件地址。
8) 收到A R P应答后,使A R P进行请求—应答交换的 I P数据报如今就能够传送了。
9) 发送I P数据报到目的主机。
《4》特殊arp:
(1)免费arp:
做用:若是主机更改硬件地址,经过免费arp告诉同一网络下的主机;
经过发送广播包,确认地址是否有人在使用;
《2》代理arp:
做用:适用于没有路由功能的网络设备,但不建议使用。函数