浅谈ARP

一:ARP的原理:
我们知道以太网设备比如网卡都有自己全球唯一的MAC地址,它们是以MAC地址阿里传输以太网数据包的,但是它们却识别不了IP包中的IP地址,所以我们在以太网中进行IP通信的时候就需要一个协议来建立IP地址与MAC地址的对应关系,以使数据包能发到一个确定的地方去,这就是ARP(地址解析协议)

1:ARP数据报格式
在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址,而数据报包首先是被网卡接受到再去处理上层协议,如果接受到的数据包的硬件地址与本机不符,直接丢弃,因此在通讯前必须获得目的主机的硬件地址,ARP协议就是起到这个作用.

栗子:
源主机发出ARP请求,询问”IP地址是192.168.0.1的主机的硬件地址是多少”,并将这个请求广播到本地网段(以太网首部的硬件地址填FF:FF:FF:FF;FF:FF表示广播),目的主机接受到广播的ARP请求,发现其中的IP地址与本机相符,则发送一个ARP应答数据包给源主机,将自己的硬件地址填写在应答包中.

2:ARP数据报的格式表示如下:
这里写图片描述

源MAC地址,目的MAC地址在以太网首部和ARP请求中个出现一次,,硬件类型指链路层网络类型,1为以太网,协议来行值要装换的地址类型,,op字段为1表示ARP请求,op字段为2表示ARP应答.

3:栗子:
请求的过程:
这里写图片描述

以太⽹首部:⽬目的主机采⽤用⼴广播地址,源主机的MAC地址是00:05:5d:61:58:a8,上层协议类
型0x0806表⽰示ARP。

由于以太⽹网规定最⼩小数据长度为46字节,ARP帧长度只有28字节,因此有18字节填充位,填充位
的内容没有定义,与具体实现相关。
应答过程:
这里写图片描述
始终记住:发送端是源,接受端是目的,然后对照图就会容易些.
二:几条常见的指令:
1:输入指令ifconfig -a
或者是in link show可以查看mac地址
这里写图片描述
2:linux下抓取网页命令的指令
(1):默认系统没有tcpdump的
(2):这里我们可以yum直接安装
yum install -y tcpdump

这里写图片描述
三:arp命令:
arp命令用于操作主机的arp缓冲区,它可以显示arp缓冲区的所有条目,删除指定的条目或者添加静态ip地址与MAC地址对应的关系
1:$arp-v详细模式
这里写图片描述
2:arp-n显示数字地址
这里写图片描述
3:arp-a查看主机的IP和MAC对应关系,默认显示全部
这里写图片描述
4:arp-d删除指定主机的IP和MAC对应关系
可以自己验证啊
5:arp-i只显示指定网卡的IP和MAC对应关系
这里写图片描述
四:验证arp抓取对应主机的ip/mac地址
我们写一段shell脚本

#!/bin/bash
head=192.168.0
i=0
count=0
while [ $i -le 254 ]
do
    if [ $count -gt 20 ];then
        count=0
        sleep 1
    fi
    ping -c1 "${head}"".$i" &
    let i++
    let count++
done
wait
echo "========================================="
arp -a | grep -v incomplete
echo "========================================="

在后台抓取的有效的ip,网络号为192.168.0
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值