Windows
簡單的網際網路連接正常執行時間監視器
我只需要監控網際網路連接中斷的頻率 - 以及持續多長時間。我打算只寫一點每分鐘 ping 8.8.8.8 的 python,但我認為必須有一個實用程序來執行此操作 - 並生成一個很好的報告
但這是一個具有簡單 SOHO 類型連接的分支機構,沒有 SNMP 路由器,只有 Windows,必須在非專用於任務的台式電腦上執行。
不需要知道容量、ping 延遲或任何東西 - 只需報告它停機超過幾秒鐘的次數即可向有線電視公司揮手。
我用Pingdom 反過來做。免費賬戶,一張支票。ping 路由器的 WAN ip 地址,一切正常。你會得到一份每月正常執行時間報告,你可以對有線電視公司大喊大叫。
我不知道任何實用程序,但我用 perl 為自己做了一個簡單的程式碼:
#!/usr/bin/perl use Net::Ping; use POSIX qw/strftime/; if (-e '/var/run/net_test.pid') { print "net_test already running.\n"; exit; } else { system "touch /var/run/net_test.pid"; } my $host = "www.google.com"; my $ping = Net::Ping->new('icmp'); my $result = $ping->ping($host,2); if ($result != 1) { $format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is not available..."; $run = `echo $format >> /var/log/virtua_net`; while ($result != 1) { $result = $ping->ping($host,2); sleep 60; } $format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is back..."; $run = `echo $format >> /var/log/virtua_net`; } else { $format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is ok..."; $run = `echo $format >> /var/log/virtua_net`; } $ping->close(); system "rm -rf /var/run/net_test.pid" if (-e "/var/run/net_test.pid"); exit;
它的作用是每次執行時都會嘗試 ping google,然後它會列印到一個文件,如果它得到回复或沒有與時間一起,這樣你就可以稍後檢查從什麼時間到什麼時間網際網路不可用。
如果你喜歡它,我可以做一些小的改動以在 Windows 中使用,而你確實需要安裝 ActivePerl。
唯一需要的更改是在 Windows 上可能不同的路徑和命令。