Как контролировать непрерывность моего соединения в течение 24 часов
У меня плохой провайдер, и мой интернет отключается примерно на 10 секунд каждые 2 часа или около того и возвращается. Согласно моему провайдеру, это исправлено, но они говорят это уже несколько недель.
У меня вопрос, есть ли способ контролировать, отключен ли мой интернет на 24 часа?
Я пробовал пинговать, но вряд ли это надежно, и мне придется установить перед ПК, чтобы отслеживать.
Существует ли программное обеспечение, которое может контролировать непрерывность моего интернет-соединения в течение 24 часов подряд?
Ваша помощь будет высоко ценится по этому вопросу.
Спасибо, что нашли время, чтобы прочитать это.
4 ответа
Вы упомянули использование ping
и вы абсолютно правы, только вам не нужно смотреть на экран и ждать проблем с подключением. Отправить вывод ping
в файл, и Ctrl+C
прекратить пинг, когда вы чувствуете, что прошло достаточно времени.
ping 8.8.8.8 > log.txt
8.8.8.8 - общедоступный DNS Google. Команда ping напишет в log.txt
в любом текущем рабочем каталоге.
В качестве альтернативы, здесь есть простой и быстрый способ добавления меток времени к каждому эхо-тесту с помощью Powershell, при условии, что вы используете версию Windows с PowerShell. Когда ты break
и решите запустить его позже, он добавится в ваш лог-файл.
$hostToPing = '8.8.8.8'
$logPath = "C:\Users\username\Desktop\temp\pinglog.txt"
$alwaysTrue = 1
while($alwaysTrue -eq "1")
{
# refresh the timestamp before each ping attempt
$theTime = Get-Date -format g
# refresh the ping variable
$result = ping $hostToPing -n 1
if ($result -like '*reply*')
{
Write-Output "$theTime - pass - connection to $hostToPing is up" | Out-File $logPath -append
}
else
{
Write-Output "$theTime - fail - connection to $hostToPing is down" | Out-File $logPath -append
}
Sleep 1
echo ' '
}
Вот что я делал, чтобы отслеживать непрерывность 2 компьютеров в кампусе. Все это делается в.bat-файле без powershell. Первые 3 строки просто устанавливают подсказку, поэтому я не ищу длинный путь к файлу. Затем я перезаписываю файл pingtest.txt в той же папке, что и.bat (. \ Pingtest.txt,. \ Означает текущую папку). ping -n 1
отправляет 1 пинг и >>
добавляет вывод в конец файла, а также текущее время %time%
, timeout /t 5 > nul
это ожидание в секундах, затем оно перезапускается.
Когда вы наблюдаете столько, сколько хотите. Закройте окно cmd и найдите.txt для 100 или по таймеру, и он покажет вам все пинги, которые имели 100% потерю или тайм-аут.
@echo off
prompt timer$F > nul
@echo on
echo Tracking starts at %time% > .\pingtest.txt
@echo off
:start
ping -n 1 address1 >> .\pingtest.txt
echo %time% >> .\pingtest.txt
ping -n 1 address2 >> .\pingtest.txt
echo %time% >> .\pingtest.txt
timeout /t 5 > nul
goto :start
Спасибо всем, что нашли время ответить на мой вопрос, извините за поздний ответ, это из-за моего очень плохого провайдера.
Я пошел дальше и сохранил тест ping в текстовый файл, как предложено @root, и это сработало отлично.
Оказывается, он режет даже чаще, чем я думал, поэтому просто переключился на другого провайдера:)
Еще раз спасибо всем, что нашли время ответить на мой вопрос.
Чтобы добавить к ответу root, вам нужно выполнить "ping -t 8.8.8.8 > log.txt", иначе он будет пинговать только четыре раза, а затем остановится. '-t' заставит его пинговать постоянно.
Дополнительная информация: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/ping
На днях я читал статью об Ars Technica, где они критиковали Comcast за то, что он дурацкий провайдер. Кто-то придумал Raspberry Pi, который чирикнул бы их скорость, если она существенно меньше, чем рекламируется.
В комментарии к статье кто-то упомянул SmokePing (в DSL Reports тоже есть FAQ). Я буду смотреть на это программное обеспечение, и, похоже, вы тоже захотите. Похоже, это облачный сервис, который выходит в вашу сеть, но, основываясь на этом комментарии, я подумал, что вы могли бы настроить его локально, чтобы увидеть исходящие метрики.