12 примера за команда Ping за тестване на вашата мрежа

Сподели

Пинг е проста, широко използвана помощна програма за междуплатформени мрежи за тестване дали даден хост е достъпен на интернет протокол (IP) мрежа. Работи чрез изпращане на серия от Протокол за контролни съобщения в Интернет (ICMP) ECHO_REQUEST съобщения до целевия хост и чака an ICMP ехо отговор (или ECHO_RESPONSE).

Можете да стартирате ping тест, за да установите дали вашият компютър може да комуникира с друг компютър (целеви хост); помага ви да определите:

  • Дали целевият хост е достъпен (активен) или не.
  • За да измерите времето, необходимо на пакетите да стигнат до целевия хост и обратно до вашия компютър (времето за отиване и връщане (rtt) при комуникация с целевия хост) и
  • Загубата на пакети се изразява като процент.

Неговият изход е списък с отговори от целевия хост заедно с времето, необходимо на последния пакет да достигне целевия хост и обратно до вашия компютър.

Той също така показва статистическо обобщение на теста, обикновено включващо броя на предадените и получените пакети, процента на загуба на пакети; минималното, максималното, средното време за обиколка и стандартното отклонение на средната стойност (mdev). В случай, че ping тестът е неуспешен, ще видите съобщения за грешка като изход.

Примери за команда Ping в Linux

В тази статия ще обясним 12 практичен ping команда примери за тестване на достъпността на хост в мрежа.

1. Ping домейн или IP адрес

Можете да стартирате прост пинг тест, за да видите дали целевият хост www.google.com е достижима или не. Можете също да използвате IP адрес вместо името на домейна, както е показано.

$ ping www.google.com
OR
$ ping 172.217.27.196

Примерен изход:

ping www.google.com
PING www.google.com (172.217.27.196) 56(84) bytes of data.
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=1 ttl=111 time=5.01 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=2 ttl=111 time=4.75 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=3 ttl=111 time=5.37 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=4 ttl=111 time=4.99 ms
^C
--- www.google.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 4.751/5.030/5.373/0.222 ms
...

От резултатите от горната команда, пинг беше успешен и нямаше загубени пакети. Едно важно нещо, което трябва да вземете под внимание, в резултата от ping тест е времето в края на всеки ping отговор.

Ако приемем, че извършвате ping тестване на вашите сървъри, тогава стойността тук има голямо значение, в зависимост от типа приложение, което изпълнявате на сървър.

Ако, например, имате уеб приложение, при което една потребителска заявка води до толкова много заявки към база данни(и) за генериране на резултати в потребителския интерфейс, тогава по-ниското време за ping до този конкретен сървър предполага, че се предават повече данни без забавяне и обратното е вярно.

2. Ping ехо заявка

Можете да посочите броя на ECHO_REQUESTs да бъде изпратен, след което излиза ping, използвайки -c флаг, както е показано (в този случай ping тестът ще спре след изпращане 5 пакети).

$ ping -c 5 www.google.com

PING www.google.com (172.217.27.196) 56(84) bytes of data.
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=1 ttl=111 time=4.31 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=2 ttl=111 time=4.35 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=3 ttl=111 time=4.06 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=4 ttl=111 time=5.20 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=5 ttl=111 time=4.41 ms

--- www.google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 4.064/4.464/5.195/0.383 ms

3. Задайте Ping Interval Timeout

The -i флаг ви позволява да зададете интервали в секунди между изпращането на всеки пакет, стойността по подразбиране е една секунда.

$ ping -i 3 -c 5 www.google.com

PING www.google.com (172.217.27.196) 56(84) bytes of data.
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=1 ttl=111 time=5.71 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=2 ttl=111 time=6.19 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=3 ttl=111 time=5.39 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=4 ttl=111 time=7.34 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=5 ttl=111 time=4.77 ms

--- www.google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 12014ms
rtt min/avg/max/mdev = 4.768/5.879/7.341/0.863 ms

