用PHP实现对网络通断的图形化监测

单位里一帮电脑小白,在使用电脑(全部在局域网内)过程中老出现这问题那问题,维护电脑时经常需要跑来跑去,于是想到偷懒使用远程桌面来做,统一将超级管理员用户收回,他们只使用普通管理员或标准用户权限。但在使用过程中又出现了几个问题:一是每次要得到他们的IP地址,有人连这个也不会看;二是不能确定网络是否链接上,需要使用一次ping命令。于是想到自己开发一个监测网络通断性的小程序,从而做到一目了然。为了方便在任何电脑上随时看,决定使用PHP来写,然后把程序放在我的电脑www目录内。

————————————————知识分割线————————————————

这里需要一点使用PHP调用系统命令的知识:

  php的内置函数exec、system都可以调用系统命令(dos和shell命令),passthru和escapeshellcmd也可以。

  使用这两个函数就需要在php.ini中将安全模式关闭,否则为了安全期间,php是不让调用系统命令的。

  exec --- 执行外部程序

  语法:string exec (string command [,array &output [,int &return_var]])

  参数:1.command:系统命令;

     2.output:数组,被命令输出的每一行填满;

     3.return_var:状态,成功返回0,失败返回1.

  system --- 执行外部程序并且显示输出

  语法:string system (string command [,int &return_var])

  不同点:

  exec可以把执行的结果全部返回到$output数组里,$return_var是执行状态,0为成功,1为失败;

  system不需要提供$output函数,它可以直接把结果返回来并且打印出来,同意$return_var是执行的状态码,0为成功,1为失败。

————————————————知识分割线————————————————

下面是代码:(DCTYPE这里就不写了)

<head>

<title>监测网络通断性<tittle>

<style>

.box{

height:100px;

width:100px;

float:left

line-height:50px;

text-align:center;

}

.t{

height:5px;

width:100%;

clear:both;

}

</style>

</head>

<?php>

$ip[0]=‘192.168.1.1‘;

$ip[1]=‘192.168.1.2‘;

$ip[2]=‘192.168.1.3‘;

$ip[3]=‘192.168.1.4‘;

......//可以将所有电脑的IP地址按顺序存在一个数组内

for($i=0;$<36;$i++){

if(!($i%6))//没6个换行一次,方便看

{

echo "<div class=‘t‘></div>"

}

exec("ping $ip[$i] -n 1",$output, $status);

if($status)//网络不通

{

echo "<div class=‘box‘ style=‘background:red‘>";

echo "$ip[$i]<br>网络不通“;

echo "</div>"

}

if(!$status)//网络通畅

{

echo "<div class=‘box‘ style=‘background:green‘>";

echo "$ip[$i]<br>网络通畅";

echo "</div>"

}

?>

这样只要访问该网页,就能一目了然的知道网络的通断性如何了(代码并非直接从源文件中复制出的,使用请注意)

				
时间: 2024-10-22 15:35:33

用PHP实现对网络通断的图形化监测的相关文章

vrops8.0测试网络通断

参考文档:https://kb.vmware.com/s/article/2097039 curl -v telent://10.0.1.xxx:587 原文地址:https://blog.51cto.com/sampsondotqiu/2460891

测试网络通断

tcp 服务端运行 nc -ulp {端口} 客户端运行 nc -u {ip} {端口} 在客户端输入字符,如果连接正常,服务端会同样输出 原文地址:https://www.cnblogs.com/8000cabbage/p/12283197.html

网络通: 免费一键内网穿透 方便配置

越来越多的用户没有自己的独立公网IP,在发布一些应用或者网站到外网的时候就是一件很麻烦的事情.请注意,我说的独立公网 IP并不是说一定要静态公网IP.拨号上网动态IP也不一定不可以.我们要的就是网关出口一定要是公网IP,假如你的网关路由器WAN 口是一个内网IP肯定不行.说明一点,ipv4 的内网IP 保留范围: Class A 10.0.0.0-10.255.255.255.Class B 172.16.0.0- 172.31.255.255.Class C 192.168.0.0-192.1

网络通---一款新的端口映射优秀工具

越来越多的用户没有自己的独立公网IP,在发布一些应用或者网站到外网的时候就是一件很麻烦的事情.请注意,我说的独立公网IP并不是说一定要静态公网IP.拨号上网动态IP也不一定不可以.我们要的就是网关出口一定要是公网IP,假如你的网关路由器WAN口是一个内网IP肯定不行.说明一点,ipv4 的内网IP 保留范围: Class A 10.0.0.0-10.255.255.255.Class B 172.16.0.0-172.31.255.255.Class C 192.168.0.0-192.168.

Azure进阶攻略丨Azure网络通不通,PsPing&amp;PaPing告诉你答案

很多时候,为了解决一些问题,要查各种文档,很麻烦你造吗!做「伸手党」又容易被鄙视,这时候就需要用到[Azure 进阶攻略]啦!特此,我们推出关于 Azure 常用操作指南的系列文章,每篇涉及一个 Azure 使用过程中的问题,简明扼要直击重点,纯干货内容帮你快速搞定 Azure 使用难题和障碍,只需一两分钟阅读,你就可以继续愉快地翱翔云端~ 在技术人员和网络工程师的世界中,有一些众所周知的排错方式,例如: -你先 Ping 一下某某计算机,看它开着没, -我可以 Ping 通路由器,但 Ping

python如何判断和对端Linux主机是网络通

我们经常要用Python脚本通过paramiko方式登录到远端Linux系统上去执行一些脚本操作,但是如果远端主机很多,这里我们最好可以判断一下本地和远端网络是否为通,通过一下方式可以实现判断网络是否为通. 1 #!/user/bin/python 2 import subprocess 3 def ping (ip): 4 cmd = 'ping -n 1 %s' %ip 5 outfile = 'ping.tmp' 6 ret = subprocess.call(cmd,shell=Ture

windows如何使用github官网下载的图形化界面客户端

1.先去官网下载一个客户端.很简单.有一个download下载来就行了.下载的时候我下了很多次,都停住不动了,有一天突然就又能下载了就下过来了.下载完有下面2个图标.我们点击右边的.左边的是用指令来操控的. 2.打开github然后登陆.点击左上角的+号.操作如下.所谓仓库就类似于存放你的代码的一个文件夹. 3.把你要存放的代码等等,要放入github中的东西都给移到你上一步建立的local path那个文件夹里面. 4.移到里面之后上面的change会出现一个小点, 5.在下面Summary里

入侵拿下DVBBS php官网详细过程(图)

几 个月前,DVBBS php2.0暴了一个可以直接读出管理员密码的sql注入漏洞,当时这个漏洞出来的时候,我看的心痒,怎么还会有这么弱智的漏洞,DVBBS php2.0这套代码我还没仔细看过,于是5月中旬我down下来粗略看了下,接着我花了三天的时间,拿下p.dvbbs.net,即动网php的官方网 站,并得到了webshell.总的来说,这次入侵凭的是二分技术加一分运气. 一. SQL注入漏洞: 晚上检查了好久,终于在topicother.php中发现了一处sql注入漏洞,但是并不像前段时间

网安思维导图

详情见下载中心链接http://down.51cto.com/data/2336727(无下载豆,手动点个赞就OKay) 可一键输入验证码收藏....