频道栏目
首页 > 系统 > Linux > 正文

linux之ARP脚本

2017-06-19 09:34:51      个评论    来源:  
收藏   我要投稿

linux之ARP脚本

一.ARP协议

地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议。

二.ARP数据报形式

这里写图片描述
第一次ARP请求是以太网目的地址为0xFFFFFFFFFFFF为广播路由所在以太网上所以主机都应答,Mac层根据第三个字段帧类型判断将数据交个上层的具体协议其中0x0800代表IP协议0x0806代表ARP协议0x0835代表RARP协议。其实后面的28字节才是真正ARP协议内容,前14个字节为Mac帧的首部。ARP协议的个字段代表的含义顾名思义其中OP代表是ARP请求还是ARP应答其中1代表ARP请求2代表ARP应答

三.实例

例1:Linux中用ping指令来测试网络的连通行

比如测试主机是否能连接到www.
ping -c1 www.

结果图:
这里写图片描述

#/bin/bash

i=1
count=0

while [ $i -le 254 ]
do  
     if [$count -gt  20 ];then
         count=0
         sleep 2
     fi  
     ping -c1 "192.168.58.$i" &
     let i++
     let count++
done

再执行以下指令:chmod u+x text.sh//因为text.sh是不可执行文件,故要使用chmod

结果图:

上一篇:CentOS7 搭建vsftpd详细教程
下一篇:mysleep 的两种实现
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 |

版权所有: 88bifa.com--致力于做实用的IT技术学习网站