温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Linux—Shell记录局域网中各个主机的MAC地址

发布时间:2020-08-01 03:15:51 来源:网络 阅读:1414 作者:wenzhongxiang 栏目:安全技术

shell-记录局域网中各个主机的MAC地址

要求:

编写一个名为getarp.sh的脚本,记录局域网中各个主机的MAC地址。

保存到/etc/ether文件中,若此文件已存在,应先进行备份。

每行一条记录,第1列为IP地址,第3列为对应的MAC地址。

Linux—Shell记录局域网中各个主机的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脚本,内容如下:

截图如下:

Linux—Shell记录局域网中各个主机的MAC地址

内容如下:

   #!/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信息

Linux—Shell记录局域网中各个主机的MAC地址

 

欢迎关注微信公众号:小温研习社

Linux—Shell记录局域网中各个主机的MAC地址

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI