Як зробити пінг за мак адресою
Ping – це одна з основних мережевих команд, за допомогою якої ми повинні перевіряти зв'язок між двома комп'ютерами. У деяких випадках ми можемо виявити, що не можемо отримати доступ до комп'ютера в нашій мережі, веб-сторінці, ресурсу в мережі і т. д. Щоб з'ясувати, в чому проблема, ми використовуємо дуже корисний інструмент, і це не що інше, як знаменитий пінг, про який колись чули майже всі. Як правило, всі операційні системи поставляються з інструментами, які дозволяють нам перевіряти зв'язок, хоча є й повніші програми, які дозволяють нам це робити. У цьому уроці ми збираємося пояснити, як пінгувати IP-адресу в Windows та інших операційних системах, таких як Linux, macOS, Android, а також в Apple's Ios. Як через власний інструмент системи, і через програми.
Ми почнемо з пояснення, що таке пінг і для чого він потрібний. Потім ми пояснимо, як пінгувати різні операційні системи. Далі ми згадаємо програми для Windows та Android, які дозволяють пінгувати більше однієї IP-адреси одночасно.
Що таке пінг і для чого він потрібний?
Пінг допоможе нам дізнатися, чи у нас є проблеми з підключенням до веб-сайту або пристрою в нашій мережі. Наприклад, припустимо, що ми не можемо друкувати на нашому мережевому принтері. Якщо ми пінгуємо принтер, і він відповідає, це може означати, що ми маємо проблему з драйвером або щось неправильно налаштоване. З іншого боку, якщо він не відповідає на пінг, це означає, що у нас є проблема, пов'язана з мережею, така як, наприклад, те, що IP-адреса не була призначена або у нас є конфлікт IP-адрес.Це також може бути фізичним впливом на маршрутизатор, мережеві кабелі або пристрої.
Як пропінгувати IP у Windows
Тут він пояснює синтаксис команди ping та доступні параметри. А тепер почнемо з простого прикладу. Припустимо, ми хочемо пропінгувати IP-адресу нашого маршрутизатора. Якщо ми не знаємо, що це таке, ми, мабуть, раніше використовували команду ipconfig / all де шлюз за замовчуванням - це IP нашого роутера.
- Б: розмір відправленого пакета даних.
- Час : Це час, потрібний для надсилання та отримання відповіді від хоста призначення.
- TTL : це час життя, це робиться так, щоб пакет не перетинав мережу нескінченно.
- Пакети: показує інформацію про кількість відправлених, отриманих та втрачених пакетів.
- Приблизний час проходження туди і назад у мілісекундах: завдяки цьому ми можемо дізнатися, скільки часу в середньому знадобилося для чотирьох запитів ping.
Натомість це те, що станеться, якщо ми пінгуємо адресу, за якою немає команди або яка недоступна в даний момент.
Тут це означає, що з нашої вихідної IP-адреси, 192.168.1.2, цільовий хост у цей час недоступний. З іншого боку, в деяких випадках це показує нам, що час очікування закінчився і 4 відправлені пакети були втрачені.
Додаткові параметри у Windows ping
Наприклад, з параметром -t ми могли б зробити необмежену кількість луна-запитів до хоста призначення.
Таким чином, я робитиму Ping, поки ми не закриємо вікно.
Замість 4, які йдуть за замовчуванням, вийшло 8.
Пінг графічного інтерфейсу: пінг кількох IP-адрес у Windows
Графічний інтерфейс Ping це безкоштовна програма з відкритим вихідним кодом, яка дозволить нам одночасно виконувати кілька запитів на різні IP-адреси та домени з одного і того ж інтерфейсу. Це, наприклад, позбавило б нас необхідності відкривати кілька вікон командного рядка. Якщо хочете спробувати, можете завантажити наступне посилання . Програма є портативна версія, тому після завантаження ми можемо запустити її, і з'явиться такий екран.
Щоб використовувати його, нам потрібно встановити IP-адреси або домени у верхній частині вікна. Після того, як вони встановлені, наступний крок, який ми повинні зробити, - це перевірити Пінг безперервно варіант. Для початку нам просто потрібно натиснути кнопку Кнопка Ping, і він запропонує нам такі результати.
Як пропінгувати IP у будь-якій системі Linux
Linux дозволяє використовувати команду Ping. Серед його найбільш визначних параметрів або опцій ми можемо виділити:
- -c: встановити кількість пакетів для перевірки зв'язку.
- -i : Визначити часовий інтервал між кожним пакетом. Інтервал за замовчуванням – одна секунда.
- -s : обмеження розміру пакетів.
Це буде приклад, де ви можете побачити синтаксис ping в Linux з різними параметрами.
Тут ви можете бачити, що встановлений часовий інтервал становить дві секунди.
Програма Angry IP Scanner для перевірки зв'язку з IP у Windows, Linux та MAC
Angry IP Scanner можна визначити як дуже швидкий сканер портів та IP-адрес. У цьому сенсі він може сканувати IP-адреси у будь-якому діапазоні, а також будь-які свої порти. Він багатоплатформний, легкий та не вимагає установки. Це початковий екран цього інструменту для Linux з Ubuntu:
Він працює, перевіряючи кожну IP-адресу, щоб перевірити, чи активна вона, потім, за бажання, ви можете дозволити його ім'я хоста, визначити MAC-адресу, сканувати порти та багато іншого. Ви можете завантажити його тут для Windows, Linux та Mac OS.
Пінг IP з мобільного телефону Android або IOS
На смартфонах ми також можемо пінгувати, єдине, що нам потрібно буде робити через програми. Наприклад, на Android ви можете пінг з Fing:
Чи можна перевірити наявність пристрою в мережі, знаючи тільки MAC-адресу?
p1gmale0n
arp -a
arp -N if adress
Щоб вивести таблицю кеша ARP для певного інтерфейсу, вкажіть параметр -N іф_адреса разом з параметром -a, де іф_адреса - це IP-адреса, призначена інтерфейсу. Параметр -N вводиться з урахуванням регістру.
MIl
А чому ця команда показує не всі адреси? у мене в сітці набагато більше адрес
так, і що, якщо пристрій і комп'ютер в різних підмережах??
Dolphine
свіч?
вона показує тільки адреси через які до вас приходять пакетиp1gmale0n
не грає ролі - грає роль свіч чи хаб.
взагалі для контролю МАС адрес краще підходить комп-шлюз або роутер або керований свіч.
Чи можна перевірити наявність пристрою в мережі, знаючи тільки MAC-адресу?
Не всякий відправлений пакет на існуючий МАК дасть відповідь. Саме для цього слід знати про існування протоколу вищого рівня.
Чи можна перевірити наявність пристрою в мережі, знаючи тільки MAC-адресу?
Не всякий відправлений пакет на існуючий МАК дасть відповідь. Саме для цього слід знати про існування протоколу вищого рівня.
фізичної адреси все-таки недостатньо.
а якщо хост із іншої мережі, що тоді?
що заважає перевіряти доступність пристрою на логічну адресу?
а якщо хост із іншої мережі, що тоді?
якщо пакети призначені для пристрою не з вашої мережі проходять через ваш хаб arp покаже вам адресу МАС
що заважає перевіряти доступність пристрою на логічну адресу?
а якщо хост із іншої мережі, що тоді?
якщо пакети призначені для пристрою не з вашої мережі проходять через ваш хаб arp покаже вам адресу МАС
йшлося про те, що хост який треба перевірити на доступність знаходиться в іншій мережі.
а по твоєму прикладу - покаже МАС маршрутизатора/шлюзу, а не пристрій якому призначені дані.
Привіт. На майбутнє! Є кілька рішень:
1. Це рішення найпростіше - зарезервувати IP-адресу на DHCP серевері для вашого MAC. Але якщо інтерфейс налаштований на статику, то нічого не вийде
2. Якщо в мережі є розумний комутатор, то можна переглянути MAC. Для Catalystів це робиться так:
Існує цей список в порядку використання VLAN 1 для отримання MAC address table:
snmpwalk -c public@1 crumpy .1.3.6.1.2.1.17.4.3.1.1
17.4.3.1.1.0.0.12.7.172.8 = Hex:
00 00 0C 07 AC 08
17.4.3.1.1.0.1.2.27.80.145 = Hex: 00 01 02 1B 50 91
17.4.3.1.1.0.1.3.72.77.90 = Hex: 00 01 03 48 4D 5A
17.4.3.1.1.0.1.3.72.221.191 = Hex: 00 01 03 48 DD BF
…
Command lists all MAC address, які мають бути розписані на всіх портах, які були до VLAN 1.
3. Існують девайси під назвою FLUKE, які використовуються для тестування СКС. Так от вони можуть усі.
Всім привіт! Я не сисадмін, а всього лише енікейник, тому не треба штовхати мене, якщо питання виявляться дурними.
1) Чи є аналог утиліти ping, що працює за MAC-адресою, а не IP? (тобто перевіряє наявність у підмережі пристрою із заданою MAC-адресою)
2) Чи існують програми, які автоматично складають карту мережі? (тобто, будучи запущеними на одному з хостів, виводять список усіх підключених до мережі пристроїв з їх IP та MAC-адресами)
Заздалегідь дякую всім хто відповість.
Англомовна література з теорії та основ побудови мереж зв'язку
Дітей, можете підказати хорошу англомовну літературу з теорії та основ побудови мереж зв'язку.
3 дрібні питання
1. Якщо у базовому класі оголошено змінну з якимось ім'ям, то у похідних класах такого.
два дрібні питання на рахунок змінних
у мене виникло таке питання: скажімо у функції main у мене є змінна х, а за допомогою return я.
Створення зображень у вигляді дрібних фігур, зміна розміру дрібних фігур
Здрастуйте! Як створити зображення у вигляді гуртків або інших фігур? Як змінити розмір
1) Тобто, наприклад, в хаб встромлено N хостів, і програмно перевірити чи є серед них хост з MAC-адресою X не можна?
М.Б. самому написати програму "пінг-по-MAC-адресі"?
Чи існують засоби мережевого програмування на канальному рівні, тобто. ще більш низькорівневі, ніж Берклі-сокети?
2)Добре що є, будьте ласкаві, напишіть їх назви.
а ось це можна перевірити іншими методами
якщо хост не мовчить
то на роутері можна переглянути ARP-таблицю
Якщо є керований switch - подивитися на ньому наявність потрібної MAC-адреси
я теж не розумію необхідності пінгу по маку, бо він елементарно підмінюється.
Microsoft Windows XP [Версія 5.1.2600]
(С) Корпорація Майкрософт, 1985-2001.
C:\Documents and Settings\Dmitry>arp -a
C:\Documents and Settings\Dmitry>
(хх – вставляв я)
отримав адресу шлюзу та проксі. з маками, трохи більше.
си сиджу на роботі, робити нічого.до 8ми ранку.
мережа доменна, комп немає.
Очевидно, що "arp -a" не видає потрібної інформації.
Щоб у кеші arp виявився потрібний MAC, потрібно спочатку звернутися під IP-ніку.
Наприклад, ping зробити на IP-нік
Тоді "arp -a" покаже MAC адресу в кеші ARP
Але якщо комп'ютер стоїть і нічого не робить - тоді з сусіднього комп'ютера по "arp -a" нічого по ньому і не буде видно
Саме тому я написав, що потрібно моніторити на шлюзі
У розрахунку на те, що необхідний комп лізе в інтернет через цей шлюз
Тому засвітиться в ARP-кеші біля шлюзу
Знову ж таки найнадійніше це робити на шлюзі в Internet
Та просто на роботі є сітка, хотілося б дізнатися про її структуру. Начальник завжди зайнятий, постійно відлучається у справах, тому не завжди є можливість розпитати його.
То що щодо програм, що автоматично створюють карту мережі? magirus сказав що такі є, може хтось назве їх?
Дуже простий сабж. Чи є mac, як це зробити на простий клієнтській машині в локальній мережі? Якщо є спосіб - чи підійде і для Інтернету?
Можеш зробити броадкаст пінг, а потім подивитися таблицю arp
ping 192.168.255.255
arp -a
не котить. але ідея непогана, дякую.
Дуже дякую, але це не варіант. ті в моєму випадку (я випадково знайшов цей іп) пінг не проходить (відповіді не буде). чи є ще якісь принципово нові методи?
(я знайшов іп, тому що розбирався з мультикастом і у нас на 1-му іпі висить туєва хуча цих "ретрансляторів" - тобто пощастило). питання ребром - чи може сам сервер видати якимось чином arp таблицю мережі/сегмента?
Для цього є nmap. І немає жодної різниці, відповідає хост на пінг чи ні, бо на arp-запит він все одно відповість.
Дізнатися IP по MAC - завдання неоднозначне, оскільки IP однією МАС може бути багато. Тут тільки сканувати, а потім arp-an. І ніякий пінг на широкомовних адресах Вам не допоможе.
Подивіться ще на arpwatch
І ще. Я дико перепрошую, але чи розумієте Ви, що це все стосується одного фізичного сегменту, в якому і знаходиться Ваш хост.
>Для цього nmap є
як мені вказати nmap-y ціль за MAC адресою?
>Я дико перепрошую, але чи розумієте Ви, що це все стосується одного фізичного сегменту, в якому і знаходиться Ваш хост
навіть якщо ми знімаємо трафф у promisc.
це arpwatch в межах сегмента, що очевидно втім. потрібен якийсь аналог ping-а, але за адресою MAC.
>>Я дико перепрошую, але чи розумієте Ви, що це все стосується одного фізичного сегменту, в якому і знаходиться Ваш хост
>навіть якщо ми знімаємо трафф в promisc.
's/фізичний сегмент/широкомовний домен/'
Навіть якщо :) promisc нічого не змінює. Всі arp-запити та інший IP-трафік через маршрутизатор не ходить.
також є arping
DESCRIPTION
Закріплення інструментів sends ARP and/or ICMP requests до особливих host and displays the replies. The host may
be specified by його hostname, його IP address, або його MAC address.
але знову ж таки в межах одного сегмента.
>j262 ** (*) (20.07.2007 10:15:08)
arping не працює з маком, йому в destination потрібен ip і маршрутизатор його не пустять.
Резюме – справа погань.
чому не працює
!arpi
arping 00:03:6B:EF:77:E0
ARPING 00:03:6B:EF:77:E0
60 bytes from 172.16.0.8 (00:03:6b:ef:77:e0): icmp_seq=0 time=1.143 msec
60 bytes from 172.16.0.8 (00:03:6b:ef:77:e0): icmp_seq=1 time=1.080 msec
60 bytes from 172.16.0.8 (00:03:6b:ef:77:e0): icmp_seq=2 time=1.069 msec
ну так, за рутер не пустить.
>і за маршрутизатор його не пустять.
боюся тобі допоможе тільки вивчення основ ethernet мереж
простіше кажучи, якщо ти не в одному фізичному сегменті, то мак-адреса тобі не допоможе, та його у машини може і не бути (не ethernetом єдиним)
якщо цільова машина перебуває за сегментом, це не її мак, а мак маршрутизатора;)
Тобто маршрутизатор ставить свій мак при пересиланні пакетів.
до речі, FYI, деякі провайдери сильно напружуються і скаржаться ФСБшникам якщо знаходять сітку в promisc режимі у клієнтів.. а цей режим в принципі виявимо. на просторах инета кілька років тому знаходив простенький сиш код для цього.
Виявимо, якщо реалізація хронова. Начебто це давно виправили. Хоча, може, і ні.
Горе людина, йди вчи як влаштовані мережевий та канальний рівні; плюс маршрутизації в IP мережах.
Що таке ping? Як правильно пінгувати?
Кожен більш-менш просунутий користувач Інтернету та локальної мережі стикається з такою процедурою, як пінг (ping). Найчастіше це просять зробити майстри сервісного центру у провайдера, аби зрозуміти проблему. У цій статті ми розглянемо, що таке ping, навіщо він потрібний і як правильно пінгувати.
Що таке ping?
Ping (пінг) – це процес, який дозволяє перевірити якість мережі та її швидкість до певного сервера. Найчастіше ping здійснюється за допомогою консолі (командного рядка) як в операційних системах Windows, так і в ОС Linux. Також для пінгування є спеціальні програми. Варто відзначити зручність і якість даного способу перевірки локальної мережі та Інтернету, оскільки він досить простий та інформативний.
Пінгування полягає в тому, що ви з комп'ютера посилаєте кілька пакетів даних на певний пристрій, як у локальній мережі, так і в Інтернеті. Завдяки такому обміну пакетів ви зможете отримати інформацію щодо якості роботи підключення.
Якщо відправлені пакети не повертаються назад, це означає проблеми з підключенням. Пакети, які не повернулися – називаються «втрати». Чим більше втрачених пакетів, тим гірше. Якщо ж пакети втрачені в повному обсязі, то це означає відсутність підключення до мережі, або недоступність пристрою до якого здійснювалося пінгування - все залежить від того, що саме ви пінгували. Також важливим є і швидкість відгуку: чим вона нижча, тим якісніший зв'язок від вашого пристрою до пінгується.
Навіщо потрібен ping?
Як уже було сказано вище експертами Masterservis24.ru, ping необхідний для того, щоб перевірити якість Інтернет-підключення та швидкість до певного мережевого пристрою. Давайте розглянемо з прикладу ситуації, у яких необхідний і дуже корисний ping.
Перша ситуація, коли відбувається пінгування - це проблеми з роботою Інтернету, наприклад: ви працюєте в браузері, і Інтернет-сторінки завантажуються дуже повільно або зовсім не завантажуються. Друга ситуація, коли Інтернет просто зникає або Інтернет-з'єднання розривається. Третя ситуація – коли пригальмовує потокове відтворення аудіо та відео. Четверта ситуація – коли є проблеми з підключенням до чогось: до сайту, ігрового сервера або іншого пристрою в мережі. Таким чином, завдяки пінгу ви зможете дізнатися: чи взагалі є проблеми з мережею або Інтернет-підключенням, де саме знаходиться проблема і в чому вона полягає.
Досить часто ping перевіряють для онлайн ігор, де потрібна висока швидкість обміну даними із сервером.
Як правильно пінгувати
Для того щоб пропінгувати – необхідно відкрити консоль та ввести відповідну команду, вказавши адресу пристрою або ресурсу, з яким хочете перевірити з'єднання.
Щоб перевірити якість Інтернет-з'єднання, пропінгуйте DNS-сервера Google командою (яку потрібно ввести в консолі):
У такий же спосіб можна проводити пінгування не тільки серверів та мережевих пристроїв, а й сайтів. Для того, щоб перевірити якість з'єднання до Яндексу, введіть наступну команду:
Для того щоб перевірити роботу підключення до сервера провайдера, пропінг його DNS-сервер або інший локальний ресурс, наприклад роутер на даху.
Щоб перевірити працездатність домашньої локальної мережі, пропінгуйте свій роутер командою:
В операційній системі Linux, ping здійснюється безкінечно, поки ви самі його не зупините натисканням кнопок Ctrl+C. У Windows же стандартний ping робиться відправкою лише чотирьох пакетів. Для того щоб відправити більше пакетів - до пінгової команди прописується префікс «-n» із зазначенням кількості пакетів, що відправляються. Щоб надіслати 100 пакетів, наприклад до DNS-сервера Google, пропишіть наступну команду:
Для надсилання нескінченного пінгу до стандартної команди допишіть через пробіл «-t», а щоб зупинити – натисніть клавіші Ctrl+C. Наприклад, робимо нескінченний пінг до DNS-сервера Google:
Після закінчення пінгування внизу буде виведено звіт, аналіз якого допоможе розібратися в стані мережі.
15 прикладів команди PING для діагностики мережі
Завдяки Linux, у нас є дуже багато інструментів, що полегшують адміністрування та діагностику мережі. У цьому плані команда PING є одним з найкорисніших інструментів для системних та мережевих адміністраторів.
Сама базова можливість цієї утиліти - визначити чи доступний той чи інший хост. Тим не менш, у цьому матеріалі ми наведемо приклади розширених можливостей цієї команди в системі Linux.
Про Linux за 5 хвилин Що це чи як фінський студент перевернув світ?
Навіщо використовується команда PING?
- вимір часу за який спілкуються два хости;
- виявлення IP адреси конкретного хоста, як у локальній мережі, так і у глобальній мережі
- вона може бути частиною bash скрипта для автоматичної перевірки мережевого пристрою
- перевірка зв'язку з конкретним пристроєм.
Як видно, ця команда дуже потрібна для адміністрування мережі та серверів.
Як працює PING?
Принцип роботи команди Ping простий: вона надсилає серію пакетів маленького розміру на вказаний пристрій.
Для тестування пристрою може бути використаний або IP-адреса, або ім'я хоста. Після відправлення пакета, утиліта перевіряє та вимірює час відповіді цільового пристрою.
Як ви могли припустити, час відповіді залежить від кількох умов, включаючи географічне розташування або пристроїв, розташованих між джерелом і цільовим пристроєм.
Наприклад, у локальній провідній мережі команда поверне кращий результат за часом, ніж у мережі з кількома маршрутизаторами та мережними мостами.
Однак, на основі отриманої інформації утиліта буде судити про стан цільового пристрою.
Синтаксис команди наступний:
ping [options] [destination]
Нижче наведено деякі корисні та часто використовувані ключі для цієї команди:
- -c: Дозволяє вказати кількість пакетів для надсилання.
- -s: Дозволяє змінювати розмір пакету за промовчанням.
- -v: Відображає поточний стан виконання команди.
- -w: Вказує у секундах час завершення команди.
- -i: Дозволяє вказати інтерфейс, з якого будуть надходити запити.
Чи можна використовувати PING із проксі-сервером?
Проксі - Це сервер або додаток, що грає роль посередника для з'єднання двох хостів в мережі. Це свого роду «людина посередині», яка надсилає запити прямо до хоста.
Проблема в тому, що PING вимагає прямого з'єднання між пристроями. Таким чином, команда Ping не може функціонувати, якщо перед ним стоїть проксі-сервер.
Як варіант, можна скористатися сайтами, які пропонують Ping як послугу. З іншого боку, для вирішення деяких завдань із командою Ping, можна використовувати команду curl . Також можна вдатися до допомоги VPN, який сховає вашу реальну IP.
Ping IPv6 адрес
За замовчуванням, коли запускаємо команду PING, ми використовуємо IP версії 4. Однак з появою протоколу IPv6 все частіше стали зустрічатися адреси такого формату.
Ядро Linux підтримує IPv6 починаючи з версії 2.2, тому всі дистрибутиви Linux підтримують цей протокол.
Базовий синтаксис такий:
$ ping -6 2001:4860:4860::8888
У старих версіях була команда ping6. У нових дистрибутивах її немає і весь функціонал об'єднаний із ping.
Як і при роботі з IPv4, ключем –c можемо вказати кількість пакетів для відправки, а ключ –i – визначає інтерфейс для вихідних запитів.
Ping конкретного порту
Іноді доводиться перевірять чи доступний той чи інший порт на хості, що перевіряється. На жаль, команда Ping не має такої можливості, але це можна зробити за допомогою telnet, який за умовчанням встановлений на Linux.
Щоб перевірити доступність порту, просто введіть наступну команду:
telnet google.com 80
Ping із виведенням часу
Хоча команда ping дає багато корисної інформації, але може бути недостатньо. Тим не менш, є можливість настроїти команду так, щоб вона показала дату та час відправлення пакета. Це може зробити висновок приємнішим і кориснішим для скриптів та логування.
Для цього достатньо прописати вказану нижче команду. Але вам доведеться встановити пакет ccze.
ping [host] | xargs -n1 -i bash -c 'echo `date +%F %T`"<>"' | ccze
Як видно зі скріншота, команда показує дату та час надсилання кожного пакета.
Ping всіх пристроїв у вказаній підмережі
Командою Ping можна надсилати сигнал всім хостам у мережі чи підмережі. Для цього потрібно запустити ping із ключем –b на широкомовну адресу, яка закінчується на 255. Наприклад:
ping-b-c 4 192.168.1.255
Отже, якщо хост призначення недоступний, значить або там блокуються пакети ICMP, або є проблеми з мережею або таблицею маршрутизації.
Як завершити команду PING?
За умовчанням, у системі Linux команда Ping безперервно посилає пакети на хост. Але якщо потрібна інформація отримана, необхідно якось перервати виконання команди. Для цього потрібно просто натиснути комбінацію клавіш CTRL+C .
Після цього команда негайно зупиняється.
Завершення роботи команди за лічильником
Ви можете обмежити кількість пакетів, що посилаються. Наприклад, якщо поставити число пакетів рівним 10, то після надсилання вказаної кількості пакетів виконання команди припиниться.
Де розташована утиліта PING?
У Unix-подібних системах таких, як Linux бінарні файли зазвичай розташовуються по дорозі
У цій папці можна знайти безліч бінарних файлів, які ми використовуємо як команди в терміналі.В інших ОС сімейства Linux, вони можуть бути розташовані в:
Перевірити це можемо командою ls:
$ls /usr/bin | grep ping
На скріншоті видно, що команда ping знаходиться у папці
Інший метод, яким можна знайти місце розташування команд це which :
На висновку вона дасть таку інформацію:
Перевірка затримки командою PING
Однією з можливостей, які надає команда PING, є можливість вимірювання часу відгуку мережі. Інакше це називається затримка чи час очікування.
Щоб виміряти затримку, введи вказану команду і зверніть увагу на ввод:
ping-c 4 [host] ping-c 4 192.168.1.1
Як ви могли помітити, кожен пакет було надіслано з конкретним часом відповіді. Наприкінці ж є рядок, який починається на:
Друге значення після знаку рівності – час затримки. У нашому випадку він дорівнює 6798.
За допомогою цього показника ми можемо визначити хости, зв'язок з якими гірший і вжити відповідних заходів.
Пошук ідеального значення MTU
MTU (Maximum Transmission Unit) це максимальний розмір пакета, який може бути переданий через мережу.
Сьогодні з метою безпеки в мережах створюються перешкоди для роботи MTU. Але більшість локальних мереж на основі Ethernet використовує MTU розміром 1500 байт.
Якщо потрібно знайти найбільш відповідний розмір MTU за допомогою команди Ping, слід визначити початкове значення та зменшувати його доти, доки припиняться помилки. Якщо значення велике, ми отримаємо таку помилку:
ping: локальна помилка: Message too long
Щоб зробити це, запустіть наступну команду:
ping -M do -s [initial_value] [host]
У нашому випадку значення розміру пакета занадто велике. Тому зменшуємо його до 1472 байтів.
Якщо ви отримаєте інше повідомлення, початкове значення повинно бути зменшене по одиниці, поки не отримаєте потрібний результат.
Якщо значення MTU відоме, воно може бути використане для покращення мережі. Особливо якщо мережа велика до міських мереж.
Ping на 2-му рівні OSI (використання arping)
За допомогою команди ping діагностика проводиться на основі IP-адреси конкретного сайту в мережі. Це з тим, що команда ping працює третьому мережевому рівні моделі OSI.
З іншого боку, можна використовувати іншу вбудовану в Linux команду - arping. Ця утиліта працює так само, як ping, але на другому канальному рівні моделі OSI.
Синтаксис команди наступний:
$ sudo arping [Ip_address]
$ sudo arping [Ip_address] $ sudo arping 192.168.1.1
В результаті отримаєте щось подібне:
Виведення команди показує розмір відправленого пакета, потім MAC адреса вузла призначення та час відповіді.
Зазначимо, що ця команда не встановлена на системі Debian та похідних.
Ping на ім'я вузла
За замовчуванням команда ping посилає пакети на вузол призначення, використовуючи IP адресу або ім'я вузла призначення. Також слід зазначити, що більшість реалізацій утиліти ping на Linux не дозволяють DNS у зворотному напрямку.
Наприклад, якщо ми запустимо команду ping, вказавши IP-адресу, він поверне лише IP вузла. І навпаки, якщо параметр передамо ім'я вузла, то команда поверне його IP адресу. Подивіться висновок, ввівши команду нижче:
Ping маршруту (traceroute)
Сама собою команда ping не показує шляху від джерела до вузла призначення. Але це було б дуже доречним у тому випадку, коли вузол призначення не відповідає, щоб визначити, де саме губиться зв'язок.
Команда tracert (Windows) або traceroute працюють подібно до ping.Перевагою цієї команди є те, що він показує весь шлях проходження пакета від джерела до вузла призначення.
У принципі traceroute посилає той же пакет ICMP, що і Ping. Але у випадку traceroute, на відміну від ping початково значення TTL пакета виставляється рівним одиниці. Пакет доходить до першого вузла на шляху до вузла призначення. Пристрій зменшує TTL на одну одиницю і якщо виходить нуль, повертає повідомлення про помилку закінчення часу пакета. У повідомлення також міститься IP адреса та ім'я хоста. Відправник отримує це повідомлення. Якщо воно не від вузла призначення, то посилає другий пакет з TTL на один більший за попередній. І так доти, доки не отримає відповідь від вузла призначення. Для отримання шляху потрібно запровадити команду:
traceroute [hostname/IPaddres]
Запустити команду якщо ping повернув помилку
Уявіть, що вам потрібно отримати оповіщення, якщо вузол призначення перестав відповідати на запити команди ping. Для цього потрібно включити команду ping у bash скрипт та прописати потрібні команди. Наприклад, скрипт нижче дозволяє вам перевірити, чи відповідає вузол на запити ping:
#! /bin/bash ping -c 1 [host] If [$? -eq 0]; then #Your_command_here Fi
Встановлення розміру пакету ping
За замовчуванням розмір пакетів ICMP дорівнює 56 байтам. Це дозволяє не впливати на роботу мережі під час перевірки. Але за потреби можна змінювати це значення. Для цього достатньо запустити команду ping із ключем –s та необхідним розміром. Наприклад:
ping -s [packet_size] hostname/IP
Якщо потрібно встановити значення пакета 100 байтам, потрібно прописати команду нижче:
ping-s 100 192.168.1.1
Вимкнення команди ping
Якщо ви обслуговуєте мережу, то вам може бути необхідно відключити відповідь на запити ping в будь-який час.Це можна зробити як тимчасово, так і постійно, залежно від ваших потреб. Для тимчасового відключення команди ping потрібно ввести команду нижче від імені root-а:
$ su $ echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
Вона вимкнути можливо відповіді на ICMP запити до перезавантаження системи. Але якщо потрібно назавжди відключити цю можливість, доведеться відредагувати файл
і додати наступний рядок:
$nano /etc/sysctl.conf
net.ipv4.icmp_echo_ignore_all=1
Збережіть файл і для внесення змін введіть команду:
Висновок
У цьому матеріалі ми розглянули, як ping працює в системі Linux. Ping одна з найлегших команд. Вона дозволяє особам, відповідальним у забезпеченні нормально роботи мережі, виявляти проблеми та усувати їх.
