OpenWRT 获取在线设备信息的方法

有两种方式:

              一。通过DHCP client分配列表 

                       root@OpenWrt:/# cat /tmp/dhcp.leases 
                       946732871 f0:43:47:1a:xx:xx 192.168.88.196 Honor_8 01:f0:43:47:1a:bc:xx
                       946742704 08:10:7a:51:xx:xx 192.168.88.184 STAR10005760 01:08:10:7a:51:85:xx     

                     可以获取到hostname  mac ip   

            二、获取在线状态

              第一种方法:通过arp缓存列表/proc/net/arp(缺点:arp刷新时间默认为30s,这个时间的误差可以接受。                         

                               Flags:

                               0x0是找不到这台主机了。

                                0x2是主机还在线。             

             第二种方法:arping 因为有些设备会用防火墙屏蔽ping命令,而无法屏蔽arping命令

                      #define ARPING_CMD         "arping %s(通过DHCP CLIENT获取的ip) -I br-lan -f -w 1"
                      #define  REPLY_OK     "Unicast reply from %s"

             第三种方法:iwconfig xxx(wifi网卡名称)assoclist|grep dBm|awk -F " " '{print $1}'| tr '[A-Z]' '[a-z]'

                        可以查看到在线设备信息的mac地址,速度快,无副作用。

猜你喜欢

转载自blog.csdn.net/caofengtao1314/article/details/81946040
今日推荐