Как узнать, какие tcp/ip-порты используют приложения windows

Как работает TCP соединение

Соединение отправителя и получателя (два узла) происходит так:

1. Отправитель отсылает получателю специальный пакет, именуемый SYN, т.е. пригашает к соединению2. Получатель отвечает уже пакетом SYN-ACK, т.е. соглашается3. Отправитель отсылает спец. пакет ACK, т.е. подтверждает, что согласие получено

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

TCP порты

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

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

Есть целый ряд уже зарезервированных портов, которые являются стандартом:

Также, стоит отметить, что порты данного протокола никак не пересекаются с такими же, но у UDP. Так, например, порт: 1234 не пересечется с таким же, но у UDP.

В заключение

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

Пример анализа открытых портов

Я начну с анализа открытых портов на Linux. Просто потому, что мне так проще, а затем мы постепенно перейдём изучить открытые порты на Windows.

Пример информации об открытых портах, полученных командой:

sudo ss -lntup

Пример прослушиваемых портов на Linux:

Netid State   Recv-Q   Send-Q         Local Address:Port     Peer Address:Port                                                                                  
udp   UNCONN  0        0           10.0.2.15%enp0s3:68            0.0.0.0:*      users:(("NetworkManager",pid=318,fd=17))                                       
udp   UNCONN  0        0                  127.0.0.1:5300          0.0.0.0:*      users:(("tor",pid=359,fd=7))                                                   
tcp   LISTEN  0        128                127.0.0.1:9040          0.0.0.0:*      users:(("tor",pid=359,fd=8))                                                   
tcp   LISTEN  0        128                127.0.0.1:8118          0.0.0.0:*      users:(("privoxy",pid=362,fd=3))                                               
tcp   LISTEN  0        128                127.0.0.1:9050          0.0.0.0:*      users:(("tor",pid=359,fd=6))                                                   
tcp   LISTEN  0        128                127.0.0.1:9475          0.0.0.0:*      users:(("httpd",pid=553,fd=5),("httpd",pid=552,fd=5),("httpd",pid=551,fd=5),("httpd",pid=550,fd=5),("httpd",pid=549,fd=5),("httpd",pid=360,fd=5))
tcp   LISTEN  0        128                        *:80                  *:*      users:(("httpd",pid=553,fd=4),("httpd",pid=552,fd=4),("httpd",pid=551,fd=4),("httpd",pid=550,fd=4),("httpd",pid=549,fd=4),("httpd",pid=360,fd=4))
tcp   LISTEN  0        128                        *:22                  *:*      users:(("systemd",pid=1,fd=55))                                                
tcp   LISTEN  0        128                        *:443                 *:*      users:(("httpd",pid=553,fd=7),("httpd",pid=552,fd=7),("httpd",pid=551,fd=7),("httpd",pid=550,fd=7),("httpd",pid=549,fd=7),("httpd",pid=360,fd=7))
tcp   LISTEN  0        80                         *:3306                *:*      users:(("mysqld",pid=427,fd=21))            

В выводимых данных имеются следующие поля:

  • Netid — протокол udp или tcp
  • State — состояние, для протоколов TCP здесь будет LISTEN (поскольку мы явно указали в опциях показать только прослушиваемые порты), а для протоколов UDP здесь будет UNCONN, то есть состояние неизвестно, но, на самом деле, это тоже прослушиваемые порты, которые позволяют подключаться из вне
  • Recv-Q — получено
  • Send-Q — отправлено
  • Local Address:Port — локальный адрес и порт, к которому привязана служба, то есть IP адрес и порт, которые прослушиваются
  • Peer Address:Port — удалённый адрес и порт, к которым выполнено соединение.

Допустим запись 127.0.0.1:9050 для локального адреса и порта означает, что прослушивается порт 9050. Причём он прослушивается только для IP адреса 127.0.0.1. Адрес 127.0.0.1 относится к так называемым Loopback, то есть это замыкающийся на себя, закольцованный адрес. Сетевой интерфейс с этим адресом называется петлевым. Пакеты, которые отправляются с компьютера на этот адрес, приходят на этот же самый компьютер (точнее говоря, они никуда даже не уходят). Доступ к этому адресу может иметь только служба, работающая на этом же самом компьютере

