Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Протокол ICMP. Типи пакетів

План

13.1. Протокол ICMP. Типи пакетів

13.2. Утиліти ping, traceroute, tcptraceroute

13.3. Утиліти управління мережею: Nmap. NatCat. Netstat

 

Протокол ICMP (Internet Control Message Protocol,протокол контролю повідомлень в Інтернет) – це Internet-протокол мережевого рівня моделі OSI, що створює пакети з повідомленнями про помилки і іншою інформацією про обробку IP-пакетів. У протоколі ICMP описано декілька типів пакетів, таких як: · ехо-запит – пакет, що відправляється для перевірки зв'язку з віддаленим вузлом; · ехо-відповідь – пакет, що отримується джерелом у відповідь на пакет типу ехо-запит; · призначення недоступне – одержувач такого пакету інформується про недоступність мережі/вузла/порту призначення. · редірект – пакет інформує вузол про зміну маршруту призначення. У сучасних ОС такий тип пакету ігнорується. · час вийшов – вузол-джерело отримує цей тип пакету, якщо IP-пакет був знищений у зв'язку з обнуленням поля TimeToLive. Інформацію про інші типи (а також підтипи) пакетів ICMP можна отримати в заголовному файлі /usr/include/linux/icmp.h. 13.2. Утиліти ping, traceroute, tcptraceroute Утиліта ping служить для перевірки факту наявності зв'язку з віддаленим вузлом, а також надійності і швидкості зв'язку. Інколи утиліта використовується для розкриття IP-адрес хоста по його імені. Синтаксис її такий: ping [параметри] им'я_або_IP-адреса_хоста За допомогою параметра -c ви можете вказати кількість запитів, які виконає ping. Якщо параметр -c опущений, то ping подаватиме запити до тих пір, поки не отримає сигнал або користувач не натисне <Ctrl-с>. Приклад 1: [gserg@WebMedia linux]$ ping -c3 www.ya.ru PING ya.ru (213.180.204.8) 56(84) bytes of data. 64 bytes from ya.ru (213.180.204.8): icmp_seq=0 ttl=49 time=26.7 ms 64 bytes from ya.ru (213.180.204.8): icmp_seq=1 ttl=49 time=25.6 ms 64 bytes from ya.ru (213.180.204.8): icmp_seq=2 ttl=49 time=24.7 ms   --- ya.ru ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2019ms rtt min/avg/max/mdev = 24.741/25.718/26.724/0.809 ms, pipe 2 [gserg@WebMedia linux]$   За допомогою параметра -f можна перевірити швидкість роботи мережі (працює лише з під root). При використанні цього параметра ping посилає близько 1000 пакетів в секунду. Приклад 2: [gserg@WebMedia gserg]$ ping -f 192.168.2.254 PING 192.168.2.254 (192.168.2.254) 56(84) bytes of data. ping: cannot flood; minimal interval, allowed for user, is 200ms [gserg@WebMedia gserg]$ su -c "ping -f 192.168.2.254" Password: PING 192.168.2.254 (192.168.2.254) 56(84) bytes of data.   --- 192.168.2.254 ping statistics --- 238 packets transmitted, 238 received, 0% packet loss, time 4379ms rtt min/avg/max/mdev = 0.147/0.177/0.478/0.031 ms, pipe 2, ipg/ewma 18.478/0.179 ms [gserg@WebMedia gserg]$     Параметром -s може бути вказаний розмір пакету в байтах (не менше 64 і не більше 65000), в іншому випадку розмір пакету складе 64 байти.   [gserg@WebMedia linux]$ ping -s 65000 192.168.2.254 PING 192.168.2.254 (192.168.2.254) 65000(65028) bytes of data. 65008 bytes from 192.168.2.254: icmp_seq=0 ttl=64 time=12.0 ms 65008 bytes from 192.168.2.254: icmp_seq=1 ttl=64 time=12.0 ms 65008 bytes from 192.168.2.254: icmp_seq=2 ttl=64 time=11.9 ms 65008 bytes from 192.168.2.254: icmp_seq=3 ttl=64 time=11.9 ms   --- 192.168.2.254 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3026ms rtt min/avg/max/mdev = 11.988/12.029/12.083/0.086 ms, pipe 2 [gserg@WebMedia linux]$     Додаткову інформацію можна отримати з довідки man.   Команда traceroute допоможе перевірити шлях до віддаленого хоста, видаючи всі проміжні маршрутизатори. За допомогою цієї команди стає просто діагностувати проблему у великій мережі, швидко виявляючи збійну ділянку. Синтаксис команди такий самий, як і в ping, за винятком параметрів командного рядка. Приклад 3: [gserg@WebMedia linux]$ traceroute www.ya.ru traceroute to ya.ru (213.180.204.8), 30 hops max, 38 byte packets 1 ns.edu.vologda.ru (192.168.2.2) 0.281 ms 0.192 ms 0.162 ms 2 80.92.3.3 (80.92.3.3) 1.169 ms 1.257 ms 1.103 ms 3 sv-vol00ra-s2-0.severttk.ru (80.92.3.1) 3.140 ms 3.250 ms 3.111 ms 4 sv-yar00rb-s1-0-0.severttk.ru (80.92.0.69) 34.511 ms sv-yar00rb-s2-5-0. severttk.ru (80.92.0.97) 25.161 ms sv-yar00rb-s1-0-0.severttk.ru (80.92.0.69) 10.718 ms 5 MSK41-F000.145.gw.transtelecom.net (217.150.38.142) 28.066 ms 21.430 ms 31.571 ms 6 MSK41.TRANSTELECOM.NET (193.232.244.211) 25.680 ms 18.921 ms 20.999 ms MPLS Label=350 CoS=6 TTL=255 S=1 7 ix2-m9.yandex.net (193.232.244.93) 23.085 ms 21.548 ms 35.076 ms 8 c3-vlan3.yandex.net (213.180.192.171) 25.177 ms 23.104 ms 22.918 ms 9 ya.ru (213.180.204.8) 33.519 ms 23.189 ms 32.496 ms   Команда tcptraceroute практично аналогічна попередній, проте у якості базового протоколу вона використовує протокол tcp. Це дозволяє перевіряти доступ до служб tcp і шлях до них. Приклад 4: gserg@ADM:~$ tcptraceroute smtp.mail.ru 25 Selected device eth0, address 10.52.2.1, port 45217 for outgoing packets Tracing the path to smtp.mail.ru (194.67.23.111) on TCP port 25 (smtp), 30 hops max 1 10.52.0.5 0.383 ms 0.231 ms 0.219 ms 2 b229.vologda.ru (193.19.67.229) 1248.475 ms 345.180 ms 106.562 ms 3 spb-vgld.ptn.ru (212.48.195.9) 78.138 ms 65.802 ms 157.785 ms 4 spb-bbn1-ge-2-1-0-88.rt-comm.ru (213.59.5.141) 120.521 ms 114.442 ms 131.549 ms 5 msk-bgw1-ge1-0-0-0.rt-comm.ru (217.106.0.14) 76.536 ms 177.440 ms 130.447 ms 6 msk-bgw1-ge1-0-0-0.rt-comm.ru (217.106.0.14) 143.422 ms 90.071 ms 115.207 ms 7 195.161.165.246 172.163 ms 133.969 ms 110.668 ms 8 cat03.Moscow.gldn.net (195.239.10.189) 79.129 ms 77.774 ms 93.654 ms 9 cat12.Moscow.gldn.net (194.186.159.238) 76.082 ms 162.883 ms 77.045 ms 10 mailru-KK12-2-gw.Moscow.gldn.net (195.239.8.90) 105.042 ms 75.285 ms 89.922 ms 11 * * * 12 smtp.mail.ru (194.67.23.111) [open] 78.527 ms 81.314 ms 80.269 ms     В більшості випадків, параметри командного рядка не доводиться використовувати, проте їх все ж слід вивчити за допомогою довідкової системи man. 13.3. Утиліти управління мережею: nmap. netcat. netstat Утиліти управління мережею існують для діагностики як мережевих проблем, так і діагностики проблем кожного конкретного хоста. Найбільш популярною утилітою, за допомогою якої діагностуються проблеми хостів є nmap, яка входить в постачання практично всіх сучасних дистрибутивів операційної системи Linux. Утилітаnmapмає багато можливостей, але нас в першу чергу цікавить її можливості щодо визначення активних сервісів віддаленого хоста, а також операційної системи. Повноцінно використовувати nmap можна лише за наявності прав суперкористувача. Ось ті параметри nmap, які ми розглянемо: · -sS – приховане сканування TCP-портів · -sT – відкрите сканування TCP-портів · -sU – відкрите сканування UDP-портів · -sP – ping-сканування (пошук активних хостів в мережі) · - sF, -sN, -sX – різні приховані типи сканування TCP-портів. · -O – визначення типу операційної системи (не працює з -sP) · -p – вказівка діапазону портів для сканування (12345, 12345-2333) · -v – детальне виведення.   Приклад 5: [root@WebMedia linux]# nmap -v -sS -O 192.168.2.84   Starting nmap 3.48 (http://www.insecure.org/nmap/) at 2005-04-23 17:24 MSD Host 192.168.2.84 appears to be up... good. Initiating SYN Stealth Scan against 192.168.2.84 at 17:24 Adding open port 135/tcp Adding open port 139/tcp Adding open port 445/tcp The SYN Stealth Scan took 0 seconds to scan 1657 ports. For OSScan assuming that port 135 is open and port 1 is closed and neither are firewalled Interesting ports on 192.168.2.84: (The 1654 ports scanned but not shown below are in state: closed) PORT STATE SERVICE 135/tcp open msrpc 139/tcp open netbios-ssn 445/tcp open microsoft-ds Device type: general purpose Running: Microsoft Windows 95/98/ME|NT/2K/XP OS details: Microsoft Windows Millennium Edition (Me), Windows 2000 Professional or Advanced Server, or Windows XP TCP Sequence Prediction: Class=random positive increments Difficulty=9641 (Worthy challenge) IPID Sequence Generation: Incremental   Nmap run completed -- 1 IP address (1 host up) scanned in 2.391 seconds   Для перевірки працездатності мережі на конкретному вузлі і виявлення помилок при передачі використовується команда NetCat (nc). Команда nc може відкрити порт і виводити інформацію з нього на екран (або у файл, інше застосування по каналу). Цю можливість часто використовують для перевірки роботи TCP. Для відкриття порту служить ключ -l, а порт можна вказати параметром -p: Приклад 6: 1-а консоль [root@WebMedia linux]# nc -l -p 25 127.0.0.1 test test double punt!   2-а консоль [gserg@WebMedia gserg]$ telnet 127.0.0.1 25 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. test test double Connection closed by foreign host. [gserg@WebMedia gserg]$     Проте і за допомогою nc можна просканувати відкриті порти. Правда, nc не має такого широкого набору можливостей як nmap, і робить сканування набагато повільніше. Для цього використовується параметр -z. Параметр -v дозволяє нам отримати додаткову інформацію: Приклад 7:   [root@WebMedia linux]# nc -z -v 127.0.0.1 600-700 localhost.localdomain [127.0.0.1] 631 (ipp) open   Команда netstat дозволяє проглянути відкриті з'єднання на поточному комп'ютері. Введена без параметрів, вона покаже всі з'єднання, включаючи відкриті сокети unix. Команда приймає параметри, найчастіше використовуваними є: · -n – показує числові значення номерів портів замість імені з /etc/services і числових IP-адрес замість доменних імен; · -p – показує pid процесу, що використовує з'єднання; · -t – показує лише TCP-сокети · -u – показує лише UDP-сокети · -i – показує список інтерфейсів і статистику трафіку на них · -l – лише слухаючі порти Таким чином, перегляд всіх програм, що слухають TCP-порти: root@ADM:/var/mail# netstat -tpl   Активні з'єднання з інтернетом (only servers) Proto RECV-Q SEND-Q Local Address Foreign Address State PID/Program name tcp 0 0 localhost:2208 *:* LISTEN 4785/hpiod tcp 0 0 *:print01 *:* LISTEN 4864/inetd tcp 0 0 *:51762 *:* LISTEN 26729/sim tcp 0 0 *:telnet *:* LISTEN 4864/inetd tcp 0 0 localhost:ipp *:* LISTEN 4761/cupsd tcp 0 0 localhost:2207 *:* LISTEN 4788/python tcp6 0 0 *:5800 *:* LISTEN 9066/kded [kdeinit] tcp6 0 0 *:5900 *:* LISTEN 9066/kded [kdeinit] tcp6 0 0 *:65005 *:* LISTEN 9519/notes2w tcp6 0 0 *:57177 *:* LISTEN 9519/notes2w Просмотр всех интерфейсов: root@ADM:/var/mail# netstat -i Таблица интерфейсов ядра Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 238445 0 0 0 200095 0 0 0 BMRU lo 16436 0 282 0 0 0 282 0 0 0 LRU
 

 

Висновки

Протокол ICMP використовується для отримання інформації про роботу мережі. Для діагностики роботи мережі призначені утиліти ping, traceroute, tcptraceroute, які мають параметри що уточнюють запит. Для керування роботою мережі, діагностики проблем використовуються утиліти nmap. netcat. netstat.

<== предыдущая лекция | следующая лекция ==>
Диференціація доходів населення. Крива Лоренца і коефіцієнт Джині | І. Ангіопротектори непрямої дії
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 1259; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.