Ping: відмінності між версіями

[неперевірена версія][неперевірена версія]
Вилучено вміст Додано вміст
KLBot2 (обговорення | внесок)
м Вилучення 39 інтервікі, відтепер доступних на Вікіданих: d:Q188876
MKub (обговорення | внесок)
Рядок 74:
Однак пройде відкриття або ping сканування або ping-розгортки і раніше є частиною мережного сканування інструментів, таких як [[Nmap]], так як він може дати основні дані про існування на віддаленій машині.
RFC 1122 передбачає, що будь-який господар повинен приймати луна-запиту і видавати луна-відповіді у відповідь. Це було охарактеризовано як загроза безпеки .
 
Історія написання описана Майклом Муссом (переклад)
 
Так, це правда! Я є автором утиліти пінг для UNIX. Утиліта пінг складається з близько тисячі рядків коду,які були написані мною за один вечір, про який практично всі здається знають. :-)
 
Я назвав її на честь звуку, який робить гідролокатор, будучи натхненним принципом ехолокації. У коледжі я модельював багато гідроакустичних і радіолокаційних систем, так що і в "кіберпросторі" аналогія здавалася дуже перспективною. Ця програма писалась у подібному до сонара стилі але для визначення проблем що виникли з доменом: пінг використовує IP / ICMP і ECHO_REQUEST ECHO_REPLY пакети, щоб досліджувати "відстань" до цільової машини.
 
Мій перший стимул для написання PING для BSD UNIX 4.2а був спонтанним і прийшов у липні 1983 року підчас дискусії з д-р Дейвом Міллсом з яким ми відвідували зустріч DARPA в Норвегії, під час якої він описав деякі роботи, які він зробив на своєму "Fuzzball" LSI -11 системи для вимірювання шляху з використанням узгодженої за часом затримки пакетів ICMP Echo.
 
У грудні 1983 р. я зіткнувся з дивною поведінкою мережі в IP BRL. Посилаючись на коментарі доктора Міллса, мені досить швидко вдалося паписати програму PING, яка періодично опитувала на відкриття ICMP в стилі SOCK_RAW AF_INET Berkeley-style socket(). Код був складений дуже добре, але це не спрацювало, тому що не було ніякої підтримки ядра мережевого протоколу ICMP! Обурений цим, я написав до підтримки і все працювало добре аж до світанку. Не здивований цим Чак Кеннеді (так звани0й "Керміт") виявив та виправив помилки мережевого обладнання, перш ніж я зміг запустити мою першу версю "Ping" пакета. Але пізніше я ще неодноразово використовував її зтих пір. :-)
Якби я знав тоді, що це буде моїм найвідоміший досягненням в житті, я, можливо, попрацювавби над нею ще один день або два, і додав ще кілька варіантів.
 
Люди в Берклі охоче підтримали мою ідею змін в ядрі і код PING джерела, і вини стали стандартною частиною Berkeley UNIX. Так як дана ОС була безкоштовною, то моя утиліта була внесена у багато системи з тих пір, у тому числі Microsoft Windows 95 і Windows NT. Ви можете побачити відмінності у повідомленнях, які вона повідомляє, виглядають вони таким чином:
PING vapor.arl.army.mil (128.63.240.80): 56 data bytes
64 bytes from 128.63.240.80: icmp_seq=0 time=16 ms
64 bytes from 128.63.240.80: icmp_seq=1 time=9 ms
64 bytes from 128.63.240.80: icmp_seq=2 time=9 ms
64 bytes from 128.63.240.80: icmp_seq=3 time=8 ms
64 bytes from 128.63.240.80: icmp_seq=4 time=8 ms
^C
----vapor.arl.army.mil PING Statistics----
5 packets transmitted, 5 packets received, 0% packet loss
round-trip (ms) min/avg/max = 8/10/16
 
У 1993 році, через десять років після того, як я написав PING, USENIX асоціація подарувала мені гарний грамоту, у якій висловлювалась спільна подяка від USENIX Association 1993 Lifetime Achievement Award та була представлена Науково-дослідна обчислювальна Systems Group, Каліфорнійського університету в Берклі 1979-1993. Мою роботу було названо глибоким інтелектуальним досягненням і найвищий рівень обслуговування для нашої організація. На прохання директора CSRG були названі учасники та організації які брали участь у CSRG і я був серед них.'' Wow!
 
Хочете побачити вихідний код? (40k)
 
З моєї точки зору слово PING не є скороченням від Packet InterNet Grouper, а було взяте по аналогії з принципом гідролокатора. Тим не менш, я чув, що Дейв Міллс пропонував таке розширення імені, тому, можливо, ми обидва маємо рацію. І я подумав, що уряд слабкий до розширення скорочень! :-)
 
Філом Дікстра додана підтримка ICMP запису маршруту для пінг, але на той час було лише кілька маршрутизаторів обробивши їх, що робило дане доповнення практично марним. Обмеження на кількість переходів, які можуть бути записані в заголовку IP виключається з цього виміру дуже довгими.
 
Я був шалено збентеженим, коли Van Jacobson з LBL використовував моє ядро ​​підтримки ICMP писата при розробці TRACEROUTE, розуміючи, що він може отримати ICMP Time-To-Live шляхом перевищення розміру повідомлень при діагностики шляхом модуляції IP часу життя (TTL) області. Шкода, що я думав про це! :-) Звичайно, реальна Traceroute використовує UDP датаграми, тому що маршрутизатори не повинні генерувати повідомлення про помилки ICMP для ICMP повідомлень.
 
Кращу історію пінга, яку я коли-небудь чув, мені розказали на USENIX конференції, на якій адміністратора мережі за допомогою Ethernet частково пов'язав пінг програму з його програмою вокодером, по суті листа:
 
ping goodhost | sed -e 's/.*/ping/' | vocoder
 
Він підєднав дротовий вихід вокодера у своєму кабінеі до аудіосистеми і збільшив гучність так сильно, наскільки це було можливо. Комп'ютер знаходився там кричали "пінг, пінг, пінг ..." разів на секунду, і він бродив по будівлі ворушити Ethernet роз'єми, поки звук не зник. І це,так він знайшов Тимчасова несправність.
 
== Див. також ==