Отсюда важное следствие: хотя порт 9050 прослушивается, никто другой не может к нему подключиться из любой сети. Это же относится и к адресам из диапазона ::1/128 — это такие же адреса, но уже для IPv6, тамошний аналог 127.0.0.1 это ::1 (тоже часто можно видеть в выводимой информации).

Если прослушиваются какие-либо адреса из локальных

  • 10.0.0.0/8
  • 172.16.0.0/12
  • 192.168.0.0/16
  • 127.0.0.0/8

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

Как они используются

Порты по основным акваториям

Западно-арктические порты

Данные за последний доступный год.

Порт Субъект РФ Грузооборот (млн тонн) Год
Амдерма Ненецкий автономный округ 0,0 2012
Архангельск Архангельская область 2,4 (-8 %) 2017
Варандей Ненецкий автономный округ 8,2 2017
Витино Мурманская область 2,3 2013
Диксон Красноярский край 0,0117 2011
Дудинка Красноярский край 1,24 (+3,7 %) 2017
Игарка Красноярский край 0,0 2012
Кандалакша Мурманская область 1,63 (+100 %) 2017
Мезень Архангельская область 0,0152 2012
Мурманск Мурманская область 51,67 (+54.5 %) 2017
Нарьян-Мар Ненецкий автономный округ 0,1184 2012
Онега Архангельская область 0,0653 2012
Сабетта Ямало-Ненецкий автономный округ 7,99 (+280.7 %) 2017
Тикси Якутия 0,3584 2012
Хатанга Красноярский край 0,0 2012

Балтийские порты

Порт Субъект РФ Грузооборот (млн тонн)
Выборг Ленинградская область 1,5
Высоцк Ленинградская область 17,5
Калининград Калининградская область 13,8
Приморск Ленинградская область 57,6
Большой порт Санкт-Петербург Санкт-Петербург 53,6
Пассажирский порт Санкт-Петербург Санкт-Петербург
Усть-Луга Ленинградская область 103,3

Причерноморские порты

Порт Субъект РФ Грузоборот (млн тонн)
Азов Ростовская область 7,1
Геледжик Краснодарский край
Евпатория Республика Крым 0,9
Ейск Краснодарский край
Кавказ Краснодарский край 30,5
Керчь Республика Крым 2,8
Новороссийск Краснодарский край 127,1
Ростов-на-Дону Ростовская область 11,6
Севастополь Севастополь 4,8
Сочи Краснодарский край
Таганрог Ростовская область 2,9
Тамань Краснодарский край 12,3
Темрюк Краснодарский край
Туапсе Краснодарский край 25,2
Феодосия Республика Крым 2,6
Ялта Республика Крым 0,2

Каспийские порты

Порт Субъект РФ Грузоборот (млн тонн)
Астрахань Астраханская область 2,7
Оля Астраханская область 1,58
Махачкала Республика Дагестан 3,8

Тихоокеанские и восточно-арктические порты

Порт Субъект РФ Грузооборот (млн тонн)
Александровск-Сахалинский Сахалинская область
Анадырь Чукотский автономный округ 0,215
Беринговский Чукотский автономный округ 0,0529
Ванино Хабаровский край 26,8
Владивосток Приморский край 12,9
Восточный Приморский край 65,2
Де-Кастри Хабаровский край 10,5
Зарубино Приморский край 0,2
Корсаков Сахалинская область
Магадан Магаданская область 1,22
Москальво Сахалинская область
Мыс Лазарева Хабаровский край
Находка Приморский край 21,3
Невельск Сахалинская область 1,7
Николаевск-на-Амуре Хабаровский край
Ольга Приморский край
Охотск Хабаровский край
Певек Чукотский автономный округ 0.27
Петропавловск-Камчатский Камчатский край 1,92
Поронайск Сахалинская область
Посьет Приморский край 6,5
Пригородное Сахалинская область 16
Провидения Чукотский автономный округ 0,0187
Советская Гавань Хабаровский край
Тикси Якутия
Холмск Сахалинская область
Шахтёрск Сахалинская область 6,2
Эгвекинот Чукотский автономный округ 0,0977

