Home

Page 16
Page 16
background image

окне  утилиты telnet.exe. Отметим,  что  утилита telnet.exe является  не  просто  «сырым» TCP 
клиентом, но о ее прочих применениях мы проговорим позже, пока мы будем ей пользоваться лишь 
для работы в TCP соединениях. 

Таким  образом,  диагностика  приложений,  использующих TCP, в  ряде  случаев  возможна  в 

Windows с использованием утилиты telnet.exe, а вот для диагностики UDP приложений необходима 
специальная утилита.  

В данной части курса мы будем пользоваться КРАЙНЕ полезной и удобной утилитой sock, 

написанной W. Stevens, которая  обладает  очень  широкой  функциональностью.  Отметим,  что 
изначально  данная  утилита  написана  для  определенного  типа Unix систем,  доступна  в  исходных 
кодах и может быть скомпилирована для любой Unix системы, мы же будем использовать данную 
утилиту, скомпилированную для Windows. Утилита sock может использоваться как: 

•  UDP сервер 

•  UDP клиент 
•  TCP сервер 

•  TCP клиент 

При  этом,  работая  в  качестве  клиента,  данная  утилита  не  является  клиентом  какого-то 

прикладного протокола – она позволяет генерировать произвольные данные в TCP соединение или 
желаемому  порту UDP, а  данные,  полученные  в  ответ,  не  интерпретируя  выводить  на  экран. 
Работая в качестве сервера, утилита снова не выполняет никакого особого прикладного протокола – 
она  может  выводить  на  консоль  сервера  полученные  от  клиента  данные,  генерировать  по  заранее 
оговоренным  правилам  данные  для  клиента.  Таким  образом,  данная  утилита  в  качестве  сервера 
будет  нам  весьма  полезна  при  изучении  протокола TCP, так  как  позволяет  гибко  управлять 
поведением TCP сервера,  а  в  качестве  клиента  ее  можно  использовать  при  диагностике  любых 
прикладных протоколов. Воспользуемся утилитой sock для закрепления изученного материала. Для 
начала  воспользуемся  утилитой sock в  режиме  клиента.  В  качестве  сервера  воспользуемся  той 
самой  службой  времени,  работающей  на 13 UDP порту,  которую  мы  приводили  в  пример  выше. 
Сервер  времени,  упомянутый  нами  выше  входит  в  комплект  так  называемых  «Простых  служб 
TCP/IP»,  включенный  в  комплект  программного  обеспечения Windows. Установим  «Простые 
службы TCP/IP», и  рассмотрим  для  начала  утилиту netstat.exe, которая  позволяет  получить 
информацию о том, на каких портах UDP и TCP работают процессы. Рассмотрите самостоятельно 
ключи –a, –n, –p, после  чего  выведите  список  занятых  портов UDP на  узле  с  установленными 
Simple TCP/IP Services.  

 

C:\>netstat -an -p udp 

 

Активные подключения 

 

  Имя    Локальный адрес        Удаленный адрес  

Состояние 

  UDP    0.0.0.0:7              *:* 

  UDP    0.0.0.0:9              *:* 

  UDP    0.0.0.0:13             *:* 

  UDP    0.0.0.0:17             *:* 

  UDP    0.0.0.0:19             *:* 

  UDP    0.0.0.0:135            *:* 

  UDP    0.0.0.0:445            *:* 

  UDP    0.0.0.0:1030           *:* 

  UDP    0.0.0.0:1032           *:* 

  UDP    0.0.0.0:1064           *:* 

  UDP    0.0.0.0:3456           *:* 

  UDP    127.0.0.1:53           *:* 

  UDP    127.0.0.1:1029         *:* 

  UDP    192.168.0.89:53        *:* 

  UDP    192.168.0.89:137       *:* 

  UDP    192.168.0.89:138       *:* 

  UDP    192.168.0.89:500       *:* 

 
Пока  не  останавливаемся  на  тонкостях  отображения  информации  в  утилите netstat.exe 

относительно  того,  в  чем  разница  между  нижеприведенными  строками,  об  этом  пойдет  речь 
позднее, пока занимаемся более важными вещами. 

 

UDP    0.0.0.0:13             *:*  


Copyright © 2021 Файлообменник files.d-lan.dp.ua

Использование любых материалов сайта возможно только с разрешения автора.