Сейчас мы разберемся с вопросом о том, что собой представляют открытые порты. В этом вопросе следует разобраться, если трафик Интернета начинает «внезапно уходить» в неизвестность. Прежде всего, следует посмотреть, где, какая программа и что именно использует. На основе такой информации можно исправить ситуацию.
Сетевые приложения
Бывает ситуация, когда не хочет работать приложение, которое использует сеть для своего запуска. Если это так, стоит которые программа применяет для собственной работы. Ситуации, когда нужно узнать перечень открытых портов, имеют место достаточно часто.
Чтобы посмотреть перечень, необходимо использовать либо сторонние либо стандартную утилиту операционных систем Windows и Linux: netstat. Запускается она из привычной командной строки. Для начала вызываем командную строку. Этого можно добиться двумя способами. Что касается первого варианта, перейдите в меню «Пуск» к пункту «Выполнить».
В возникшем окне введите «cmd», после чего нажмите «Enter». Другой метод заключается в том, чтобы запустить необходимую командную строку «своими руками», то есть, перейдя в папку «System32», воспользоваться программой «cmd.exe».
Netstat
Чтобы узнать, какие на следующем этапе запускаем утилиту «netstat». С этой целью в командную строку, которую запустили ранее, введите «netstat», после чего нажмите «Enter».
Те пользователи, которым этой информации недостаточно, могут обратиться к возможностям данной утилиты при помощи запуска ее со специальным ключом -h, другими словам, попробуйте ввести в командную строку «netstat -h». В случае использования ключа «netstat -b» утилита будет показывать открытые порты, а также приложения, которые используют данные порты для собственной работы.
Есть и еще один полезный ключ «netstat 5». Если его использовать, вы увидите не только открытые порты, но и возможность потокового обновления информации, новые данные будут отображаться каждые 5 секунд. Чтобы прекратить появление информации с указанным ключом, необходимо воспользоваться сочетанием клавиш «Ctrl+C».
Изучение полученной информации
Окно командной строки покажет открытые порты. Это будет выглядеть следующим образом: непосредственно разделится на 4 части. Левый столбик будет отображать имя протокола, второй - домен, а после двоеточия сам открытый порт, третья часть - внешний адрес, четвертая - состояние.
Открытие портов в Windows
Далее мы рассмотрим, Windows. Выполнить операцию открытия портов на Windows 7 и Vista пользователи могут методом применения стандартных инструментов самой операционной системы без привлечения особого программного обеспечения от сторонних разработчиков.
Нажимаем кнопку «Пуск», чтобы вызвать главное меню системы, переходим к пункту «Панель управления», дабы инициировать процедуру открытия портов в Windows-брандмауэре.
Указываем пункт «Безопасность», переходим к разделу «Брандмауэр Windows». Выбираем пункт под названием «Дополнительные параметры», который помещает в себе левая часть окна приложения. После этого вводим пароль администратора. Его необходимо вписать в соответствующем поле после появления окна авторизации.
Раскрываем ссылку, в которой идет речь о разрешении запуска программы посредством брандмауэра Windows, и выбираем раздел о правилах входящих подключений. Указываем пункт под названием «Создать правило», запускаем функцию «Добавить порт», чтобы выполнить операцию открытия указанного порта. Нажимаем кнопку «Далее», вводим имя, которое позволяет ассоциировать указанный открытый порт.
Для этого предусмотрено соответствующее поле «Имя». Вводим номер выбранного порта в соответствующем поле «Порт», нажимаем кнопку «Далее». Указываем нужный может быть TCP либо UDP) в следующем которое посвящено портам и протоколам. Применяем флажок для пункта «Разрешать соединение», перейдя к следующему окну «Действия».
Завершающий этап
Применяем флажки для всех полей в следующем диалоговом окне под названием «Профиль», нажмем кнопку «Готово», чтобы примененить выбранные изменения. Нажимаем кнопку под названием «Изменить область», чтобы выбрать параметр количества компьютеров, которые имеют разрешение на применение выбранного порта. Указываем нужное значение.
Повторяем вышеописанные процедуры для каждого из портов, который подлежит открытию. Перезагружаем компьютер, чтобы применить выбранные изменения. Следует помнить, что описанный алгоритм действий позволит открыть порты только в брандмауэре персонального компьютера, однако не связан никак с разрешениями определенного провайдера Интернет-соединения.
Чтобы решить подобные проблемы, необходимо обращение непосредственно к представителю вашей компании-провайдера. Во время подключения к интернету система выделяет программам, работающим с сетью, порты, посредством которых осуществляется прием, а также отправка данных. Порты могут быть не только открытыми, но и закрытыми.
Порт (прослушивания, для соединений) используется для обеспечения соединения между несколькими программами. Некоторые порты заняты системными службами, поэтому не могут использоваться другими сервисами.
Порт 80 предназначен для протокола HTTP для соединения с Интернетом, а почтовый протокол POP3 использует порт 110. Если 80 закрыт, соответственно, осуществлять передачу данных по Сети невозможно. Следовательно, отправка и получение почты запрещены с закрытым портом 100.
Для системных программ назначаются порты под номерами от 0 до 1023. Пользовательские программы используют для соединения номера от 1024 до 49151. Порты от 49152 до 65535 называются динамическими, используются для временных соединений клиент - сервер.
Порты находятся в следующих состояниях:
- готов для принятия пакетов;
- порт блокируется фаерволом, состояние не может быть определено;
- заблокирован и не связан с приложениями, может быть открыт;
- состояние не может быть определено.
Способ 1: онлайн-сервисы
Это очень простой способ проверить, открыт ли порт на используемом компьютере.
По умолчанию предлагается выбрать часто используемые порты и проверить их. Это:
- 25565 для игры "Майнкрафт";
- 8621 обычно используемый программой Ace Stream для трансляций ТВ;
- 80 для протокола HTTP;
- 7777;
- 27016;
- 8080 для соединения с сервером.
Как проверить, открыт ли порт на компьютере? Все что необходимо сделать - выбрать интересующий и дождаться ответа. Кроме этого, можно:
- проверить свой IP;
- получить детальную информацию о сайте;
- узнать скорость соединения;
- узнать посещаемость сайта;
- проверить существование электронной почты.
Способ 2: CurrPorts
Проверить, открыт ли порт, можно с помощью стороннего программного обеспечения CurrPorts.
Предназначается для сетевого мониторинга, отображает список всех открытых на данный момент портов на локальном компьютере. В результате выдается такая информация:
- номер порта;
- имя процесса;
- полный путь процесса;
- версия;
- описание файла;
- время создания;
- имя пользователя, который создал его.
Кроме того, с помощью программы можно закрывать нежелательные TCP-соединения, завершать процессы на указанных портах, копировать информацию о портах в файл. Программное обеспечение предназначено для Windows, начиная от версии XP.
Способ 3: netstat
Один из быстрых способов проверить, открыт ли порт на компьютере или сервере, - из командной строки с помощью утилиты netstat.
Позволяет мониторить входящие и исходящие сетевые подключения, просматривать таблицу маршрутизации. Доступен для unix-подобных операционных систем и ОС Windows.
Используя некоторые параметры, можно отфильтровать вывод информации на экран.
- Отображение таблицы маршрутизации осуществляется в виде netstat -r (к имени команды добавляют параметры -r или --route).
- Вывод таблицы интерфейсов осуществляется в виде netstat -i или netstat --interfaces.
- Для вывода сетевой статистики необходимо добавить -s.
- Детализированный вывод осуществляется с помощью параметра -v.
- Для отображения таймера добавляется параметр -t;
- Непрерывный ввод задается с помощью -c.
- Чтобы вывести адрес и номера портов в числовом формате без имен, подается netstat -n.
- Отображение подключения по протоколу, а задается как "-p имя_протокола".
Способ 4: telnet
Другой эффективный способ проверить, открыт ли порт, - использовать telnet.
Как правило, утилита доступна в большинстве систем. Чтобы проверить доступность адресов используются:
Telnet IP_адрес
Есть возможность включить режим отладки и вывести подробную информацию во время работы. Для этого добавляется параметр -d, задается адрес и номер порта. Например:
Sudo telnet -d localhost 22
Чтобы проверить, открыт ли порт по IP:
Telnet адрес_IP номер_порта
Протестировать сайт, собрать запросы, увидеть все переданные данные можно командой:
Telnet адрес_сайта ru 80 GET /
Таким образом, возвращается страница, заголовки, которые отображает браузер.
Способ 5: tcping
Как проверить, открыт ли порт на компьютере? Можно воспользоваться командой tcping. Она доступна только для серверов "Виндовс". Перед использованием утилиту необходимо загрузить.
Проведение диагностики доступности порта производится в виде:
Tcping [-tdsvf46] [-i interval] [-n times] [-w interval] [-b n] [-r times][-j depth] [--tee filename] [-f] destination
Обозначение некоторых опций:
- 4 - использование IPv4;
- 6 - использование IPv6;
- n - количество отправляемых пингов (по умолчанию 4);
- i - интервал между отправкой пингов (по умолчанию 1);
- w - интервал между ответами (по умолчанию 2);
- d - отображать дату и время запроса;
- f - принудительная отправка минимум 1 байта;
- g - остановка после заданного количества неудачных пингов;
- v - печать версии и выход;
- --tee _filename_ - дублирование результата в текстовый файл;
- --append - если используется --tee, вместо перезаписи содержимого файла, новая информация добавляется к существующей;
- port - номер порта;
- h - использование режима http;
- u - отображать адрес URL на каждой строке;
- post - использовать POST вместо GET в режиме http;
- head - использовать HEAD вместо GET;
- сокращенный вызов режима http.
Способ 6: nmap
Как проверить, открыт ли порт на роутере?
Это легко сделать с помощью утилиты nmap. Установить занятость некоторого порта IP-адреса можно так:
Nmap -sP IP_адрес/номер_порта
Общий синтаксис команды:
Nmap [типы сканирования] [опции] {спецификации}
Задавать ключи не обязательно - в этом случае произойдет проверка всех открытых портов и программ, которые их слушают.
Чтобы узнать используемый софт:
Nmap -sV сайт
Если нужно просканировать несколько сайтов, они указываются через пробел.
Просканировать диапазон адресов можно так:
Nmap -sP x-y
где x - адрес, с которого начинается диапазон, y - которым заканчивается.
Утилита имеет графическую оболочку Zenap. Кроме того, что она выполняет все функции nmap, умеет строить карту сети.
Чтобы понять, как работает пара компьютеров, установивших связь друг с другом по протоколу TCP/IP, нужно знать, что для их взаимодействия устанавливается канал связи (Session), по которому они будут передавать друг другу информацию. Чтобы отправляющий данные компьютер был уверен, что они поступают к соответствующей программе на нужном компьютере, и принимающий компьютер понял, что полученные данные пришли именно с нужного компьютера и для нужной программы, связь устанавливается по схеме сервер-клиент на заранее оговоренном канале связи. Этот канал связи называется «Порт».
Программа на -сервере настроена таким образом, что в режиме запроса от клиентской программы. Другими словами она «слушает» заранее оговоренный порт (канал связи). Клиентская настроена на отправку запросов исключительно по заранее оговоренному порту. Для удобства они нумеруются от 0 до 65535.
Существуют общепринятые , которые закреплены за часто используемыми и популярными программами, например, почтовые программы The Bat и Outlook Express используют порт 110. Вообще, этот порт зарезервирован за всеми программами, соединяющимися с почтовыми серверами. Так, для браузеров зарезервирован свой порт – 80. Он предназначен для просмотра - со всех браузеров.
В процессе работы с компьютером, особенно с анивирусными программами, обеспечивающими защиту доступа в интернет, возникает необходимость самостоятельно, чтобы дать сетевой игре или программе возможность соединения с другими пользователями. Для этого нужно удостовериться, что запрашиваемый таким приложением порт свободен от других приложений, а также запретить антивируснику блокировать данный порт.
Для этого с помощью команды «Выполнить», которая доступна после активации кнопки «Пуск», ввести консольную команду netstat. Чтобы проверить открытый порт самостоятельно и заодно просмотреть
Источники: Википедия, Майкрософт, portscan.ru
Как узнать, какие порты открыты на компьютере?
- Для Windows: Пуск → «cmd» → Запустить от имени администратора → «netstat -bn»
- В антивируснике, таком как Avast, есть возможность посмотреть активные порты в Брандмауэре: инструменты -> Брандмауэр -> Сетевые соединения.
Также полезные команды netstat:
To display both the Ethernet statistics and the statistics for all protocols, type the following command:
netstat -e -s
To display the statistics for only the TCP and UDP protocols, type the following command:
netstat -s -p tcp udp
To display active TCP connections and the process IDs every 5 seconds, type the following command:
nbtstat -o 5
To display active TCP connections and the process IDs using numerical form, type the following command:
nbtstat -n -o
Для сокетов TCP допустимы следующие значения состояния:
CLOSED | Закрыт. Сокет не используется. |
LISTEN (LISTENING) | Ожидает входящих соединений. |
SYN_SENT | Активно пытается установить соединение. |
SYN_RECEIVED | Идет начальная синхронизация соединения. |
ESTABLISHED | Соединение установлено. |
CLOSE_WAIT | Удаленная сторона отключилась; ожидание закрытия сокета. |
FIN_WAIT_1 | Сокет закрыт; отключение соединения. |
CLOSING | Сокет закрыт, затем удаленная сторона отключилась; ожидание подтверждения. |
LAST_ACK | Удаленная сторона отключилась, затем сокет закрыт; ожидание подтверждения. |
FIN_WAIT_2 | Сокет закрыт; ожидание отключения удаленной стороны. |
TIME_WAIT | Сокет закрыт, но ожидает пакеты, ещё находящиеся в сети для обработки |
Список наиболее часто используемых портов