Морские порты РФ, в которых осуществляется государственная регистрация судов

Объяснение по материалам сайта CITForum

Порт – Часть сокета, указывающая логический канал ввода или вывода для процесса, имеющего дело с данными.Сокет – Адрес, который особым образом включает в себя идентификатор порта. А именно, он включает связь Internet адреса с TCP портом.

Порт – это программное понятие, которое используется клиентом или сервером для посылки или приема сообщений; порт идентифицируется 16-битовым числом. Серверные процессы обычно ассоциируются с фиксированным числом, например числом 25 для SMTP или 6000 для X Windows. Номер порта является известным, так как он требуется, помимо IP-адреса получателя, при установлении соединения с конкретным хостом и сервисом. Клиентские процессы, с другой стороны, запрашивают номер порта у операционной системы в начале работы; и номер порта является случайным, хотя в некоторых случаях он является следующим в списке свободных номеров портов.

Существует достаточно распространенное правило, согласно которому только привилегированные процессы сервера, то есть те процессы, которые работают с привилегиями суперпользователя UNIX, могут использовать порты с номерами меньше, чем 1024 ( так называемые привилегированные порты). Сервера в основном используют порты с номерами меньше, чем 1024, а клиенты как правило должны запрашивать непривилегированные порты у ОС. Хотя это правило и не является обязательным для исполнения и не требуется спецификацией протоколов TCP/IP, системы на основе BSD соблюдают его.
В протоколе TCP также, как и в UDP, для связи с прикладными процессами используются порты. Номера портам присваиваются аналогичным образом: имеются стандартные, зарезервированные номера (например, номер 21 закреплен за сервисом FTP, 23 – за telnet), а менее известные приложения пользуются произвольно выбранными локальными номерами.

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

Соединение в протоколе TCP идентифицируется парой полных адресов обоих взаимодействующих процессов (оконечных точек). Адрес каждой из оконечных точек включает IP-адрес (номер сети и номер компьютера) и номер порта. Одна оконечная точка может участвовать в нескольких соединениях.

Установление соединения выполняется в следующей последовательности:

  • При установлении соединения одна из сторон является инициатором. Она посылает запрос к протоколу TCP на открытие порта для передачи (active open).
  • После открытия порта протокол TCP на стороне процесса-инициатора посылает запрос процессу, с которым требуется установить соединение.
  • Протокол TCP на приемной стороне открывает порт для приема данных (passive open) и возвращает квитанцию, подтверждающую прием запроса.
  • Для того чтобы передача могла вестись в обе стороны, протокол на приемной стороне также открывает порт для передачи (active port) и также передает запрос к противоположной стороне.
  • Сторона-инициатор открывает порт для приема и возвращает квитанцию. Соединение считается установленным. Далее происходит обмен данными в рамках данного соединения.

Сервисы TCP и UDP используются с помощью схемы клиент-сервер. Например, процесс сервера TELNET вначале находится в состоянии ожидания запроса установления соединения. В какой-нибудь момент времени пользователь запускает процесс клиента TELNET, который инициирует соединение с сервером TELNET. Клиент посылает данные серверу, тот читает их, и посылает обратно клиенту ответ. Клиент читает ответ и сообщает о нем пользователю. Поэтому, соединение является двунаправленным и может быть использовано как для чтения, так и для записи.

Соединение TCP или UDP уникальным образом идентифицируется с помощью четырех полей, присутствующих в каждом соединении:

  • IP-адрес источника – адрес системы, которая послала пакет
  • IP-адрес получателя – адрес системы, которая принимает пакет
  • порт отправителя – порт соединения в системе-отправителе
  • порт получателя – порт соединения в системе-получателе

Предварительные условия

Используемые компоненты

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

Cisco CallManager версии 3.3(x)

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

Условные обозначения

Дополнительные сведения о применяемых в документе обозначениях см. в статье Условные обозначения, используемые в технической документации Cisco.

Проверка статуса портов

Перед открытием туннеля сначала нужно проверить открытые порты в Windows. Для этого отлично подойдет обычная командная строка.

Делаем следующее:

  1. Открываем меню «Пуск/Программы/Стандартные» и выбираем программу «Командная строка».

