openwrt检测局域网内设备是否在线脚本

openwrt检测局域网内设备是否在线脚本

phoneonline.sh

#!/bin/sh


##########################################################################################
function urlencode() {
    if ! command -v curl >/dev/null 2>&1; then echo -E "$1"; return; fi
    local str="$1"
    curl -Gso /dev/null --data-urlencode "var=$str" "http://localhost/?" -w "%{url_effective}\n" | sed 's/^.*var=//'
}
function writeCache(){
  CACHE_KEY="$1" ; CMD_URL="http://kv.netsite.cc/setx"
  URL_DATA="k=${CACHE_KEY}&v=$(urlencode "$2")"
  curl -L -m 5 -s -o /dev/null -d "$URL_DATA" "$CMD_URL"
}
function readCache(){
  CACHE_KEY="$1" ; CMD_URL="http://kv.netsite.cc/get"
  REQ_URL="$CMD_URL?key=${CACHE_KEY}"
  curl -L --connect-timeout 3 -m 5 -s "$REQ_URL"
}
##########################################################################################

ONLINE_SAVE_KEY='example_key'

while true; do
  if grep -E "192.168.2.158\s+0x1\s+0x2" /proc/net/arp > /dev/null 2>&1; then
    echo "iPhone real online"
    writeCache "$ONLINE_SAVE_KEY" "true"
  else
    echo "iPhone disconnect"
    writeCache "$ONLINE_SAVE_KEY" "false"
  fi
  sleep 1
done


Copyright: 采用 知识共享署名4.0 国际许可协议进行许可

Links: https://zwc365.com/2026/06/02/openwrt-jian-ce-ju-yu-wang-nei-she-bao-shi-fou-zai-xian-jiao-ben

Buy me a cup of coffee ☕.