Программа для определения com портов компьютера windows

ComPort - обеспечивает работу до 4-х СОМ портов одновременно. Графическое и текстовое отображение сигналов СОМ портов в реальном времени. Позволяет циклически передавать и принимать информацию по RS-232. Полный контроль над СОМ портами

ComPort
для Windows

ComPort скриншот № 1

ComPort — обеспечивает работу до 4-х СОМ портов одновременно. Графическое и текстовое отображение сигналов СОМ портов в реальном времени. Позволяет циклически передавать и принимать информацию по RS-232. Полный контроль над СОМ портами.

Программа предназначена для определения функционального состояния СОМ портов, визуализации процессов происходящих на контактах COM-порта. Удобна для проверки работоспособности портов и установки заданных значений портов.

Приложение ComPort позволяет:

  • настраивать параметры портов СOM1-COM4;
  • передавать и принимать одноразовые посылки через выбранные порты;
  • передавать и принимать циклические посылки с заданным интервалом времени;
  • визуально отображает состояния линий на разъеме COM порта;
  • отображать и изменять настройки портов

ТОП-сегодня раздела «Внешние устройства»

скачать USBDeviewUSBDeview 3.06

USBDeview — небольшая программка, которая выведет список всех USB устройств (флеш-карта,…

скачать ScanLiteScanLite 1.1

ScanLite — небольшая бесплатная утилита, с помощью которой можно быстро и легко осуществлять…

скачать VueScanVueScan 9.7.97

VueScan — приложение, которое позволяет изменить стандартный интерфейс сканера на…

скачать BlueSoleilBlueSoleil 10.0.498.0

BlueSoleil — одно из наиболее популярных приложений, которое при помощи Bluetooth поможет соединить…

скачать TWAIN WEBTWAIN WEB 1.6 beta

TWAIN@Web — бесплатная программа, с помощью которой можно осуществлять сканирование по сети,…

скачать PaperScanPaperScan 3.0.130 Free

PaperScan — универсальная программа для сканирования различных документов. Отличительной…

Отзывы о программе ComPort

алексей про ComPort 1.1 [14-12-2019]

если я соединил два компа как изменяя навстройки одного порта я могу их увидеть на втором компьютере
| | Ответить

Контроль последовательного порта компьютера (COM)

Контроль параллельного порта компьютера (LPT)

Контроль USB-порта компьютера

Сегодня компьютерные вирусы буквально наводнили мир и свободно перемещаются по Интернету, поэтому когда речь заходит о портах, то большинство пользователей чаще вспоминают о логических портах, которые в таких сетевых технологиях, как TCP/IP или UDP, используются для организации каналов связи, и забывают о физических портах для подключения внешних устройств. Впрочем, даже для подключения принтеров, мышей и клавиатур все чаще применяются высокоскоростные USB-порты и все реже — старые добрые COM и LPT (последовательный и параллельный порты). Однако последние имеются даже в самых современных компьютерах, и, наверное, пришло время использовать их для каких-то других целей (скажем, для управления тем или иным специализированным устройством).

Для того чтобы отследить обмен между компьютером и каким-то устройством, как раз и необходимы программы — анализаторы портов.

Конечно, в продаже имеются и специальные приборы (пробники) для контроля аналоговых и цифровых сигналов (в том числе и анализаторы USB, LPT и COM), однако, как любое профессиональное оборудование, стоят они довольно дорого.

Контроль последовательного порта компьютера (COM)

Одну из программ для анализа последовательного порта написал Валерий Ковтун (http://valery-us4leh.narod.ru/). Спасибо ему за хороший инструмент!

Программа называется Com Port Visual Control (http://valery-us4leh.narod.ru/ComVC.html), распространяется бесплатно и предназначена для визуального контроля, документирования обмена данными и исследования процессов, происходящих в приемопередатчике UART во время работы приложений, использующих СОМ-порт персонального компьютера. Функционирует эта программа в среде Windows 9x/Me/NT/2000/XP и осуществляет постоянный просмотр (мониторинг) всех регистров микросхемы UART. Контроллер имеет формат 8×8 (восемь регистров по восемь бит) и для каждого регистра независимо отображается: текущее состояние (одновременно в десятичном и в шестнадцатеричном формате), а также логическое состояние. Кроме того, программа может записывать значения в регистры (также в обоих форматах — десятичном и шестнадцатеричном) и соответственно управлять логическим состоянием. Помимо этого она отслеживает изменения в регистрах и ведет протокол (LOG) согласно командам приемопередатчика микросхемы UART, а также ведет протокол принятых и переданных данных на уровне машинных кодов. После работы программа просматривает и сохраняет LOG-файлы и может осуществлять в них поиск необходимой информации.

Com Port Visual Control имеет встроенный приемопередатчик для стандартной настройки режимов порта: битов данных, стоповых битов, скорости, четности, контроля ошибок, возможности приема и передачи текстовых данных и команд модема, а также индикатор контроля активного состояния команд UART (поддерживается 17 основных команд). Кроме того, осуществляется контроль портов компьютера с одновременным отображением группы регистров и битов состояния и ведется протокол изменения данных в базовом регистре.

Из подобных программ можно отметить бесплатную утилиту ComLite32 компании Realtime Communications (RTCOMM, http://www.rtcomm.com/), написанную для Windows 95, и ее расширенную платную версию ComLab32 (http://www.rtcard.com/comlab32.html).

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

Программы ComLite32 и ComLab32 работают с портами RS-232, RS-422, RS-485 и RTX485 (с последним портом — только на чтение) и позволяют вести протокол обмена с этими портами в обоих направлениях. Системные требования программы ComLite32 минимальны: всего 8 Мбайт оперативной памяти, 6 Мбайт дискового пространства и хотя бы одно устройство, работающее с последовательным портом (включая PCMCIA-модемы ноутбуков).

И наконец, хотелось бы отметить программы Advanced Serial Port Monitor и Advanced Serial Data Logger компании AGG Software (http://www.aggsoft.ru). Advanced Serial Data Logger обрабатывает данные, полученные по RS-232, и передает их в файл Excel, Access, или в какое-либо другое приложение Windows. Программа предоставляет возможность в реальном времени собирать данные с любого устройства, а также принимать и передавать данные по интерфейсу RS-232 или по интерфейсу RS-485 при наличии аппаратного конвертора. Advanced Serial Data Logger собирает данные с последовательного порта, обрабатывает их в соответствии с нуждами пользователя, выделяет блоки данных из общего потока, а затем передает данные в любое приложение Windows или DOS — путем нажатия соответствующих клавиш в окне приложения. Данные передаются через DDE (Dynamic Data Exchange), ODBC, OLE и т.д. Это решение можно использовать в автоматизированных системах сбора данных или в системах анализа звонков офисных АТС.

Advanced Serial Data Logger также может передавать запросы и команды через последовательный порт для непосредственного управления устройствами по ASCII (по умолчанию) или MODBUS-протоколу. Таким образом, программа Advanced Serial Data Logger становится сервером ввода-вывода. Что касается управления и настройки, то они очень просты и интуитивно понятны. Дополнительное программирование для сбора данных не требуется.

Кроме того, Advanced Serial Data Logger может работать как сервис под Windows NT/2000/XP/2003, который будет стартовать при загрузке системы и записывать данные с последовательного порта в файл на диске или в другие указанные места еще до входа пользователя в систему (и продолжит функционировать после завершения сеанса пользователя).

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

Что касается программы Advanced Serial Port Monitor, то она может пригодиться как начинающим пользователям, так и профессионалам.

Advanced Serial Port Monitor может служить как для наблюдения за передачей данных другими приложениями, так и для отправки и приема данных через последовательный порт компьютера (RS-232). Программа предоставляет различные способы сохранения данных в файл или визуализации их на экране монитора.

Таким образом, вы можете работать с любыми устройствами, работающими по интерфейсу RS-232 либо RS-485 (RS-422) при наличии соответствующего преобразователя. Вы будете наблюдать за обменом данными между любым Windows-приложением и внешними устройствами, подсоединенными к последовательному порту. Это может быть или измерительное устройство, или домашняя радиостанция, или же другой компьютер, соединенный через z-модемный или нуль-модемный кабель.

Advanced Serial Port Monitor поддерживает дуплексный режим работы, то есть вы можете наблюдать за обменом в обе стороны, не используя другие программы и не прерывая работу других приложений. Вся проходящая через последовательный порт информация отображается на экране в специальном окне и может быть записана в файл. Все отображаемые параметры можно менять во время работы. При этом программа поддерживает два режима — автоматический и ручной, то есть можно отсылать данные по нажатию кнопки «Отправить» или они будут отправляться автоматически через определенный интервал (от 10 до 10 000 мс).

С помощью дополнительных модулей можно не только принимать данные или передавать команды, но и эмулировать работу каких-то конкретных устройств, а в режиме наблюдателя (перехватчика) — просто следить за обменом данными между внешним устройством, подсоединенным к последовательному порту, и каким-то приложением Windows. И наконец, Advanced Serial Port Monitor имеет свой встроенный язык написания сценариев, с помощью которого можно запускать программу с предустановленными опциями и действиями, а также выполнять команды из модулей.

Контроль параллельного порта компьютера (LPT)

У Валерия Ковтуна есть и другая полезная коммуникационная программа — LPT 3D Hard Analyzer. Программа представляет собой графический запоминающий анализатор-осциллограф, предназначенный для снятия цифровых сигналов и протоколов устройств, подключенных к параллельному порту компьютера в ОС Windows 95/98/Mе/NT/2000/XP.

LPT 3D Hard Analyzer работает через LPT-порт и позволяет анализировать пять входных линий (каналов) и 12 выходных каналов (то есть управлять цифровыми сигналами с компьютера) в режиме SPP или манипулировать четырьмя выходными и 14 входными параметрами в режиме EPP. Двунаправленный ЕРР-режим параллельного порта предусмотрен практически на всех компьютерах, выпущенных после 1993 года. Иногда, правда, он не включен по умолчанию в BIOS (это необходимо проверить и по возможности — включить).

При работе в режиме осциллографа программа запоминает все 17 графиков (линий), глубина (отображаемая длина графика по времени) которых ограничена только свободной памятью компьютера (а с учетом файла подкачки в OC Windows это будет несколько сот мегабайт). Также доступна возможность автоматического сохранения каждой новой страницы в графическом формате.

Анализатор-осциллограф LPT 3D Hard Analyzer строит графики изменения данных в двумерном и трехмерном виде, а также показывает две независимые диаграммы: 17-канальный осциллограф (по биту на канал) и график регистров порта (входных, выходных, контрольных). Имеется регулировка скорости анализа, и отображается общее количество циклов за весь период продвижения графика. Можно программировать и количество циклов с возможностью копирования графиков в память (глубина построения ограничена только доступной оперативной памятью компьютера). Программа имеет средства для экономии системных ресурсов во время считывания данных с высокоскоростных устройств, подключенных к LPT-порту и синхронизированных с ним данной программой (то есть она может применяться на относительно слабых компьютерах). При отключении графического режима вывода на дисплей графики копируются только в память компьютера — в результате скорость работы программы повышается в десятки раз. По окончании анализа график просматривается так же, как если бы он был переведен в графический режим отображения. Прокрутка графиков осуществляется плавно и постранично (правой кнопкой мыши). Имеется гибкая настройка скорости и шага прокрутки, а также возможность автоматического сжатия всей диаграммы в пределах одной страницы. Снимки состояния выбранной страницы графика можно запоминать в форматах BMP и WMF (Windows-метафайл) или задавать автоматическое сохранение в отдельный файл каждой новой страницы. Для просмотра в пакете имеется встроенный браузер графических файлов.

Модуль управления портами основан на ядре кода другой программы Валерия Ковтуна — XP LPT, использующей драйвер ввода-вывода LPT WDMIO.

Программа XP LPT предназначена для управления параллельными портами компьютера из ОС Windows 9x/2000/XP и имеет следующие возможности:

  • производит автоматическую регистрацию драйвера в Windows XP на правах администратора системы;
  • ведет автоматическую проверку установленных портов;
  • осуществляет одновременное чтение регистров данных, контроля и состояния выбранного LPT-порта;
  • отображает содержимое регистров одновременно в разных форматах (десятичном и шестнадцатеричном), что избавляет от необходимости пересчета.

У этой программы доступен исходный код, описание, а также примеры создания программ для управления внешними устройствами посредством параллельного порта на основе данного решения.

Как мы уже упоминали, программа функционирует через драйвер ввода-вывода LPT WDMIO и предназначена специально для обучения и отладки самостоятельно изготавливаемых программ управления внешними устройствами посредством параллельного порта в среде Windows.

Валерий Ковтун также создал программу PortControl, которая используется для управления параллельным портом с 17-битным анализатором протокола обмена данными устройств, использующих LPT-порт компьютера. Программа написана для семейства ОС Windows и обладает следующими возможностями:

  • имеются три независимых канала, с помощью которых реализуются ввод адреса порта (регистра), автоматическое чтение данных с порта, запись данных в порт в десятичном и шестнадцатеричном формате, а также отображение данных в форматах bite, word и Dword;
  • отображается состояние каждого из 17 битов LPT-порта и осуществляется управление выходными битами;
  • имеется девять программируемых банков памяти порт/данные;
  • работает 17-канальный анализатор-осциллограф логического состояния каждого бита с возможностью установки скорости анализа (по времени), синхронизации по любому из 17 битов — как по высокому уровню (1), так и по низкому (0), а также работает счетчик переданных данных по каждому биту и многие другие функции для удобной проверки и настройки цифровых устройств, подключенных к компьютеру.

Эта программа может использоваться как в качестве цифрового многоканального осциллографа, так и для управления внешними устройствами посредством компьютера.

Программы анализа и управления портами могут иметь различные применения. Во-первых, их можно использовать для детальной проверки и тестирования работоспособности параллельного порта компьютера, например для проверки быстродействия LPT-порта и системы в целом с помощью режима Test out. Причем все операции удобно наблюдать во времени с помощью встроенного 17-канального анализатора-осциллографа с возможностью гибкой настройки под определенный тип измерений.

Для анализа подключенных к компьютеру высокоскоростных шин передачи цифровых данных различных радиоэлектронных устройств и микросхем рекомендуется компьютер с частотой процессора не ниже 300 МГц. Но для низкоскоростных устройств нормально работают и более слабые компьютеры под управлением Windows 95.

Во-вторых, программы-анализаторы можно применять для управления, анализа, настройки, разработки, проверки и ремонта цифровых радиоэлектронных схем (отдельных модулей, блоков, управляющих шин, протоколов управления синтезаторов частот, элементов управления цифровыми индикаторами, программаторами ПЗУ и т.д.), то есть там, где широко используются цифровые микросхемы, формирующие управляющие сигналы и как-то реагирующие на них.

В-третьих, программы — анализаторы портов можно просто использовать для считывания протоколов обмена. А синхронизировав шину данных и управляющие сигналы устройств хранения и идентификации информации, можно даже прочитать закодированные в последовательности нулей и единиц служебные сигналы и/или пароли доступа. В общем, эти программы предназначены для расширения возможностей радиолюбителя, электронщика или инженера-разработчика. Наглядное изучение протоколов работы радиоэлектронных устройств может быть полезно также при разработке собственного программного обеспечения под управлением различных контроллеров.

В-четвертых, программы-анализаторы окажутся очень полезными для ремонта оргтехники, так или иначе использующей параллельный порт компьютера, — различных принтеров, сканеров, кассовых аппаратов и других устройств.

В-пятых, перечисленные программы пригодятся начинающим программистам. Например, если вы решили написать небольшую программу для управления теми или иными внешними устройствами посредством параллельного порта, то вам будет очень удобно визуально наблюдать алгоритм работы вашей программы в многофункциональном интерфейсе PortControl. В результате вам удастся вовремя обнаружить и устранить допущенные ошибки без использования измерительных приборов на выходе порта и без вмешательства в схемотехнику управляемого устройства.

И наконец, для параллельного порта Валерий Ковтун предлагает полезную программу PinRegistrator, предназначенную для слежения и регистрации логического состояния битов LPT-порта. Написана программа под Windows 95/98/Me и протоколирует состояние параллельного порта автоматически или вручную.

Контроль USB-порта компьютера

У вышеупомянутой компании AGG Software существуют программы, предназначенные для анализа и мониторинга USB-портов, шин, контроллеров и устройств. Например, Advanced USB Monitor (http://www.aggsoft.ru/usb-monitor/index.htm) позволяет захватывать, анализировать, просматривать и перерабатывать USB-трафик для эффективной отладки и тестирования USB-устройств. Поддерживаются устройства, соответствующие всем спецификациям: UHCI- (старые устройства USB 1.x, работающие на скоростях до 1,5 Мбит/с), OHCI- (устройства USB 1.x следующего поколения, работающие на скоростях до 12 Мбит/с) и, наконец, устройства EHCI-стандарта USB 2.0 (работают на скоростях до 480 Мбит/с). Advanced USB Monitor позволяет расширить лабораторный инструментарий как разработчиков USB-устройств, так и продвинутых пользователей.

Advanced USB Monitor может отображать передаваемые пакеты данных в читаемом виде, декодировать дескрипторы, определять ошибки в пакетах и измерять производительность устройств. Во время захвата пакеты данных могут отображаться в реальном времени, что позволяет отслеживать состояние устройств. Пакеты данных сохраняются в хронологическом порядке и содержат полную информацию об адресах и конечных точках. Это позволяет очень просто идентифицировать пакеты, фильтровать их и осуществлять по ним поиск. Программа предоставляет несколько уровней детализации при отображении данных. Быстрое декодирование USB-трафика дает возможность работать даже с такими скоростными устройствами, как USB-диски или USB-камеры. Причем захват, мониторинг и запись захватываемых данных происходят в реальном времени. С помощью Advanced USB Monitor вы можете просматривать трафик в тот же самый момент, когда он возникает, причем одновременно для ряда USB-устройств с помощью нескольких одновременно открытых окон мониторинга.

Использование драйвера ядра для захвата данных с поддержкой WDM, WMI, Power Management и PNP позволяет достичь полной совместимости с операционной системой и USB-устройствами, обеспечивая максимальное быстродействие.

Программа также дает возможность измерить производительность любого USB-устройства. Advanced USB Monitor легко ориентируется в топологии USB-устройств и получает детальную техническую информацию о таких устройствах, как USB-диски (интерфейсы, конечные точки, информация в реестре, информация о классе и многое другое). В конце исследования можно получить готовый отчет о подключенных устройствах и USB-трафике, а по окончании исследований распечатать его на принтере. Кроме того, программа имеет развитые функции экспорта данных в форматы PDF, XML или Microsoft Word, что позволяет не ограничивать процесс постобработки данных только одной этой программой.

По тому же принципу, что и вышеописанные анализаторы-осциллографы для параллельного порта, работают и USB-осциллографы (http://www.usb-osc.narod.ru/). USB-осциллограф в первую очередь предназначен для радиолюбителей, которые по роду своей деятельности сталкиваются с необходимостью проводить анализ низкочастотных аналоговых сигналов, регистрировать длительные медленно меняющиеся процессы, а также исследовать двоичные сигналы от различных устройств. Кроме того, USB-осциллограф может быть использован в качестве простого двухканального вольтметра для напряжений в диапазоне +/–20 В, частотомера для частот сигналов до 50 кГц или пробника со звуковым оповещением.

Итак, USB-осциллограф обеспечивает следующие режимы работы:

  • двухканальный осциллограф (маркерные измерения, синхронизация, измерение напряжения и частоты сигнала, фильтрация и т.д.);
  • двухканальный спектроанализатор (маркерные измерения, различные оконные функции, фильтрация и т.д.);
  • двухканальный самописец (маркерные измерения, запись сигнала в течение нескольких десятков часов и т.д.);
  • 8/16-канальный логический анализатор (маркерные измерения, синхронизация, пропуск заданного количества импульсов, поиск заданной логической комбинации, расшифровка интерфейсов UART, SPI, I2C, 1-Wire и т.д.);
  • 8-канальный логический генератор (табличное задание сигнала или непосредственное построение временных диаграмм мышью и т.д.).

Кроме того, USB-осциллограф позволяет сохранять результаты всех измерений в виде векторного или растрового рисунка для последующего импорта в другие программы или для сохранения в файле для последующего анализа. Результаты всех измерений можно распечатывать, копировать в буфер обмена, а также задавать события и сопровождать их звуковым комментарием. Можно рассчитывать различные цифровые фильтры и производить фильтрацию аналоговых сигналов и сглаживание временных диаграмм осциллографа. Устройство позволяет отображать статистику по всем каналам логического анализатора и генератора.

Однако USB-осциллографы — это уже не просто программы, а устройства, выполненные в виде внешних блоков с USB-интерфейсом и сопровождаемые обслуживающими их программными модулями. То есть это целый универсальный измерительный комплекс, состоящий из коммутационной приставки и компьютера. Кстати, производить обновление прошивки такого устройства можно по USB-шине, что позволяет дополнять возможности устройства любыми функциями на заказ.

Производят такие устройства украинская компания Da-Labs (http://www.da-labs.com/) и российская компания «Трейд-М» (http://motor-master.ru/index.htm/). Цена комплекта российской фирмы составляет 1850 руб. без учета доставки.

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

КомпьютерПресс 6’2006

В этой статье рассматривается проверка COM-портов на компьютере на примере преобразователя USB-COM серии UPort 1150.

Методы, описанные в этой статье, подойдут для проверки встроенных COM-портов на компьютере или COM-портов преобразователей интерфейсов, например USB-COM или USB-Ethernet, а также другого оборудования, которое требует установки драйвера виртуального COM-порта.

Содержание статьи:

  • Скачать PComm Lite
  • Как проверить RS-232 интерфейс?

    • Схема подключения внешнего устройства с RS-232
  • Как проверить RS-422 интерфейс?

    • Схема подключения внешнего устройства с RS-422
  • Как проверить RS-485 интерфейс?

    • Схема подключения внешнего устройства с RS-485
  • Подтягивающие и согласующие резисторы
  • Рекомендации по устранению неисправностей

Скачать PComm Lite

Для работы с СОМ портом нужна программа, которая позволит открыть СОМ порт и отправить в него данные. MOXA предлагает воспользоваться бесплатной утилитой PComm Lite.

Для проверки RS-232 можно воспользоваться простым способом: достаточно замкнуть контакты RX и TX между собой. Тогда все переданные данные будут приняты обратно.

Если у вас полный RS-232 или нужно использовать аппаратный контроль за передачей данных, тогда вам нужно распаять специальную заглушку. В ней должны быть соединены между собой следующие контакты:

После этого мы можем открыть СОМ порт через программу и отправить туда любые данные. Отправленные данные должны вернуться обратно в этот же порт.

На примере PComm Lite это будет выглядеть так.

Убедитесь, что COM-порт настроен на RS-232.

Откройте программу PComm Terminal Emulator, во вкладке Port Manager откройте СОМ порт, соответствующий вашему устройству. Скорость и другие параметры можно оставить по умолчанию.

Однако, если вы подключаете внешнее устройство к СОМ порту, эти параметры должны совпадать с параметрами внешнего устройства.

Мы отправили несколько единиц в СОМ порт и получили их обратно, также видим одинаковые значения счетчиков TX и RX, что подтверждает получение всех отправленных данных.

Если вы хотите отображать текст, который печатаете, то вам нужно включить функцию Local echo на вкладке Terminal при открытии порта. Важно: после включения функции Local echo, если вы замкнули TX и RX, то текст в терминале удвоится, потому что будет отображен вводимый символ и тот, который получен обратно.

Схема подключения внешнего устройства с RS-232:

Прямой кабель DTE-DCE (компьютер-модем)


Нуль-модемный кабель DCE-DCE (модем-модем)


Нуль-модемный кабель DTE-DTE (компьютер-компьютер)

Как проверить RS-422 интерфейс?

Для проверки RS-422 можно также воспользоваться простым способом: достаточно замкнуть контакты TD+ на RD+ и TD- на RD-. Тогда все переданные данные будут приняты обратно.

Убедитесь, что COM-порт настроен на RS-422.

В терминале видны данные, которые мы отправили в СОМ порт.

Схема подключения внешнего устройства с RS-422:

Как проверить RS-485 интерфейс?

Интерфейс RS-485 может быть реализован на 2 или 4 контактах.

Для варианта RS-485 с 4 контактами проверка сводится к тем же действиям что и в RS-422 с таким же подключением контактов TD+ на RD+ и TD- на RD.

Для варианта RS-485 с 2 контактами нужно использовать внешнее устройство для проверки работы. Это может быть второй порт UPort или заведомо исправное устройство с RS-485.

Убедитесь, что COM-порт настроен на RS-485 и правильно указано количество контактов.

Схема подключения внешнего устройства с RS-485:


Подтягивающие и согласующие резисторы

В некоторых моделях оборудования есть встроенные резисторы, которые обеспечивают правильную работу линий RS-422/485.

Согласующий резистор или терминатор 120 Ом – ставится в начале и конце линии для предотвращения отражения сигнала от конца линии и искажения полезного сигнала в RS-422/485.

При большой длине линии связи (более 100 метров) возникают эффекты длинных линий, которые связаны с индуктивностью и ёмкостью кабеля. Получается, что сигнал, переданный в линию с одной стороны, начинает искажаться по мере распространения в другую сторону. Поскольку на практике кабель на всей длине имеет одинаковые параметры погонной ёмкости и индуктивности, это свойство кабеля характеризуют волновым сопротивлением. Поэтому, если на приёмном конце кабеля использовать резистор с сопротивлением, равным волновому сопротивлению кабеля, то негативные резонансные явления значительно ослабляются.

Подтягивающие резисторы (pull high/low resistors) – предназначены для ограничения тока, протекающего по сигнальным цепям, и чтобы сделать состояние цифрового входа по умолчанию высоким или низким.

Цифровой вход нельзя напрямую подключить к питанию без ограничения тока, а также нельзя оставлять вход без подключения к чему либо, т.к. возможны ложные изменения состояния входа из-за внешних наводок.

Цепь с подтягивающим резистором можно представить в виде делителя напряжения из двух резисторов — одного подтягивающего и другого на месте кнопки.

Логический вход имеет ёмкость относительно земли, что влияет на время нарастания или спада сигнала при размыкании кнопки. Время спада или нарастания — это время между размыканием кнопки и достижением сигнала порогового напряжения, при достижении которого логическим входом фиксируется изменение логического состояния с высокого «1» на низкий «0» или наоборот.

Время спада и нарастания — зависит от произведения сопротивления, ёмкости и коэффициента, который учитывает пороговое напряжение. При подключении различных устройств значение ёмкости изменяется, это ведет к изменению формы сигнала, что может негативно сказаться на правильном определении уровня сигнала.

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

Обычно значения подтягивающих резисторов по умолчанию оптимальны, но если форма сигнала сильно искажена или данные передаются с ошибками, то вам следует изменить значения подтягивающих резисторов.

Ниже показан пример расположения переключателей для изменения значений подтягивающих резисторов.

Рекомендации по устранению неисправностей

Структурная схема подключения устройства с СОМ портом к ПК выглядит так:

Схема подключения на примере UPort

  1. Если вы настроили подключение, но оно у вас не работает, убедитесь, что ваш конвертер работает и настроен правильно. Рекомендации по проверке RS-232/422/485 даны выше.
  2. Проблема может быть в подключении к конечному устройству, проверьте распиновку конвертера и конечного устройства.
  3. Проблема может быть в отличающихся параметрах СОМ порта на конвертере и конечном устройстве: скорости, четности, типе интерфейса, протоколе данных и т.д.
  4. Также можно изменить номинал подтягивающих резисторов и добавить согласующий резистор (для RS-422/485).
  5. Проблема может быть в программном обеспечении, попробуйте использовать другое ПО для проверки, например PComm Lite.

Если у Вас есть вопросы по продукции МОХА, обращайтесь по телефону: +7 (495) 419-1201 или по e-mail: russia@moxa.pro

Терминал (для работы с COM портом) под Windows.

    Зачем понадобилось создавать еще одну программу терминал ???

    На просторах интернета полно подобных программ ?!

    Что есть, то есть !

    Но есть маленькое НО, все дело в нюансах !

— Требуемый функционал был разбросан по нескольким программам и это было очень не удобно….

— Часть требуемых функций не было и вовсе…

— Часть программ банально падали в самый неподходящий момент….

— Часть функций реализованы с ошибками….

Так жить нельзя и работать тоже ….  :)

Значит надо создать свою программу, с необходимым функционалом.

 


    Данный проект задумывался как вспомогательный для тестирования большого проекта связанного

с телеметрией. В проекте требовалось принимать и передавать данные через COM порт компьютера.

Проект готов и сдан. Программа осталась и продолжает использоваться по назначению, для отладки 

разного рода устройств  !

    На текущий момент программа продолжает дорабатывается, исправляются ошибки, добавляются

новый функции.

    В данной статье будут публиковаться все изменения и нововведения сделанные в программе.


Краткое описание программы.

    Программа создана в среде Microsoft Studio 2008, на языке VB.

Работоспособность проверенна в следующих ОС: Windows XP, Windows 7-32/64Pro, Windows 11-64Pro.

Репозитарий программы представлен на GitHub, готовый бинарный файл(exe) в виде Zip архива.

Собранная программа представляет из себя один запускаемый файл.

Программа не требует установки и работает из любого места.

Программа не требует для запуска привилегий администратора.

Программа может:

1. Подключаться к любому com порту в системе.

2. Выставлять параметры работы com порта, включая нестандартные скорости работы порта

(при условии что драйвер windows поддерживает нестандартные скорости,

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

Например: При заданной 250000 — в железе получаем 256000, ;(

увы точнее делитель не устанавливается….).

3. Производить запись принимаемых данных в файл.

4. Передавать в порт строку с разными концовками в виде дополнительных кодов.

5. Циклически передавать в порт строку с заданным интервалом времени.

6. Передавать в порт файл.

7. Проиграть сценарий из файла (передача данных + задержка между данными).

8. Показывать состояние линий: CTS, DSR, RI, CD.

9. Изменять состояние линий: DTR, RST.

Программа пока не может:

1. Разбирать ESC последовательности.

2. Вести историю передаваемых строк.

3. Передавать в порт кода нажатых клавиш в окне приема и передачи.

4. Показывать ответы (RX от устройства) при проигрывании сценария из файла.

5. Вести в логах длинную историю (автоматическое укорачивание при достижении заданной длинны).

На текущий момент планов по развитию и доработки программы много.

Обычно в процесс работы с программой, во время отладки очередного устройства,

появляется необходимость в новом функционале.

Так в программу попадает новый функционал, продиктованный практикой.

При добавления нового функционала в программу, иногда добавляются и проявляются

глюки (по недосмотру), прошу отнестись с понимание :)

Глюки исправляются, и новая версия выкладывается в репозитарий.

Исходники на GiHub.

Текущая версия: Скачать (exe) в Zip архиве.

На основе данной программы была создана еще одна утилита для работы по протоколу PELCO-D,

для тестирования и управления камерами и поворотными платформами.


19-12-2022 

Текущая версия: v1.5.0.

[+]  Исправление: Замораживание интерфейса терминала при приеме потока данных.

12-12-2022 

Текущая версия: v1.4.1.

[+]  Исправление: Не верная полярность сигналов CTS/DSR/RI/CD.

[+]  Исправление: Терминал вылетает с ошибкой при запуске, если в системе нет СОМ портов.

5-12-2022 

Текущая версия: v1.4.0 (По просьбе коллеги был добавлен новый функционал).

[+]  Новое: Вывод в строку статуса состояния сигналов CTS/DSR/RI/CD.

[+]  Новое: Добавлена возможность изменения состояния сигналов RTS/DTR.

1-6-2022 

Текущая версия: v1.3.8

[+]  Исправление: Вывод в TXT и HEX строки.

3-8-2021 

Текущая версия: v1.3.7

[+]  Исправление: Зависание программы при отключении COM порта из системы (выдернули кабель…). 

29-7-2021 

Текущая версия: v1.3.6

[+]  Исправление: Перепутаны STOP BIT 1.5 <-> 2. 

22-7-2021 

Текущая версия: v1.3.5

[+]  Исправление: Не корректный вывод кодов r n. 

8-6-2021 

Текущая версия: v1.3.4

[+]  Исправление: Подвисание интерфейса при приеме не отображаемых кодов (0x00-0x19). 

[+]  Исправление: Конвертации кодов n   ->  nr. 

3-12-2020 

Текущая версия: v1.3.2

[+]  Вывод подробного описания СОМ портов. 

[+]  Проигрывание сценария из текстового файла. 

 Пример сценария (Файл TXT), формат:

 81 01 04 07 03 FF
 > 100
 81 01 04 07 02 FF

 Где:
 81 01 04 07 03 FF  — значения байт в TXT-HEX формате отправляемых в СОМ порт.
 > 100                      — Формирование паузы 100 мс.
 81 01 04 07 02 FF  — значения байт в HEX формате отправляемых в СОМ порт.

[+]  Перевод строки в TXT-HEX виде в байтовый массив и передача в СОМ порт. 


15-05-2019 

Версия: v1.2.2

[+]  Добавлена история ввода передаваемых строк. 


 16-12-2018 

Версия: v1.2.1

[+]  Внесены изменения в интерфейс. Часть функций вынесены в окно приема. 

[+]  Добавлена функция Вкл/Выкл печати символа с кодом 0x0A.

        0x0D + 0x0A     ->     0x0D.

[+]  Решено: При закрытии порта продолжалась передача в порт.

[+]  Добавлена подсказка при наведении курсора на элементы управления.

[+]  При запуске программы производится автоматический поиск СОМ портов в системе.


 4-09-2018 

Версия: v1.1.0

[+]  Добавлена передача в порт кодов нажатых клавиш в окне приема и передачи.

Скажем «Стоп!» враждебным программам!

Среди вопросов, на которые часто приходится отвечать специалистам в области безопасности, есть такой: «Если я обнаружил на своей системе открытый порт, означает ли это, что у меня уже появился «троянский конь»?». Всевозможными вариациями на эту тему пестрят списки почтовых рассылок по проблемам безопасности, и на все подобные вопросы неизменно следует один ответ: проследите номер порта до той программы, которая открыла его, и исследуйте эту программу. Процесс трассировки открытого порта до открывшей его программы именуется поиском соответствия. Разумеется, такой ответ предполагает, что пользователь достаточно хорошо разбирается во всем, что касается номеров портов, что у него имеется подходящее средство для получения списка открытых портов и что он может определить, является ли найденная программа опасной. Рассмотрим сначала проблему выявления открытых портов в общих чертах, а затем я представлю 11 средств проверки портов для среды Windows.

Пособие по протоколам TCP/UDP

Чтобы исследовать состояние портов, нужно иметь некоторое представление о протоколе TCP/IP и сетевых соединениях. В настоящее время для организации связи между компьютерами почти повсеместно используется сетевой протокол TCP/IP. Два важнейших транспортных протокола верхнего уровня TCP/IP (Open System Interconnection, OSI, Layer 4) — это TCP и UDP. На один из этих двух протоколов обычно возлагается задача передачи информации, которой обмениваются два компьютера (или два процесса на одной системе). Функцию маршрутизации пакетов от одного компьютера к другому как TCP, так и UDP препоручают протоколу IP низшего уровня. Среди прочих данных заголовок IP-пакета содержит исходный IP-адрес, а также IP-адрес назначения (или, когда это необходимо, групповые либо широковещательные адреса) двух компьютеров, а также номер протокола (скажем, 6 для TCP и 17 для UDP). Протокол нижнего уровня — IP — осуществляет маршрутизацию пакета по логической сети от исходного устройства к устройству-получателю. Когда пакет прибывает в пункт назначения, ассоциированный с сетевой интерфейсной платой стек IP удаляет кадр пакета IP и исследует протокол верхнего уровня (т. е. TCP или UDP). О различиях между протоколами TCP и UDP рассказано во врезке «UDP и TCP».

О портах

Пакеты TCP и UDP содержат номера исходного порта и порта назначения. Порт — это точка ввода/вывода, связывающая сеть с приложением (или со службой либо демоном). Порты имеют номера от 0 до 65535. Такая схема нумерации выбрана потому, что в заголовках пакетов TCP и UDP на номера исходных портов и портов назначения выделяется 16 (216) разрядов (216 соответствует 65336 возможным номерам портов). Нумерация точек ввода/вывода — удобный способ, позволяющий как компьютерам, так и пользователям следить за тем, какой порт какой программе принадлежит.

Еще на заре эпохи Internet организация Internet Assigned Numbers Authority (IANA), ответственная за распределение номеров, решила зарезервировать первые 1024 номера портов (т. е. номера от 0 до 1023) для направляющих запросы объектов. IANA назначает эти так называемые хорошо известные номера портов (некоторые типичные хорошо известные номера портов приведены в табл. 1). Хотя почти все списки хорошо известных номеров портов ныне устарели и уже не являются на 100% точными, популярные номера портов для наиболее широко распространенных служб и протоколов остаются неизменными на протяжении более 10 лет.

Номера портов от 1024 до 49151 называются зарегистрированными номерами портов, а порты от 49152 до 65535 именуются динамическими или частными номерами портов. На практике порты от 1024 до 65535 генерируются динамически, и ими может пользоваться любая прикладная программа. Когда запускается какая-либо прикладная программа или служба, она обычно выясняет, можно ли использовать тот или иной номер порта, и если номер еще не занят, эта программа либо служба открывает данный порт. Номера портов, открываемых приложением, могут всегда быть одними и теми же, но могут и генерироваться произвольно. Чем популярнее приложение, тем выше вероятность того, что разработчики программных средств для Internet дадут этой программе возможность пользоваться эксклюзивным номером порта. В табл. 2 приводятся некоторые номера портов для популярных приложений, а табл. 3 содержит список типичных номеров портов для Windows.

Пример коммуникации

Важно понимать, что порт происхождения и порт назначения — это не одно и то же. В большинстве случаев, когда администратор анализирует трафик порта, его интересуют номера портов назначения. Порт назначения — это обычно хорошо известный порт, тогда как порты происхождения (иначе говоря, исходные порты) могут иметь произвольно сгенерированные номера свыше 1023. На практике, однако, произвольные номера генерируются обычно в диапазоне от 1024 до 3000. Так, когда пользователь с помощью браузера Microsoft Internet Explorer (IE) соединяется с Web-сайтом, порт назначения имеет номер 80, тогда как номер порта происхождения является случайно сгенерированным числом. На рисунке представлен демонстрационный сеанс, который был начат, когда мой браузер установил связь с узлом http://www.secadministrator.com. IP-адрес назначения — 63.88.172.127, а номер порта — TCP 80. IP-адрес системы происхождения — 192.168.168.160, а номер порта — TCP 2335.

Частный IP-адрес 192.168.168.160 указан потому, что мой компьютер расположен за брандмауэром, который соединяет его с Internet с присвоением общедоступного IP-адреса. При каждом установленном посредством браузера соединении или обновлении генерируется новый (обычно выраженный имеющим большее значение числом) номер исходного порта. Кроме того, поскольку на Web-странице могут быть встроенные ссылки и рекламные объявления, размещенные на других Web-сайтах, одна страница браузера может иметь несколько открытых портовых соединений; все они могут указывать на один и тот же IP-адрес или на различные IP-адреса.

Тайна Svchost

Кроме того, Windows 2000 и более поздние версии операционной системы открывают многие другие порты (например, 500 или 123), которые предназначены для службы svchost.exe. Этот генерируемый процесс размещается в папке %windir%system32. Он запускается всякий раз, когда Windows инициализирует и загружает в память одну или несколько служб, определенных в разделе реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionSvchost.

В процессе выявления открытых портов администраторы часто обнаруживают, что инициатором открытия нескольких отдельных портов является служба svchost.exe. К примеру, сейчас, когда я пишу эту статью, svchost.exe загружена в память моего компьютера четыре раза; она поддерживает службы RPCSS, EventSystem, Netman, NtmsSvc, RasMan, SENS, а также TapiSrv и открыла порты 123, 135, 1025, 1026, 1900 и 5000. В процессе поиска вредоносных программ, возможно, вас будет согревать мысль о том, что порты, связанные с svchost.exe, недоступны для тех, кто замышляет недоброе. Впрочем, разумеется, нельзя исключать возможность внешних атак против этих портов (например, атак, использующих вызовы удаленных процедур, RPC).

Порты «троянских коней»

Мы знаем, что есть программы, использующие хорошо известные порты, и что есть порты, активно применяемые системой Windows. «Троянские» программы тоже часто используют определенные номера портов. К сожалению, счет широко распространенных «троянский коней» идет уже на сотни, так что описать их в одной статье невозможно. Но тем, кто собирается выявлять вредоносные программы с помощью утилиты, выводящей список открытых портов, будет полезно иметь под рукой список портов «троянских коней» на тот случай, если попадутся незнакомые номера портов. Со списком Web-сайтов, где размещаются полные списки портов «троянских коней», можно ознакомиться во врезке «Ресурсы, посвященные портам «троянских коней»».

Поскольку портам свыше 1023 номера официально не назначаются, такие номера могут использоваться любой программой. Чаще всего программы задействуют порты по принципу «первым пришел — первым обслужили». Поэтому, если для новой программы разработчик использует номер порта популярной программы, возможно, эта новая программа не будет функционировать корректно. Две программы могут одновременно пользоваться одним и тем же портом, но если это не предусмотрено в коде, они могут конфликтовать друг с другом. Если два приложения пользуются одним и тем же портом, протоколы TCP и UDP могут «потерять ориентировку» и в сети возникнут проблемы со связью. Однако известно, что некоторые программы, в том числе вредоносные, внедряются в компьютерные системы таким образом, что получают возможность использовать тот или иной порт совместно с другой программой.

Две программы одним и тем же номером порта пользоваться не должны. Порт 80 — важное исключение из этого правила. В большинстве брандмауэров данный порт открыт; это необходимо для того, чтобы клиенты могли исследовать ресурсы Web. Многие программы направляют свой трафик через порт 80 с тем, чтобы обойти экраны сетевой защиты. Так, программы мгновенного обмена сообщениями часто автоматически направляют свой трафик на порт 80 (с использованием протокола HTTP), если их стандартные порты заблокированы. Эти программы могут даже содержать подпрограммы, сканирующие брандмауэры в поисках открытых портов для исходящего трафика, которые они могут использовать.

Netstat

Во всех версиях Windows, начиная с Windows 95 (и включая Windows 3.11 с дополнительным модулем Microsoft TCP/IP32), имеется добротная утилита TCP/IP, именуемая Netstat. Она была разработана (как для Windows, так и для UNIX) еще в начале эпохи Internet. С помощью Netstat можно определить, какие порты UDP и TCP открыты и активны. Более подробные сведения о Netstat читатели могут получить из врезки «Искусство интерпретации Netstat». В системах Windows Server 2003 и Windows XP предусмотрена возможность с помощью утилиты Netstat просмотреть список открытых портов и связанных с ними программ.


Сессия TCP

Чтобы активизировать Netstat, нужно открыть окно командной строки, для чего следует открыть меню Start и выбрать пункт Run. В окне командной строки нужно ввести команду

cmd

и нажать клавишу Enter. Чтобы получить список параметров Netstat, можно использовать команду Nestat -?, но для целей настоящей статьи мы введем команду

netstat -ano

где параметр -a отображает активные соединения, параметр -n показывает соединения с IP-адресами и номерами портов вместо имен, а параметр -o отображает идентификатор процесса (PID) приложения, владеющего данным портом.

Если параметр -n не использовать, система выдаст имена доменов компьютеров, к которым она подключена. Команда Netstat -ao обеспечивает замену номеров портов именами их обычных приложений или служб, но эта функция не всегда выполняется точно (например, всем видам трафика, использующим порт 80, присваивается имя HTTP, даже если контент трафика содержит элементы, не имеющие к HTTP никакого отношения). Кроме того, Nestat -ao меняет все локальные IP-адреса на NetBIOS-имена соответствующих локальных систем. Без параметра -n невозможно определить, с помощью какого интерфейса программа в данный момент ведет «прослушивание». Netstat -ao следует запускать лишь в тех случаях, когда необходимо знать имя удаленного компьютера (например, www.yahoo.com). Если на системе установлена более ранняя, чем XP, версия Windows, параметр -o не будет выполнять своей функции, и определить, какими программами какие порты используются, с помощью Netstat не удастся.


Экран 1. Вывод команды Netstat -ano

На экране 1 показаны результаты выполнения команды Netstat -ano, как они были отображены моим компьютером. Команда выдает пять колонок данных. В первой колонке перечислены все сетевые протоколы, отображающие вначале все TCP-соединения. Во второй колонке указаны локальный IP-адрес и номер порта соответствующего соединения. В третьей колонке перечислены IP-адреса и номера портов назначения. Если номер порта еще не определен, в колонке ставится звездочка (*). В четвертой колонке обозначены состояния портов TCP. Состояния ESTABLISHED, LISTENING и SYN_SENT означают открытые и активные сеансы, все остальные состояния к этим категориям не относятся. Для портов UDP состояния не перечисляются, поскольку протокол UDP не предусматривает сохранения данных о состоянии. В табл. 4 показаны различные состояния Netstat (сервером в таблице именуется локальная программа или служба, владеющая портом).

В пятой колонке данных, предоставляемых утилитой Netstat, приводятся идентификаторы PID процессов, открывших соответствующий порт. Можно связать данную информацию с определенной программой или службой при помощи диспетчера Task Manager. Тем, кому еще не доводилось исследовать идентификаторы PID с помощью Task Manager, хочу напомнить, что в окне Task Manager необходимо создать дополнительную колонку PID. Для этого нужно нажать комбинацию клавиш Ctrl+Alt+Del; на экране появится окно Task Manager. Следует перейти на закладку Task Manager Processes, затем щелкнуть на View и Select Columns. Выбрав переключатель нужного идентификатора процесса PID, нажмите OK. Теперь диспетчер Task Manager отобразит идентификатор PID рядом с названием владеющей портом программы (Image Name), как показано на экране 2. Чтобы установить соответствие между идентификаторами процессов и их именами, можно переключаться между экраном Netstat и окном Task Manager.


Экран 2. Идентификаторы процессов PID в менеджере задач

Netstat -ano — неплохая утилита для вывода списка открытых портов, но у нее есть несколько недостатков. Она функционирует только на системах Windows 2003 и Windows XP, а если пользователь хочет установить соответствие портов с программами, он должен переключаться между двумя экранами. На системах, где открыто множество портов, Netstat может иметь исключительно низкое быстродействие, а по точности она уступает некоторым конкурентам. Netstat — это утилита командной строки, она не оснащена удобным для пользователя графическим интерфейсом и не предоставляет данные в реальном времени. Этот инструмент следует запускать всякий раз, когда необходимо обновить сведения о том или ином порте. Наконец, Netstat не отображает удаленных IP-адресов и номеров портов (иначе именуемых конечными точками), подключенных к активным портам UDP.

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

Утилиты для исследования открытых портов от независимых компаний

Существует множество бесплатно распространяемых и коммерческих средств, среди которых есть как утилиты командной строки, так и профессионально оформленные инструменты с графическим интерфейсом пользователя. Я протестировал 10 таких программ на системе Windows 2000 Professional. На компьютере был представлен стандартный набор служб и портов (конкретно речь идет о портах 135, 137, 138, 139, 445 и 500), характерный для только что введенной в строй системы.

Я решил перенять тактику «троянских коней», которые используют в своих именах не выводимые на печать символы (чтобы не попасть в листинги открытых портов), и приложил максимум усилий для того, чтобы сделать невидимым имя службы Telnet Server. Используя такой трюк, злоумышленники надеются, что администраторы, занятые исследованием длинных списков процессов, увидят пустое пространство и не станут выяснять, что за этим кроется. Чтобы убрать службы Telnet Server «с глаз долой», мне пришлось основательно потрудиться. Сначала с помощью ряда шестнадцатеричных символов ASCII (ASCII 32h — это символ пробела) я дал файлу tlntsvr.exe имя .exe. Затем я внес изменения в реестр, чтобы при инициализации Windows вместо обычного файла с именем службы запускался файл с новым именем.

Кроме того, я запустил два широко известных «троянских коня» — Back Orifice 2000 (BO2K) и NetBus с целью создания враждебных открытых портов. Я хотел выяснить, сочтут ли утилиты подозрительными упомянутых «троянцев» — и это сделала по меньшей мере одна из программ (Port Explorer). Я внимательно следил за тем, чтобы в ходе испытаний были запущены одни и те же приложения и процессы. В целом у меня выполнялось 14 активных процессов TCP и 7 процессов UDP. Затем я запускал тестируемые продукты и проводил испытания.

Active Network Monitor

Созданная специалистами фирмы SmartLine утилита Active Network Monitor — это простое и весьма эффективное средство проверки портов. Ее установка выполняется без каких-либо затруднений и не требует перезагрузки системы. Главное окно оснащено небольшим числом функций, зато изделие отличается стабильностью работы и эффективностью. Active Network Monitor предоставляет пользователю основную информацию: идентификаторы PID, локальные и удаленные IP-адреса и порты, протоколы, а также имена программ, включая маршруты доступа. Утилита может экспортировать список процессов во внешний файл .txt ил .csv с разделителями в виде запятых или знаков табуляции. Чтобы привлечь внимание к новым видам использования портов, утилита выделяет изменения в состоянии с помощью цветных маркеров. Active Network Monitor дает возможность прекращать процессы. Немного раздражает применяющаяся по умолчанию настройка Always on Top («Всегда показывать поверх других окон»). Разумеется, ее легко изменить, но вообще такой режим мешает работать.

Port Traffic Analyzer

Когда-то утилита Port Traffic Analyzer от компании Atelier Web (цена 32,50 долл.) была одним из моих любимых инструментов. Она входила в число первых графических утилит для поиска открытых портов. Ее было легко устанавливать и эксплуатировать. К сожалению, когда я устанавливал текущую версию на тестовой системе, программа Port Traffic Analyzer не сумела зафиксировать какую-либо активность портов, хотя процесс установки, судя по всему, прошел гладко. Я несколько раз удалял эту утилиту и устанавливал ее снова, я пробовал перезагружать систему — все напрасно. На Web-узле компании Atelier в первой — и самой объемной — части раздела, посвященного часто задаваемым вопросам, документируются проблемы установки. Похоже, что у большинства пользователей проблемы возникают потому, что для сбора информации в рассматриваемой утилите используется предложенный Microsoft API Layer Service Provider (LSP). Техническая поддержка предоставляется только через Web, но вы можете быстро получить ответ. Как ни восхищал меня этот продукт в прошлом, сейчас мне трудно рекомендовать его из-за постоянных проблем, связанных с установкой.

Fport

Бесплатно распространяемую программу Fport компании Foundstone, пожалуй, можно считать наиболее часто рекомендуемой в масштабах всей отрасли утилитой командной строки, предназначенной для проверки портов. Это надежное и компактное изделие, которое к тому же быстро устанавливается. Fport генерирует списки идентификаторов PID, имен процессов, номеров локальных портов, протоколов, исполняемых модулей процессов и маршрутов доступа. Но хотя многие до небес превозносят эту утилиту, надо сказать, что в ней не хватает некоторых важных функций. Так, она не способна генерировать списки локальных IP-адресов, не отображает удаленных IP-адресов и номеров портов и не отражает состояния или происходящие в данный момент процессы. С удаленного компьютера я подключился к своей машине через зараженный «троянцем» BO2K-клиент, а программа Fport при этом не отметила каких-либо изменений. Мне и раньше доводилось быть свидетелем того, как Fport пропускает определенные открытые порты. Когда-то Fport был для меня достойным дополнительным средством, но, познакомившись с некоторыми продуктами-конкурентами, я пришел к выводу, что в дальнейшем в своих изысканиях я, скорее всего, буду пользоваться другим инструментом.

Inzider

Самая примечательная особенность бесплатно распространяемой компанией NTSecurity.nu программы Inzider — это простая процедура удаления. У меня начались проблемы в тот момент, когда я активизировал эту утилиту. Интерфейс показался мне графической вариацией на тему окна командной строки DOS. Когда я запустил программу на выполнение, быстродействие системы тут же снизилось, и я подумал, уж не зависла ли она. Однако спустя несколько минут программа Inzider начала отображать на экране перечень процессов. К сожалению, первый процесс в этом списке не имел открытого сетевого порта; приводились только идентификатор PID, имя процесса и путь доступа. Может быть, утилита должна была представить номер порта или IP-адрес спустя какое-то время, но мне так и не довелось увидеть их. По прошествии пяти минут Inzider отобразил только два процесса, и я прервал его выполнение.

Очевидно, такая медлительность связана с тем уникальным способом, с помощью которого Inzider составляет перечень процессов, — этот метод называется DLL injection. Неудивительно, что данный прием не используется ни в одном другом средстве проверки портов. Ведь даже сами разработчики утилиты Inzider отмечают в документации, что программа функционирует нестабильно. Кроме того, они признают, что Inzider не обеспечивает проверку процессов, которые инициировались как службы. Иными словами, получается, что это решение мало что дает.

Net-Scope

Net-Scope, разработка фирмы Delta Design UK, — еще один аутсайдер. В ходе испытаний она включала в перечень множество процессов, которые не являлись программами с сетевыми соединениями. Это средство пропустило несколько открывающих порты программ, ошибочно регистрировало программы, которые портов не открывали, и допускало неточности в сообщениях об использовании портов. К примеру, хотя в процессе тестирования утилита Net-Scope включила IE в число программ, имеющих открытые порты, в качестве как исходного, так и целевого IP-адреса она назвала адрес 127.0.0.1. При установлении соединения IE с сервером http://www.google.com программа не отобразила ни активного соединения, ни удаленного IP-адреса. Без дополнительных манипуляций графический интерфейс утилиты мало что отображает. Чтобы получить подробную информацию о том или ином процессе, необходимо выполнить на значке этого процесса двойной щелчок и подождать, пока в нижней части экрана будут выведены результаты. Часто правильные результаты так и не появляются. Бесплатная демонстрационная версия дает право воспользоваться программой 15 раз, но дело в том, что одним сеансом считается каждое обновление экрана, так что отведенные мне возможности бесплатного использования утилиты были исчерпаны очень быстро.

Port Explorer

Вне всякого сомнения, поставляемое фирмой Diamond Computer Systems (DiamondCS) средство проверки портов Port Explorer (цена 40 долл.) является лучшим из продуктов, представленных в данном обзоре. Оно наделено прекрасно разработанным пользовательским интерфейсом, отличается легкостью в установке, высокой стабильностью, предоставляет большой объем полезной информации (в которой пользователь может без особых усилий найти нужные сведения), поставляется с набором тестовых инструментов и обеспечивает выделение цветом подозрительных программ. Если Port Explorer находит странности в поведении той или иной программы, ее порт помечается красным цветом. В ходе испытаний изделие выделило цветом порты обоих «троянских коней» — как BO2K, так и NetBus. Когда Port Explorer активизируется в первый раз после установки, открывается справочный файл программы, что явно следует отнести к числу ее достоинств. Это единственное средство проверки портов, имеющее собственную дискуссионную доску. Похоже, что его разработчики полны решимости превратить Port Explorer в лучший продукт в своем классе.

По-видимому, для отслеживания и идентификации процессов Port Explorer использует не менее пяти отдельных методов — SNMP, LSP, недокументированный прием Transport Driver Interface (TDI), а также документированные и недокументированные методы IPHelper. На моих тестах утилита Port Explorer показала себя как самое точное инструментальное средство и была одним из двух средств проверки портов, которые отображали удаленные IP-адреса и соединения UDP как на экране, так и в журнале.

Port Explorer обеспечивает обновление информации о трафике на портах в реальном времени, но программу можно настроить и таким образом, что обновления будут приостановлены и представление данных станет статическим. Кроме того, надо отметить, что данное средство записывает сведения обо всем, что происходит, в локальный файл, который пользователь может просматривать с помощью графического интерфейса. Я подвергал Port Explorer серьезным нагрузкам, которых обычно бывало достаточно для того, чтобы заставить Netstat работать черепашьими темпами или вовсе останавливаться, но Port Explorer сразу после запуска без промедления отображал данные по каждому порту.

Графический интерфейс и функции Port Explorer допускают возможность настройки. В зависимости от желания пользователя утилита может отображать имя файла или полный маршрут доступа к файлу программы, владеющей данным портом. Последняя возможность очень удобна в тех случаях, когда приходится «выкуривать» неуловимую программу. В главном окне имеется несколько столбцов с данными, которые можно сортировать щелчком мыши на верхней строке столбца сортировки; кроме того, колонки можно перетаскивать мышью на различные участки экрана, не прерывая работы программы. Переходя на ту или иную из закладок, расположенных в верхней части основного экрана, пользователь может выбрать один из нескольких методов просмотра. Имеется возможность настройки цветов, частоты регенерации изображения и даже выбора языка. Port Explorer может представлять информацию на восьми языках; если не считать Netstat, это единственная утилита для поиска открытых портов, оснащенная такими средствами. Кроме того, программа может отображать статистические данные сети.

В состав пакета Port Explorer входит несколько диагностических и тестовых утилит, облегчающих поиск удаленного компьютера. В их число входят Ping, Lookup, Whois, Traceroute и даже анализатор пакетов под названием Socket Spy. Вводя с клавиатуры соответствующие идентификаторы PID, пользователь может дать анализатору Socket Spy команду перехватывать информацию из пакетов локальных программ. К тому же можно прекращать любой процесс, распознаваемый Port Explorer. Вне всякого сомнения, Port Explorer — это самое производительное, самое стабильное и самое впечатляющее из протестированных мною средств для поиска открытых портов.

OpenPorts

Фирма DiamondCS недавно выпустила утилиту командной строки OpenPorts, которой могут бесплатно пользоваться владельцы домашних компьютеров и пользователи из сферы образования. Принцип действия данного инструмента такой же, как и у программы FPort; более того, в окне командной строки пользователь может ввести команду fport, и тогда утилита начнет отображать данные в том же представлении, что и Fport. Кроме того, формат представления данных OpenPorts можно менять с помощью ключа -netstat. Любопытно, что в стандартном режиме функционирования OpenPOrts при перечислении портов сортирует их по именам процессов — очень удобная возможность, позволяющая видеть все порты (TCP и UDP), ассоциированные с той или иной программой. Чтобы понять, насколько полезна эта функция, достаточно представить ситуацию, когда браузер устанавливает соединение с Web-узлом, который содержит ссылки на 15 других узлов, и каждый из них открывает свой порт. Программа OpenPOrts выдает имя процесса (но не путь доступа к нему), локальный IP-адрес и номер порта, удаленный IP-адрес и номер порта, а также сведения о состоянии. Кроме того, это средство может экспортировать данные в файлы трех форматов. И поскольку OpenPorts предъявляет данные об удаленных IP-адресах, номерах удаленных портов и о состоянии, эта бесплатно распространяемая утилита по эффективности превосходит изделие Fport.

Socket Port Owner

Поставляемая фирмой Fly Ya Software программа Socket Port Owner (цена 14,99 долл.) предоставляет чуть больше информации, нежели Fport. Незатейливый графический интерфейс этого продукта напоминает мне главное окно Active Network Monitor. Утилита Socket Port Owner отображает сведения об идентификаторах PID, о пути к исполняемому модулю, локальных и удаленных IP-адресах и портах, а также о протоколах. В интерфейсе имеется колонка Remote Location, в которой программа, как ни странно, ошибочно идентифицировала мой частный IP-адрес как расположенный в Голландии (впрочем, возможно, что эта ошибка характерна только для демонстрационной версии). Другая колонка, Listen, содержит лишь два значения, yes или no, что трудно назвать наилучшим вариантом представления информации о состоянии. Наконец, Socket Port Owner не имеет справочного файла.

TCPView

Утилита TCPView компании Sysinternals (распространяется бесплатно) —«спартанское» изделие без каких-либо излишеств. Оно спроектировано в виде одного исполнимого модуля. Графический интерфейс утилиты в реальном времени предоставляет необходимые сведения, причем отображает их там, где пользователю нужно их увидеть. Программа приводит имя процесса, его идентификатор, протокол, локальный и удаленный IP-адреса, а также номера портов и данные о состоянии. Щелкнув на значке соединения процесса, пользователь может получить полный путь доступа к месту его выполнения и принять меры для прекращения этого процесса. Чтобы пользователю было удобнее отслеживать новые события, программа выделяет их цветом.

Бесплатное изделие, способное обеспечить базовые функции, — казалось бы, что может быть лучше? Но должен сказать, что в ходе испытаний программа TCPView в среде NT Server 4.0 не всегда выполнялась стабильно. Так, когда я пытался сохранить результаты экрана в текстовом файле, она исчезала или «зависала». Кроме того, с аналогичными проблемами я сталкивался и в прошлом. Бывало, что при установке TCPView на рабочих станциях NT 4.0 отмечались явления нестабильности: в частности, сразу же после первой перезагрузки возникали проблемы с «голубым экраном». Однако на современных платформах Windows программа функционирует стабильно. Sysinternals и Wininternals Software выпустили большое число высококачественных бесплатно распространяемых и коммерческих пакетов, но если кто-то решит использовать рассматриваемую утилиту в среде Windows NT, придется делать это на свой страх и риск.

Приступая к подготовке статьи, я намеревался написать рецензию на программу TCPView Pro, наделенную более богатым набором функций и являющуюся коммерческой «кузиной» утилиты TCPView. Но оценочная версия этого продукта так и не была размещена на Web-узле компании. Похоже, что TCPView Pro можно получить лишь в составе пакета Administrator?s Pak (т. е. в числе комплекта из пяти утилит).

X-NetStat Professional 4.0

Разработанная специалистами Fresh Software программа X-NetStat Professional 4.0 (цена 20 долл.) устанавливается быстро и легко, но у нее неудобный графический интерфейс. Трудно определить, как добраться до нужной информации. В верхней части экрана содержится список соединений, а также локальные и удаленные адреса, локальные и удаленные порт, протокол и состояние (которое создатели программы обозначают с помощью термина Status). В нижней части экрана — несколько окон; каждое из них содержит открытый порт (в одних случаях это порт UDP, в других — TCP). Чтобы получить общую информацию о том, какая программа пользуется данным портом, нужно щелкнуть на одном из этих окон правой кнопкой мыши и в раскрывшемся меню выбрать пункт Port Information. В целом надо сказать, что программа содержит много ошибок и пользоваться ею неудобно. Единственное преимущество состоит в том, что X-NetStat Professional 4.0 обеспечивает захват заголовков пакетов по портам, что, как оказалось, иногда может быть полезным при идентификации портов.

На Web-узле фирмы Fresh Software я нашел объявление о выпуске в ноябре 2002 года версии продукта 5.0, но эта версия так и не появилась. Зато сайт буквально забросал меня целой грудой всплывающих рекламных объявлений. Я полагаю, что фирма прекратила работу над этим продуктом и пытается извлечь прибыль из других направлений своей деятельности.

Лучшие

Когда занимаешься поиском программ, способных нанести системе ущерб, полезно иметь под рукой список открытых TCP/IP-портов, а также открывших их программ или служб. Возможности утилиты Netstat ограничены, но она устанавливается вместе с каждой версией Windows, поэтому данным инструментом всегда можно воспользоваться в процессе поиска причины неполадок. К сожалению, он не облегчает решения проблемы установления соответствия между открытым портом и исходной программой. И все же в случае необходимости операторы компьютеров Windows 2003 и Windows XP могут воспользоваться командой Netstat-ano — данные, полученные с ее помощью, можно сравнить со списком идентификаторов PID диспетчера Task Manager. Но тем, кто работает на других платформах Windows, придется подыскивать альтернативные решения. Если говорить о продуктах, представленных в нашем сравнительном обзоре, самым сильным претендентом является фирма DiamondCS и ее программы — продукт на базе графический интерфейс Port Explorer и утилита командной строки OpenPorts. Изделие TCPView компании Sysinternals — претендент номер два, но только для тех, кто может избежать проблем со стабильностью, с которыми я столкнулся, работая на платформе Windows NT. Среди утилит командной строки альтернативой OpenPorts является разработанная компанией Foundstone программа Fport. Но те, кто профессионально занимается проблемами сетевой безопасности или администрированием систем, непременно должны иметь у себя копию программы Port Explorer.

Роджер Граймз — консультант по антивирусной защите. Имеет сертификаты CPA, MCSE, CNE, A+ и является автором книги «Malicious Mobile Code: Virus Protection for Windows» (изд-во O?Reilly & Associates). Его адрес: roger@rogeragrimes.com


UDP и TCP

Почти все программы используют для связи один из двух протоколов — UDP или TCP. Протокол TCP — более эффективный инструмент. Он ориентирован на соединения и обеспечивает надежную передачу данных. Прежде всего, TCP следит за тем, чтобы получающий данные компьютер был готов к их приему. Протокол проводит предусматривающий передачу трех пакетов сеанс согласования, в ходе которого отправитель и получатель договариваются о том, что они готовы к обмену данными. Для этого в состав пакета TCP вводятся флаги состояния; с их помощью узлы обмениваются данными о текущем состоянии передачи (начало, завершение, продолжение). Трафик TCP предусматривает сохранение данных о состоянии. Далее TCP следит за тем, чтобы данные попали в пункт назначения. Если получатель не подтверждает прием того или иного пакета, протокол TCP автоматически возобновляет его передачу — обычно это повторяется три раза. При необходимости TCP разделяет крупные пакеты на пакеты меньших размеров, так чтобы обмен информацией между отправителем и получателем происходил без риска потери данных. TCP отбрасывает пакеты-дубликаты и восстанавливает очередность пакетов, прибывающих не в свою очередь.

Протокол UDP не ориентирован на соединения. Он больше подходит для передачи пакетов ограниченной емкости. UDP не наделен механизмом самопроверки, который подтверждал бы получение данных или следил бы за тем, чтобы они приходили в том же порядке, в каком были посланы. Однако такую проверку часто осуществляет использующее UDP приложение; оно же может направить компьютеру-отправителю запрос на повторную передачу утерянной информации. Кроме того, рассматриваемый протокол не предусматривает сохранение данных о состоянии; следовательно, UDP не проводит сеанса согласования, а пакеты UDP не имеют флагов состояния.

Некоторые программы задействуют оба протокола — и UDP, и TCP. Так, сервер RealAudio фирмы RealNetworks использует порт TCP 7070 с целью инициализации соединения для последующей загрузки данных для клиента RealAudio Player. После установления связи сервер RealAudio передает поток данных через порты UDP от 6980 до 7170. Другой пример: для обмена данными между DNS-серверами Microsoft DNS использует порт UDP 53. Если один сервер DNS определяет, что и другой сервер DNS также является сервером Microsoft DNS, он может принять решение о переключении сетевого соединения на порт 53 TCP, чтобы иметь возможность передавать более значительные объемы данных об именах в домене.


Искусство интерпретации Netstat

Читать распределенные по пяти колонкам показания Netstat — это в некотором роде искусство. Прежде всего следует обратить внимание на колонку Local Address. Как правило, в ней будут отображаться данные типа 0.0.0.0 или 127.0.0.1, а может быть, IP-адрес одного из физических сетевых интерфейсов (скажем, сетевой интерфейсной платы или модема). Если данное приложение связано с 0.0.0.0, программа готова принимать соединения с любого интерфейса. Если приложение привязано к конкретному IP-адресу, программа намерена принимать соединения с этим портом только от данного локального интерфейса. Адрес 127.0.0.1 — это адрес локальной кольцевой проверки; т. е. данное приложение будет принимать соединения, инициированные лишь конкретным компьютером. Адрес 127.0.0.1 часто используется при обмене данными в процессе удаленного вызова процедур между процессами и при соединениях с PDA. Как правило, соединения 127.0.0.1 являются безопасными, так как вредоносные программы никогда не открывают для себя только локальное соединение. Поэтому следует обратить внимание на оставшиеся соединения.

На следующем этапе администраторы, как правило, обращаются к исследованию состояния. Сеансы связи в режиме Listening mode не должны иметь ассоциированных с ними удаленных IP-адресов, а сеансы в режиме Established mode (или в другом активном состоянии), напротив, должны иметь такие адреса. Обычно удаленный IP-адрес — это 127.0.0.1 или адрес какого-либо внешнего компьютера. Опять-таки соединение 127.0.0.1 можно оставить без внимания, но следует сосредоточиться на анализе активных сеансов с удаленными IP-адресами. Есть ли среди них адреса, которые показались вам необычными? Если да, то необходимо сопоставить сеанс с его идентификатором процесса PID и исследовать эту программу. Нужно отметить номер удаленного порта назначения и попытаться привязать его к хорошо известному протоколу (например, HTTP).

В поисках вредоносных программ рекомендую обращать особое внимание на следующие порты: необъяснимые соединения Established с удаленными Internet-адресами, неизвестные порты TCP в режиме Listening mode и неизвестные порты UDP. Многие порты UDP имеют «дублирующую» запись в режиме TCP Listening mode, потому что открывающее порт приложение может, в зависимости от ситуации, использовать любой из протоколов UDP или TCP. Если порт UDP не имеет соответствующей записи в TCP, нужно исследовать его. Если же порт UDP имеет дублирующую запись TCP, можно сделать главным объектом своего исследования порт TCP.


Ресурсы, посвященные портам «троянских коней»

Списки портов, в которые могут попадать «троянские кони», полезно иметь под рукой в ситуациях, когда внезапно обнаруживаются открытые порты. Такие списки можно найти по следующим адресам:

SANS (http://www.sans.org/resources/idfag/oddports.php )

G-Lock Software (http://www.glocksoft.com/trojan_port.html)

Simovits Consulting (http://www.simovits.com/sve/nyhetsarkiv/1999/
nyheter9902.html
)

Doshelp.com (http://www.doshelp.com/trojanports/html)

Понравилась статья? Поделить с друзьями:
  • Программа для онлайн обновления драйверов windows 7 64 bit
  • Программа для ограничения прав пользователей windows 10
  • Программа для обновления других программ windows
  • Программа для ограничения игр на компьютере на windows
  • Программа для обновления дров на windows 10