4. DoS атака с Ping Flooding, известна още като Ping of Death

За да определите реакцията на вашата мрежа при условия на високо натоварване, можете да стартирате „наводнение пинг”, който изпраща заявки възможно най-бързо, използвайки -f превключвател. Само root може да използва тази опция, в противен случай използвайте sudo команда за получаване на root права.

$ sudo ping -f www.google.com
OR
$ sudo ping -f -i 3 www.google.com	#specify interval between requests 

PING www.google.com (172.217.163.36) 56(84) bytes of data.
.......................................................................................................................................................................................^C
--- www.google.com ping statistics ---
2331 packets transmitted, 2084 received, 10% packet loss, time 34095ms
rtt min/avg/max/mdev = 29.096/29.530/61.474/1.417 ms, pipe 4, ipg/ewma 14.633/29.341 ms

5. Ping излъчване на LAN

Можете да активирате ping за излъчване, като използвате -b опция, която ще получи отговор от всички IP адреси, свързани към вашата LAN мрежа.

$ ping -b 192.168.0.0

6. Задайте Ping TTL стойност

За да ограничите броя на мрежовите скокове (TTLВреме за живот), които сонди преминават, използвайте -t знаме. Можете да зададете произволна стойност между 1 и 255; различните операционни системи задават различни настройки по подразбиране.

Всеки рутер, който получава пакета, изважда поне 1 от броя и ако броят все още е по-голям от 0рутерът препраща пакета към следващия хоп, в противен случай го отхвърля и изпраща ICMP отговор обратно към вашия компютър.

В този пример, TTL е надвишено и пинг тестът е неуспешен, както е показано на екранната снимка.

$ ping -t 10 www.google.com
Задайте Ping TTL Count
Задайте Ping TTL Count

7. Задайте размер на Ping пакета

Размерът на пакета по подразбиране трябва да е достатъчен за ping тест, но можете да го промените, за да отговаря на вашите специфични нужди от тестване. Можете да посочите размера на полезния товар в броя байтове, като използвате -s опция, която ще доведе до общ размер на пакета от предоставената стойност плюс 8 допълнителни байтове за ICMP заглавката.

$ ping -s 1000 www.google.com

8. Задайте Ping Preload

Ако се добави предварително зареждане, ping изпраща толкова много пакети, които не чакат отговор. Имайте предвид, че само коренът може да избере предварително зареждане от повече от 3в противен случай използвайте sudo команда за получаване на root права.

$ sudo ping -l 5 www.google.com 

9. Задайте Ping Timeout

Също така е възможно да зададете времето за изчакване на отговор в секунди, като използвате -W опция, както е показано.

$ ping -W 10 www.google.com

10. Задайте Ping Timeout в секунди

За да зададете a таймаут за секунди, преди ping да излезе, независимо колко пакета са изпратени или получени, използвайте -w знаме.

$ ping -w 5 www.google.com

11. Ping Debug ICMP пакети

The -d опция ви позволява да активирате подробностите за IP пакета за отстраняване на грешки, както е показано.

$ ping -d www.google.com

12. Пинг подробен изход

Можете да активирате подробен изход, като използвате -v флаг, както следва.

$ ping -v www.google.com

Забележка: Пинг не е задължително да се използва за тестване на мрежова свързаност, той просто ви казва дали даден IP адрес е активен или неактивен.

Обикновено се използва заедно с програмата traceroute, но MTR – модерен инструмент за мрежова диагностика съчетава функционалността на пинг и traceroute и предлага много допълнителни функции.

За изчерпателен списък с мрежови инструменти вижте: Linux Network Management, Troubleshooting, and Debugging

Резюме

Пинг е много често срещан метод за отстраняване на проблеми с достъпността на хостове в мрежа. В тази статия обяснихме 12 практически примери за команда ping за тестване на достъпността на мрежово устройство. Споделете вашите мисли с нас чрез формата за коментари по-долу.

Публикациите се превеждат автоматично с google translate

Loading


Сподели