ARP报文
硬件类型:指明了发送方想知道的硬件接口类型,以太网的值为1;
协议类型:指明了发送方提供的高层协议类型,IP为0x0800(16进制);
硬件地址长度和协议长度:指明了硬件地址和高层协议地址的长度,这样ARP报文就可以在任意硬件和任意协议的网络中使用;
操作类型:用来表示这个报文的类型,ARP请求为1,ARP响应为2,RARP请求为3,RARP响应为4;
发送方硬件地址(0-3字节):源主机硬件地址的前3个字节;
发送方硬件地址(4-5字节):源主机硬件地址的后3个字节;
发送方IP地址(0-1字节):源主机硬件地址的前2个字节;
发送方IP地址(2-3字节):源主机硬件地址的后2个字节;
目标硬件地址(0-1字节):目的主机硬件地址的前2个字节;
目标硬件地址(2-5字节):目的主机硬件地址的后4个字节;
目标IP地址(0-3字节):目的主机的IP地址。
抓包如下:
ARP请求包:
ARP回复包
硬件类型是:以太网
协议类型是:IPv4
硬件长度是:6
协议长度是:4
选项码是:Request(请求) Reply(回复)
如果是请求,那么使用00:00:00:00:00:00来表示任意mac地址
arp请求:
PC与同网段的某设备通信,知道其IP地址,不知道MAC地址。
发送ARP请求其MAC地址,设备收到ARP请求包会先记录源MAC地址
然后将自己的MAC地址发送过去。于是在PC的ARP缓存表会动态写入ARP条目
arp代理:
arp请求是广播包,只能在局域网内传播,若PC想请求局域网外的MAC地址
则会将arp广播包发给网关,网关尝试与目标主机发送arp请求。如果请求成功
网关会替代目标主机返回arp Reply,返回的MAC地址仍是网关的MAC地址。
从而使得目标mac地址被隐藏
arp攻击:
攻击者主动发送ARP reply包给目标PC,该包伪装了某个设备的ip地址。
而mac地址是攻击者的,PC收到这个包后会覆盖正常的arp映射~!!
导致PC发给某个设备的流量都会跑去攻击者那里,从而PC的流量被控制。
免费arp
当更改或配置IP地址时,会主动发送ARP广播请求自己填写的IP地址
若某台设备发现ARP的目的IP是自己的IP,自己的ARP表不会受影响
因为是静态绑定的了,然后回复给更改IP的主机,主机收到就明白有IP
地址冲突了。