Във всеки тип организация, независимо от нейната инфраструктура и за много потребители, е естествено, че в даден момент от ежедневието се налага използването на помощни програми, които са проектирани да валидират, оптимизират и наблюдават различни аспекти на системата.
Една от тези области е свързана с мрежата, която е от съществено значение не само за достъп до интернет, но също така е от съществено значение, в случай на корпоративна среда, така че ролите, процесите и услугите на сървърите да работят по правилния начин. . Сред помощните програми, които ни позволяват централизиран контрол върху състоянието на мрежата, имаме командата ping, така че Solvetic ще анализира какво представлява тази команда и как работи, за този урок ще използваме Ubuntu 18.04.
Какво представлява командата pingКомандата ping е разработена като мрежова помощна програма, която е достъпна за повечето операционни системи, чиято мисия е основно да потвърди дали хостът е достъпен в мрежа с интернет протокол (IP), тоест с ping ще бъде възможно да се провери дали компютър може да комуникира чрез мрежата, локална или външна, с друг компютър или мрежово устройство.
За да може целият този процес да се извърши правилно, командата ping изпраща поредица от съобщения, наречени ECHO_REQUEST, от протокола за контролни съобщения в Интернет (ICMP) до целевия хост и продължава да чака ICMP ехо отговор, наречен ECHO_RESPONSE.
Въз основа на броя на отговорите, които се връщат, и колко време отнемат да се върнат, ще имаме информация, предоставена от командата ping за изпълнение на задачите за администриране и контрол на мрежата. Ако дестинационният компютър е активен, е възможно да се измери времето, необходимо на пакетите да достигнат целевия хост и да се върнат към нашия компютър, това се нарича TTL (Time to Live) и е жизненоважно да се провери състоянието на мрежата на устройствата между локалното и отдалеченото оборудване, също така загубата на някакъв пакет се изразява като процент.
Командата ping използваНай -честите приложения на командата ping са:
- Проверка и анализ на състоянието на мрежата и множество целеви хостове.
- Проследявайте и изолирайте хардуерни и софтуерни проблеми, свързани с мрежата.
- Изпълнете мрежово тестване, измерване и управление.
1. Как да използвате командата PING Linux
Командата ping се изпълнява чрез изпращане на една дейтаграма в секунда и този изход се отпечатва като един изходен ред за всеки получен отговор. В тези резултати можем да видим времената на връщане и статистически данни за загуби на пакети, а също и кратко обобщение е показано в края на изпълнението на командата. Командата ping ще приключи, когато програмата изтече или когато бъде получен сигнал SIGINT, по подразбиране командата ping ще продължи да изпраща ехо заявки до целевия компютър, докато не бъде получено прекъсване на действие (Ctrl-C).
Синтаксис на командата pingИма няколко параметъра за използване с командата ping, общият синтаксис е следният:
ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count] [-w timeout] [- R] [-S srcaddr] [-p] [-4] [-6] цел [/?]
Променливите за използване са:
-TТази опция се грижи за пинг на целта, докато тя не бъде принудена да спре да използва клавишите Ctrl-C.
-да сеТази опция разрешава, ако е възможно, името на хоста на дестинация на IP адрес.
-n бройС тази опция е възможно да зададете броя на ICMP ехо заявките за изпращане, опциите варират от 1 до 4294967295. Командата ping ще изпрати 4 по подразбиране, ако параметърът -n не се използва.
-l размерТази опция ви позволява да зададете размера, в байтове, на пакета за ехо заявка в диапазон от 32 до 65 527. Командата ping ще изпрати 32 -байтова ехо заявка, ако не използвате опцията -l в командата.
-FТази опция се грижи за предотвратяване на фрагментирането на ICMP ехо заявките от рутери между изходния и целевия компютър. Опцията -f най -често се използва за отстраняване на неизправности на максималната единица за предаване на пътя (PMTU) в локални мрежи.
-i TTLТази опция задава стойността на Time to Live (TTL), нейната максимална стойност е 255.
-v TOSС тази опция ще бъде възможно да се зададе стойност на Тип услуга -Тип на услугата (TOS).
-r бройИзползвайки тази опция, можем да определим броя на скоковете между изходния компютър и целевия компютър или устройство, на което ще се регистрираме и показваме. Максималната стойност за това действие е 9.
-броятТази опция ни позволява да информираме часа във формат Internet Timestamp, в който се получава всяка ехо заявка и се изпраща ехо отговор. Максималната стойност за броене е 4, така че само първите четири скока могат да бъдат маркирани с време.
-w таймаутКато посочвате стойност на изчакване, вие задавате времето, в милисекунди, което ping изчаква за всеки отговор от целевия компютър, в случай че не използвате тази опция -w, ще се използва стойността на изчакване. което е 4 секунди.
-RТази опция ви позволява да стартирате проследяване на маршрут за двупосочно пътуване.
-srcaddrС тази опция ще бъде възможно да посочите адреса на произход.
-стрТази опция може да се използва на адрес на доставчик на мрежова виртуализация на Hyper-V.
-4Този параметър принуждава командата ping да използва само IPv4 адреси, но ще бъде полезна само ако дестинацията е име на хост, а не IP адрес.
-6Този параметър принуждава командата ping да използва само IPv6 адреси.
МишенаТази стойност показва дестинацията, която трябва да бъде пингирана, или IP адрес, или име на хост.
/?Показва помощ за командата ping
-f, -v, -r, -s, -j и -kОпциите -f, -v, -r, -s, -j и -k работят само с IPv4 адреси, докато опциите -R и -S работят само с IPv6.
2. Примери за команда PING Linux
Сега ще видим някои практически примери за използването на ping в Linux
Основно изпълнение на pingВъзможно е да се изпълни прост ping тест, за да се провери дали целевият хост е достъпен или не, не забравяйте, че е възможно да се използва IP адрес вместо име на домейн, както е показано.
ping www.solvetic.comКакто споменахме, това е процес, който ще бъде постоянен и можем да го спрем с клавишите Ctrl + C, когато спрете процеса, резултатите ще бъдат показани с подробности като:
- Брой изпратени пакети
- Брой получени пакети
- Изгубени пакети (в процентен формат)
- Общо време за реакция в милисекунди
Увеличете
Посочете броя на заявкитеСъщо така ще бъде възможно да се посочи броят на ECHO_REQUEST заявките, които ще бъдат изпратени с изпълнението на ping, това се постига с параметъра -c и броя на заявките за изпращане:
ping -c 7 www.solvetic.comВ този случай само 7 заявки ще бъдат изпратени до екипа на местоназначението:
Увеличете
Определете интервала в секундиС параметъра -i ще бъде възможно да зададете интервала в секунди между изпращането на всеки пакет, стойността по подразбиране е една секунда, ще изпълним следното за интервал от 4 секунди:
ping -i 4 -c 6 www.solvetic.comПо този начин ще изпратим 6 заявки с диапазон от 4 секунди между всяка от тях.
Увеличете
Потвърдете отговора от мрежатаЗа да се определи реакцията на мрежата при условия на високо натоварване, което е от съществено значение за проверка на капацитета на мрежата, е възможно да се изпълни флуд пинг (флуд пинг), който е отговорен за изпращането на заявки много по -бързо, това се постига с -f параметър и трябва да се изпълнява като root потребител.
Опциите за използване са една от следните:
sudo ping -f www.solvetic.com sudo ping -f -i 3 www.solvetic.com (показващ интервала между всяка заявка)
Увеличете
Активирайте пинг за излъчванеАко искаме да активираме пинга за излъчването, можем да използваме параметъра -b.
ping -b 192.168.0.255
Увеличете
Ограничете броя на TTLВъзможно е да се ограничи броят на мрежовите скокове (TTL -Time -to -live), извършени от командата ping, това се постига със стойността -t, ще бъде възможно да се зададе всяка стойност между 1 и 255.
Трябва да изясним, че всеки рутер, който получава пакета, изважда поне 1 от броя и ако броят е дори по -висок от 0, маршрутизаторът препраща пакета към следващия хоп, в противен случай той ще бъде изхвърлен и ICMP отговор ще бъде изпратен на нашия екип.
ping -t 15 www.solvetic.com
Увеличете
Определете предварително зареждане на пингВ случай на задаване на предварително зареждане по време на изпълнение, командата ping изпраща много пакети, които няма да чакат отговор, това трябва да се изпълни като root, за да се избере предварително зареждане от повече от 3.
sudo ping -l 6 www.solvetic.com
Увеличете
Задайте размера на пакетитеРазмерът на пакета по подразбиране в ping е достатъчен, за да се определи състоянието на мрежата, но тази стойност може да се редактира, ако е необходимо. Ще бъде възможно да се посочи размерът на полезния товар, в брой байтове, използвайки опцията -s, което ще доведе до общ размер на пакета от предоставената стойност плюс 8 допълнителни байта за заглавката на ICMP, за това изпълняваме:
ping -s 800 www.solvetic.comВъведохме размер 800 и можем да видим, че пинг комплекти 808:
Увеличете
Определете времето за реакцияАко е необходимо да зададете времето за отговор на заявка, в секунди, ще използваме опцията -W за нея по следния начин:
ping -W 9 www.solvetic.com
Увеличете
Ако случаят е да се установи таймаут в секунди, преди да се изпълни командата ping независимо от това колко пакета са изпратени или получени, ще използваме параметъра -w:
ping -w 8 www.solvetic.com
Увеличете
Активирайте подробности за пакета за отстраняване на грешкиМожем да използваме опцията -d, за да активираме подробностите за пакета за отстраняване на грешки в IP.
ping -d www.solvetic.com
Увеличете
Преглед на подробна информацияЩе бъде възможно да се активира подробен изход с помощта на флага -v:
ping -v www.solvetic.com
Увеличете
Определете IPv4 или IPv6 адресиМожем да уточним, че командата ping открива само IPv4 или IPv6 адреси (ако те съществуват), за това изпълняваме най -подходящата опция.
ping -4 www.solvetic.com ping -6 www.solvetic.com
Увеличете
По този начин командата ping е една от най -практичните и изчерпателни помощни програми за извършване на процеса на мрежов контрол и задачи за управление.