Другой способ – введите cmd» (без кавычек) в поисковую строку Пуска и нажмите Enter».

  1. В открывшейся командной строке задаем команду «netstat –aon | more» без кавычек. Система отобразит состояние всех активных туннелей.

Смотрим на два последних столбца и находим нужный номер. Напротив номера выведен его статус:

  • Listening – идет опрос свободного порта системой. Он является открытым.
  • Established – идет передача данных, порт занят.
  • Close wait – процесс прекращения передачи данных.
  • Time wait – порт не отвечает.
  1. Открыв «Диспетчер задач» комбинацией клавиш Ctrl+Alt+Delete, вы сможете узнать, чем занят нужный порт, сопоставив его номер из консоли с идентификатором процесса.

Если требуемый порт отсутствует или занят – переходим к следующему пункту.

Порт[править]

Сетевой порт — это сетевой ресурс, отображаемый в виде числа (1-65535), которое определяет назначение входящих или исходящих сетевых потоков данных на заданном устройстве.

Если прибегнуть к аналогии, IP адрес — это адрес общежития с вахтёром, а порт — номер комнаты в этом общежитии или фамилия ее жильца.

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

Например, почтовое письмо (пакет данных) имеет информацию об отправителе (порт) и информацию о получателе (фамилия или номер комнаты по конкретному адресу).

Узел назначения («вахтер»), получив пакет («письмо»), смотрит на порт назначения («фамилию или номер комнаты») и передает пакет соответствующему у себя приложению («конкретному жильцу»).

Использование портов позволяет независимо использовать TCP протокол («почтовые услуги») сразу многим приложениям на одном и том же компьютере (общежитии).

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

Сервер при запуске сообщает Операционной Системе, что хотел бы «занять» определенный порт (или несколько портов). После этого все пакеты, приходящие на компьютер к этому порту, ОС будет передавать этому серверу. Говорят, что сервер «слушает» этот порт.

Клиент, начиная соединение, запрашивает у своей ОС какой-нибудь незанятый порт во временное пользование, и указывает его в посланных пакетах как порт источника. Затем на этот порт он получит ответные пакеты от сервера.

Таким образом, сервер:

  • слушает на определённом порту, заранее известном клиенту
  • занимает этот порт всё время, пока не завершит работу
  • об IP-адресе и номере порта клиента узнаёт из приглашения, посланного клиентом

Клиент:

  • заранее знает IP-адрес и порт сервера
  • выбирает у себя произвольный порт, который освобождает после окончания соединения
  • посылает приглашение к соединению

Порты TCP/IP что это такое и как они работают

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

Для осуществ­ления обмена данными таким способом принимающая и пере­дающая стороны должны строго придерживаться определен­ного протокола во избежание потери информации. Каждая датаграмма является самостоятельным сообщением, и при наличии нескольких датаграмм в ЛВС их доставка адресату, вообще говоря, не гарантируется.

При этом датаграмма обычно является частью какого-либо сообщения, и в большинстве ЛВС скорость передачи датаграмм гораздо выше, чем сооб­щений в сеансах.

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

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

На практике вместо того, чтобы считать процесс конечным местом назначения, полагают, что каждый компьютер имеет набор некоторых точек назначения, называемых протоколь­ными портами. Каждый порт идентифицируют целым поло­жительным числом (от 0 до 65535). В этом случае операцион­ная система обеспечивает механизм взаимодействия, исполь­зуемый процессами для указания порта, на котором они работают, или порта, к которому нужен доступ. Обычно пор­ты являются Буферизированными, и данные, приходящие в конкретный порт до того, как процесс готов их получить, не будут потеряны: они будут помещены в очередь до тех пор, пока процесс не извлечет их.

Чтобы лучше понять технологию портов, представьте, что вы пришли в банк, чтобы сделать вклад. Для этого вам необхо­димо подойти к определенному окошку, где оператор оформит документы и вы откроете счет. В этом примере банк представ­ляет собой компьютер, а операторы банка — программы, кото­рые выполняют определенную работу, А вот окошки — это и есть порты, при этом каждое окошко в банке часто нумеруется (1, 2,3 …).

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

