OpenWRT上判斷客戶端在線個數,有兩種方式:
一。通過DHCP client分配列表 (缺點:client列表會根據超時時間刷新,一般超時時間為12h,)
二。通過arp緩存列表/proc/net/arp(缺點:arp刷新時間默認為30s,這個時間的誤差可以接受。)
主要講解第二種方法:
Flags: 0x0是找不到這台主機了。
0x2是主機還在線。
IP address HW type Flags HW address Mask Device
192.168.235.1 0x1 0x2 00:01:41:80:e3:e9 * eth0.2
10.1.1.191 0x1 0x0 c4:6a:b7:6f:7a:db * br-lan
10.0.2.148 0x1 0x2 c0:3f:d5:31:d8:b2 * br-lan2
所以根據這個flags就可以判斷這台主機是否在線,統計非0的就好了。
Qtopia運行在OpenWRT上的相關說明 http://www.linuxidc.com/Linux/2013-07/87624.htm
基於Tiny210v2編譯OpenWrt http://www.linuxidc.com/Linux/2013-07/87621.htm