shell-记录局域网中各个主机的MAC地址
要求:
编写一个名为getarp.sh的脚本,记录局域网中各个主机的MAC地址。
保存到/etc/ether文件中,若此文件已存在,应先进行备份。
每行一条记录,第1列为IP地址,第3列为对应的MAC地址。
分析:
假定要扫描的网段是192.168.10.0,将192.168.10.赋值给变量NADD,作为检测地址的前缀;
使用arping -c 2 -w 1 向检测主机的IP发送ARP请求,记录MAC地址;
用while循环语句检测目标主机并记录MAC地址,这里检测的主机地址范围为1~124;
1、用vi创建一个名为getarp.sh脚本,内容如下:
截图如下:
内容如下:
#!/bin/bash
NADD="192.168.10."
FILE="/etc/ethers"
[ -f $FILE ] && /bin/cp -f $FILE $FILE.old
HADD=1
while [ $HADD -lt 124 ]
do
arping -c 2 -w 1 ${NADD}${HADD} &> /dev/null
if [ $? -eq 0 ]
then
arp -n | grep ${NADD}${HADD} | awk '{print $1,$3}' >> $FILE
fi
let HADD++
done
3、给脚本getarp.sh增加x权限
4、执行脚本,查看检测到的MAC信息
欢迎关注微信公众号:小温研习社
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。