Порты TCP/IP с номерами от 0 до 1023 являются привилегирован­ными и используются сетевыми службами, которые, в свою очередь, запущены с привилегиями администратора (супер пользователя). Например, служба доступа к файлам и папкам Windows использует порт 139, однако если она не запущена на компьютере, то при попытке обратиться к данной службе (т.е. к данному порту) будет получено сообщение об ошибке.

Порты TCP/IP с 1023 до 65535 являются непривилегированными и используются программами-клиентами для получения ответов от серверов. Например, web-браузер пользователя, обращаясь к web-серверу, использует порт 44587 своего компьютера, но обращается к 80 порту web-сервера. Получив запрос, web-сервер отправляет ответ на порт 44587, который используется web-браузером.

Просмотров сегодня: 190

Виртуальные порты

Существует 65 535 виртуальных портов, и все они связаны с сетевыми коммуникациями. Каждый из них может иметь различное использование, в зависимости от типа данных, проходящих через них. Эти порты используются для протокола управления передачей (TCP) или протокола дейтаграмм пользователя (UDP) или для обоих.

TCP часто смешивается с интернет-протоколом (IP). Возможно, вы видели это как TCP/IP. TCP используется для открытия соединения между двумя устройствами для передачи данных. Это достигается за счет того, что одно устройство обращается к другому, и затем между ними создается соглашение о передаче данных. Это известно как соединение рукопожатия. Это может занять немного времени.

UDP не устанавливает соединение. Это только начинает передавать. Это быстрее, но поскольку нет никакого соглашения о том, как что-то делать, могут возникать ошибки.

Теоретически, любой вид сетевого взаимодействия может происходить через любой порт. Это могло бы привести в замешательство тысячи доступных портов. Поэтому мы стараемся следовать стандарту, чтобы облегчить жизнь. У Управления по присвоению номеров в Интернете (IANA) есть реестр портов и то, для чего они используются.

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

Возможно, вы видели номера портов, используемые в IP-адресах. Это будет число после точки с запятой в IP, например 192.168.0.1:8080.

Ниже приведен список портов, которые вы, скорее всего, встретите. Мы бросили в последнем для всех игроков старой школы там.

порт Описание
20 Передача данных по протоколу передачи файлов (FTP) происходит по этому порту
21 Управляющие сообщения протокола передачи файлов (FTP), отправленные на этом
22 Безопасная оболочка (SSH)
23 Telnet
25 Простой протокол передачи почты (SMTP) для электронной почты
53 Система доменных имен (DNS)
69 Тривиальный протокол передачи файлов (TFTP) упрощенная версия FTP
80 Протокол передачи гипертекста (HTTP)
8080 Протокол передачи гипертекста (HTTP) Альтернатива
123 Сетевой протокол времени (NTP) для компьютеров с синхронизацией времени
143 Протокол доступа к интернет-сообщениям (IMAP) для электронной почты
161 Простой протокол управления сетью (SNMP)
194 Интернет-ретранслятор (IRC)
443 Протокол передачи гипертекста по TLS / SSL (HTTPS) Безопасные соединения
465 SMTP с проверкой подлинности через TLS / SSL (SMTPS)
587 Отправка сообщения электронной почты (SMTP)
515 Line Printer Daemon (LPD) подключает принтеры к компьютеру
666 Doom, шутер от первого лица (FPS)

Санкт-Петербург — в лидерах грузооборота

Мегаполис на северо-западе России, в устье реки Нева, на побережье Финского залива. Здесь сосредоточено главное командование ВМФ и крупная морская бухта с протяженностью причальной линии длиной 31 км. Обеспечивает торговое мореплавание в бухте Петербурга, за его пределами. Здесь осуществляется перегрузка нефтепродуктов, лесных грузов, металлов, металлолома, угля, контейнеров, химических грузов, руды. Годовой грузооборот — 53,6 т.

Расположен на островах дельты реки Нева, в восточной части Финского залива. Включает причалы:

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

Первый причал состоит из 200 причалов глубиной до 11,9 м. Территориально он делится на 4 района. Включает бассейны:

  • Угольная гавань
  • Восточный
  • Барочный
  • Рейд Лесного мола
  • пассажирский

а также: Василеостровский грузовой, причалы в Ломоносове и Кронштадте.

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий