• HOME
  • DOCS
  • WTF
  • TECH
  • LIFE
  • PAGES
    • ARCHIVE
    • TAGS
    • ABOUT
    • FRIENDS
    • RSS
  • TOOLS
    • GEO
    • RANDOM()
    • GOO.GL
    • CSS HEART
Aj's Blog

记录时间溜走的瞬间和折腾过的那些事

用路由做个在线的家庭电源检查

2013-11-28  TECH  checker  php  power  router  

应用场景:家里/办公室停电不知停多久,出去活动但有事没处理完,想知道什么时候恢复供电,这个小东西就用得上了

demo: http://www.6zou.net/tools/power.php

基本要求:路由自动拨号、动态域名、支持php的空间

一、开启远程管理

路由一般都带有远程管理功能,配置好端口和允许管理的远程ip

也就是支持php空间的服务器ip

二、开启动态dns

推荐花生壳,路由上线后自动更新路由ip和域名配对

这样php空间就可以获得路由的实时ip了

三、php脚本

<?php
$domain = 'xxx.vicp.net'; //花生壳域名 -> 路由实时IP
$port   = ':81';          //路由远程管理端口
$pwd    = 'admin:admin';  //路由管理用户名、密码
$ip     = gethostbyname($domain);
$url    = 'http://'.$pwd.'@'.$ip.$port.'/userRpm/StatusRpm.htm?rnd='.rand(0,1000); //TP-LINK路由状态页

$res    = file_get_contents( $url );
//以下内容根据不同路由状态页来提取状态,TP-LINK状态存于javascript数组中
$res    = substr( $res , 0 , strpos($res, '<META') );
$res    = '<script>'.substr( $res , strpos($res, 'var wanPara') , strlen($res) );
$res    = preg_replace( '/192\.168\.0\.1/', $ip, $res );
echo $res;
?>
<script language="javascript">
if( typeof(wanPara) != 'undefined' )
{
    var ip = wanPara[2];
    var live = wanPara[12];
    document.write( ip+'
'+live ); } else { document.write( 'router off line.' ); } </script>
下一篇:   HTA+JS桌面应用:电影自动评分工具(豆瓣API)
上一篇:   科普:JScript与JavaScript的区别
暂无评论

Cancel reply