Как определить, открыт ли порт на сервере Windows?
Я пытаюсь установить сайт под альтернативным портом на сервере, но порт может быть закрыт брандмауэром. Есть ли способ пинговать или входить в определенный порт, чтобы увидеть, открыт ли он?
windows-server-2003 port pingПоделиться Источник Jason 07 ноября 2008 в 18:48
13 ответов
- Ruby-посмотреть, открыт ли порт
Мне нужен быстрый способ узнать, открыт ли данный порт с помощью Ruby. В настоящее время я возюсь с этим: require ‘socket’ def is_port_open?(ip, port) begin TCPSocket.new(ip, port) rescue Errno::ECONNREFUSED return false end return true end Он отлично работает, если порт открыт, но недостатком…
- Проверка, открыт ли порт сервера с Android
Я пытаюсь подключиться к своему удаленному серверу с моего устройства Android.
755
Предполагая, что это порт TCP (а не UDP), который вы пытаетесь использовать:
На самом сервере используйте
netstat -an
, чтобы проверить, какие порты прослушиваются.Извне просто используйте
telnet host port
(илиtelnet host:port
в системах Unix), чтобы узнать, отказано ли соединение, принято или тайм-ауты.
На этом последнем тесте, то в целом:
- отказ в подключении означает, что на этом порту ничего не работает
- принято означает, что что-то работает на этом порту
- тайм-аут означает, что брандмауэр блокирует доступ
На Windows 7 или Windows Vista параметр по умолчанию ‘telnet’ не распознается как внутренняя или внешняя команда, работающая программа или batch file. Чтобы решить эту проблему, просто включите ее: Нажмите кнопку *Start** → Панель управления → Программы → Включить или выключить функции Windows. В списке прокрутите вниз, выберите Клиент Telnet и нажмите OK .
Поделиться Alnitak 07 ноября 2008 в 18:55
193
На Windows вы можете использовать
netstat -na | find "your_port"
чтобы сузить результаты. Вы также можете отфильтровать LISTENING
, ESTABLISHED
, TCP
и тому подобное. Имейте в виду, что это чувствительно к регистру.
Поделиться J.Celmer 11 апреля 2013 в 15:27
94
Если вы проверяете извне, а не с самого сервера, и вы не хотите утруждать себя установкой telnet (поскольку он не поставляется с последними версиями Windows) или любого другого программного обеспечения, то у вас есть собственный PowerShell:
Test-NetConnection -Port 800 -ComputerName 192.168.0.1 -InformationLevel Detailed
(К сожалению, это работает только с PowerShell 4.0 или новее. Чтобы проверить версию PowerShell, введите $PSVersionTable
.)
PS: Обратите внимание, в наши дни в твиттерсфере есть некоторые утверждения, которые намекают на то, что этот ответ можно улучшить, упомянув «Test-Connection» из ядра PowerShell или ярлык «tnc». Смотрите https://twitter.com/david_obrien/status/1214082339203993600 и помогите мне отредактировать этот ответ, чтобы улучшить его, пожалуйста!
(Если у вас есть PSVersion < 4.0, вам не повезло. Проверьте эту таблицу:
Несмотря на то , что вы можете обновить свою версию PowerShell, установив Windows Management Framework 4.0, для меня это не сработало, командлет Test-NetConnection по-прежнему недоступен).
Поделиться knocte 25 февраля 2016 в 10:09
- Как проверить, открыт ли порт на удаленном сервере с batch file и без стороннего программного обеспечения?
Поскольку этот вопрос закрыт (где я намеревался ответить первым) Я открываю эту. На некоторых машинах запрещено устанавливать / скачивать двоичные файлы, поэтому я хочу знать, как проверить, открыт ли порт на удаленной машине, используя только собственные возможности скрипта windows.
Я интегрирую платежный шлюз в веб-сайт, который размещается на сервере компании. Этот процесс нуждается в открытии 2-го порта, я проверил это с одним сервером, где я попросил их открыть порт, и они это сделали, и мой код работает нормально. Но когда я попросил открыть порт для другой…
42
На машине Windows вы можете использовать PortQry от Microsoft, чтобы проверить, прослушивает ли приложение уже определенный порт, используя следующую команду:
portqry -n 11.22.33.44 -p tcp -e 80
Поделиться Gunjan Moghe 29 мая 2014 в 04:48
41
Мне это понравилось:
netstat -an | find "8080"
из telnet
telnet 192.168.100.132 8080
И просто убедитесь, что брандмауэр выключен на этой машине.
Поделиться Sarvar Nishonboev 06 марта 2014 в 12:30
24
Если telnet
недоступен, загрузите PuTTY . Это намного превосходящий Telnet, SSH и т. Д. клиент и будет полезен во многих ситуациях, а не только в этой, особенно если вы администрируете сервер.
Поделиться Machtyn 11 января 2011 в 14:31
13
Вам нужен инструмент для этого? Существует веб-сайт по адресу http://www.canyouseeme.org/ . В противном случае вам понадобится какой-то другой сервер, чтобы перезвонить вам, чтобы узнать, открыт ли порт…
Поделиться Douglas Mayle 07 ноября 2008 в 18:54
12
Используйте это, если вы хотите увидеть все используемые и прослушивающие порты на сервере Windows:
netstat -an |find /i "listening"
Смотрите все открытые, прослушиваемые, установленные порты:
netstat -a
Поделиться zehnaseeb 23 июня 2014 в 06:11
8
На сервере Windows вы можете использовать
netstat -an | where{$_.Contains("Yourport")}
Поделиться Derbium 03 мая 2013 в 14:59
4
PsPing от Sysinternals тоже очень хорошо.
Поделиться Unknown 12 декабря 2014 в 08:21
4
Другой вариант- tcping .
Например:
tcping host port
Поделиться Vadzim 07 сентября 2015 в 10:59
1
Вот что сработало для меня:
- Откройте командную строку
- Тип
telnet
- Microsoft Telnet>открыть имя <host или адрес IP><space><port>
Он подтвердит, открыт ли порт.
Поделиться p_champ 02 июля 2013 в 15:38
0
Еще одна утилита, которую я нашел и которая также хороша и мала, — это сканер портов командной строки PortQry версии 2.0 .
Вы можете пропинговать сервер и порт, и он сообщит вам состояние порта. Существует утилита командной строки и UI для нее.
Поделиться
Похожие вопросы:
Есть ли способ проверить, открыт ли определенный порт на сервере?
Точно так же, как вы бы ping an IP Of на сервер, чтобы проверить, работает ли он, Можем ли мы также проверить, есть ли на этом работающем сервере порт active/open? это просто приходит мне в голову,…
Эффективно проверить, открыт ли порт на Linux?
Из сценария bash как я могу быстро узнать, открыт ли порт 445 /прослушивается на сервере. Я попробовал несколько вариантов, но мне нужно что-то быстрое: 1. lsof -i :445 (занимает секунды) 2. netstat…
Проверка, открыт ли порт
Я хочу посмотреть, открыт ли порт 1878 на моем сервере Windows Server 2008 R2. Я использую сервер VPS, поэтому я поговорил с компанией VPS servers и попросил их открыть все порты. Когда я запускаю…
Ruby-посмотреть, открыт ли порт Мне нужен быстрый способ узнать, открыт ли данный порт с помощью Ruby. В настоящее время я возюсь с этим: require ‘socket’ def is_port_open?(ip, port) begin TCPSocket.new(ip, port) rescue…
Проверка, открыт ли порт сервера с Android
Я пытаюсь подключиться к своему удаленному серверу с моего устройства Android. Как я могу проверить, если определенный порт на моем сервере работает? Например. как проверить, открыт ли порт 80 на…
Как проверить, открыт ли порт на удаленном сервере с batch file и без стороннего программного обеспечения?
Поскольку этот вопрос закрыт (где я намеревался ответить первым) Я открываю эту. На некоторых машинах запрещено устанавливать / скачивать двоичные файлы, поэтому я хочу знать, как проверить, открыт…
как проверить, открыт ли какой-то порт на хостинговом сервере
Я интегрирую платежный шлюз в веб-сайт, который размещается на сервере компании. Этот процесс нуждается в открытии 2-го порта, я проверил это с одним сервером, где я попросил их открыть порт, и они…
Как проверить, открыт ли порт в Powershell
У меня нет команды telnet в моей системе. Однако моя система установлена с Windows 10 , поэтому должен быть способ проверить, открыт ли конкретный порт в удаленной системе. Эта конкретная удаленная…
Есть ли шанс на сервере windows узнать, как долго используется порт TCP?
У нас есть некоторые проблемы с тоннами портов TPC, зависающих в состоянии TIME_WAIT на нескольких машинах windows. Перезагрузка решает эту проблему, но меня интересует еще одна вещь. Есть ли…
iOS Swift: Как проверить, открыт ли порт
В моем приложении нужно проверить, открыт порт или нет. Вот ссылка на эту ссылку iOS SDK: как я могу проверить, открыт ли порт? Но ДНТ получит любое решение. А также обратитесь к этим двум github…
Страница не найдена – Information Security Squad
Любое действие, требующее использования сети, например, открытие веб-страницы, переход по ссылке или открытие приложения и игра в онлайн-игру, называется активностью. Действие пользователя – это запрос, а время ответа веб-приложения – это время, которое требуется для ответа на этот запрос. Эта временная задержка также включает время, которое требуется серверу для выполнения запроса. В результате, оно определяется […]
Apache Tomcat – это бесплатный сервер приложений Java с открытым исходным кодом, который поставляется с невероятной функциональностью из коробки. И хотя безопасность Apache Tomcat значительно улучшилась за прошедшие годы, это не означает, что ее нельзя улучшить. В этом руководстве мы рассмотрим различные способы защиты сервера Apache Tomcat. Методы, обсуждаемые в этом руководстве, лучше всего подходят […]
Certificate Authority (CA) – это организация, ответственная за выпуск цифровых сертификатов для обеспечения безопасности связи. Она выступает в качестве доверенной третьей стороны для владельца сертификата и стороны, полагающейся на сертификат. Удостоверяющий центр может быть как государственным, так и частным. Публичные УЦ обычно используются для проверки подлинности веб-сайтов, а частные центры сертификации используются для генерации сертификатов […]
dokrscout – это инструмент для автоматизации поиска уязвимых приложений или секретных файлов в Интернете через поиск Google. dorkscout сначала получает списки дорков с сайта https://www.exploit-db.com/google-hacking-database, а затем сканирует заданную цель или все найденное. Использование Установка словарей Чтобы начать сканирование, вам понадобятся словари дорков или списки, и чтобы получить эти списки, вы можете установить их с […]
Helm позволяет модульно упаковывать приложения Kubernetes и применять различную логику развертывания на основе конфигурационных “values” пользователей. Обычно при первом развертывании нам необходимо генерировать случайные секреты (например, JWT / секреты сессии или случайные пароли). Мы можем позволить пользователям вручную создавать/управлять этими секретами вне жизненного цикла развертывания Helm чарта. Но будет удобнее, если Helm чарт сможет обрабатывать […]
Как проверить, открыт или заблокирован 25 порт?
p { line-height: 2 !important; } ul { line-height: 2 !important; } .single-article p:last-child { margin-bottom: 20px; } ol { line-height: 2 !important; } .single-article p:last-child { margin-bottom: 20px; } .single-article p + p { margin-top: 20px; margin-bottom: 20px; }Для того, чтобы проверить email адреса, программе ePochta Verifier нужен интернет и симуляция отправки письма на адрес. Это происходит через порт 25, который требуется для работы SMTP-протокола и иногда закрывается интернет-провайдерами.
ePochta Verifier имеет в своем арсенале 3 режима проверки:
через прямое подключение
через скрипты
через прокси-сервера
Каждый режим имеет свои особенности и назначение. Если 25 порт закрыт интернет-провайдером и проверка через прямое подключение невозможна, рекомендуется использовать проверку email адресов с использованием скриптов на веб-сайтах. На нашем сайте представлена детальная инструкция по работе со скриптами и активации этого режима проверки.
Как проверить открыт ли 25й порт или нет?
Нажмите «Пуск» — «Выполнить». В появившимся окне пропишите «cmd» и нажмите «ок».
В окне командной строки пропишите «telnet адрес_smtp_сервера 25».
Нажмите «Enter». В Windows 7,8,10 утилита telnet может быть отключена, в таком случае следует ее включить: «Пуск» — «Панель управления» — «Программы» — «Программы и компоненты» — «Включение или отключение компонентов Windows». Далее нужно поставить галочку возле пункта «Клиент Telnet».
Если у вас появилось приглашение от сервера, значит порт открыт.
Если у вас появилось приглашение от сервера, значит порт открыт.
Что же делать если 25й порт закрыт?Если ISP не блокирует порт 25, а ePochta Verifier пишет, что он закрыт, вероятней всего ваш антивирус заблокировал программу. Выключите его на некоторое время и повторите процедуру заново. Также можно добавить программу ePochta Verifier в исключения антивируса. Как это сделать вы узнаете ниже:
Avast: http://www.getavast.net/support/managing-exceptions
Eset NOD32 Smart Security: http://support.eset.com/kb2769/?locale=en_US
Kaspersky Internet Security: http://support.kaspersky.com/11146#block2
AVG: https://support.avg.com/SupportArticleView?l=en_US&urlName=How-to-exclude-file-folder-or-website-from-AVG-scanningОбратитесь к своему провайдеру с просьбой открыть порт 25. Если ваша просьба будет отклонена, ищите другого интернет провайдера.
Ищите Wi-fi с открытым 25м портом. Wi-fi будет предоставляться другим провайдером и есть вероятность, что порт 25 будет открыт.
42 | 20000 | DNP |
О —windows может пропинговать IP Linux, но не может получить доступ к домашней странице Linux Tomcat
Версия CentOS: 6,8
Версия операционной системы Windows: Win10
Версия Tomcat для Linux: 7.0.65
Linux — это используемый режим NAT и IP-адрес общего хоста. Изначально я хотел использовать Windows для доступа к домашней странице Tomcat в Linux, но результат был неудачным, но в Windows я могу пропинговать ip Linux. Очевидно, что порт Linux не открыт, поэтому я установил брандмауэр в Linux Следующая конфигурация была добавлена в iptables:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
Затем перезапустите брандмауэр:
service iptables restart
Я думал, что смогу с радостью посетить домашнюю страницу кота на окнах.
В результате я все еще не мог получить доступ к домашней странице tomcat, и я продолжал пробовать это несколько раз позже, и это не сработало.
В конце концов
Нашел проблему, потому что местоположение недавно добавленной информации о конфигурации порта 8080 неверно! Так что будь осторожен,
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
Приведенная выше информация о конфигурации должна быть размещена перед следующей информацией о конфигурации, чтобы открытые порты вступили в силу!
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
Прикрепите iptables:
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
Объясняю:
-A INPUT -j REJECT —reject-with icmp-host-prohibited
-A FORWARD -j REJECT —reject-with icmp-host-prohibited
Эти два значения означают, что все другие пакеты, которые не соответствуют ни одному из вышеуказанных правил, отклоняются в таблице INPUT и таблице FORWARD. И отправить запрещенное сообщение хосту отклоненному хосту.
Затем перезапустите брандмауэр, чтобы вы могли получить доступ к серверу Tomcat в Linux в Windows.
Приложите таблицу эффектов операции:
Описание: Знание iptables Linux все еще относительно отсутствует, поэтому необходимо систематически изучать iptables Linux.
Использование расширенных команд ping и traceroute
Содержание
Введение
Предварительные условия
Требования
Используемые компоненты
Условные обозначения
Команда ping
Расширенная команда ping
Описание полей команды ping
Команда traceroute
Расширенная команда traceroute
Описания полей команды traceroute
Дополнительные сведения
В этом документе объясняется, как использовать расширенные команды ping и traceroute. Сведения о стандартных командах ping и traceroute широко представлены в следующих документах:
Требования
Данный документ требует наличия основных сведений о командах ping и traceroute, ссылки на подробные описания которых приведены в разделе «Введение».
Используемые компоненты
Сведения, содержащиеся в данном документе, касаются следующих версий программного и аппаратного обеспечения:
Данные для этого документа были получены при тестировании указанных устройств в специально созданных лабораторных условиях. Все устройства, описанные в данном документе, обладают ненастроенной (заданной по умолчанию) конфигурацией. При работе в действующей сети необходимо изучить все возможные последствия каждой команды.
Условные обозначения
Дополнительные сведения о применяемых в документе обозначениях см. в Условные обозначения, используемые в технической документации Cisco
Команда ping (Packet InterNet Groper) является очень распространенным средством для устранения неполадок, связанных с доступом к устройствам. В ней для определения активности удаленного хоста используются два типа сообщений протокола ICMP – эхо-запрос и эхо-ответ. Команда ping также измеряет количество времени, необходимого для получения эхо-ответа.
Команда ping сначала посылает пакет эхо-запроса на адрес, а затем ожидает ответа. Эхо-тест является удачным только в том случае, если ECHO REQUEST попадает в место назначения, и место назначения может отправить ECHO REPLY к источнику эхо-теста в течение заданного временного интервала.
Расширенная команда ping
Если от маршрутизатора посылается обычная команда ping, адрес источника этой команды ping является IP-адресом интерфейса, который используется пакетом для выхода из маршрутизатора. При использовании расширенной команды ping IP-адрес источника может быть изменен на любой IP-адрес в маршрутизаторе. Расширенная команда ping используется для более тщательной проверки доступности хоста и возможности сетевого подключения. Расширенная команда ping работает только в привилегированной командной строке EXEC. Обычная команда ping работает как в пользовательском, так и в привилегированном режиме EXEC. Чтобы использовать эту функцию, введите ping в командной строке и нажмите Возврат. Будет предложено заполнить поля, как показано в разделе Описания полей команды ping этого документа.
Описания полей команды ping
В этой таблице приведены описания полей команды ping. Эти поля могут быть изменены с помощью расширенной команды ping.
Поле | Описание |
---|---|
Protocol [ip]: | Запрос поддерживаемого протокола. Введите appletalk, clns, ip, novell, apollo, vines, decnet или xns. По умолчанию используется ip. |
Target IP address: | Запрашивает IP-адрес или имя хоста узла назначения, для которого планируется выполнение эхо-теста. Если в качестве поддерживаемого протокола указан не протокол IP, введите здесь соответствующий адрес для указанного протокола. По умолчанию не используется. |
Repeat count [5]: | Число ping-пакетов, передаваемых на адрес назначения. Значение по умолчанию – 5. |
Datagram size [100]: | Размер ping-пакета (в байтах). По умолчанию: 100 байт |
Timeout in seconds [2]: | Интервал времени ожидания. По умолчанию: 2 секунды. Запрос «ICMP-эхо» считается успешным, только если пакет ЭХО-ОТВЕТА получен до этого временного промежутка. |
Extended commands [n]: | Указывает на появление или отсутствие дополнительных команд. По умолчанию не используется. |
Source address or interface: | Интерфейс или IP адрес маршрутизатора будут использованы в качестве адреса отправителя для тестирования. Обычно IP-адрес для использования исходящим интерфейсом выбирает маршрутизатор. Интерфейс также может использоваться, но с корректным синтаксисом, как показано ниже: Source address or interface: ethernet 0 Примечание. Выше приведены неполные выходные данные расширенной команды ping. Интерфейс не может быть записан как e0. |
Type of service [0]: | Определяет тип обслуживания (ToS). Запрошенный ToS размещен в каждом тестовом пакете, но нет гарантии, что все маршрутизаторы смогут обработать ToS. Это выбор качества Интернет-обслуживания. Значение по умолчанию – 0. |
Set DF bit in IP header? [no]: | Задает необходимость включения бита «Не фрагментировать» (DF) в пакете ping-трассировки. Если необходимость будет подтверждена, параметр «Не фрагментировать» не разрешает фрагментацию пакета, когда он должен пройти через сегмент с меньшей максимальной единицей передачи данных (MTU), и выдается сообщение об ошибке от устройства, которое должно было фрагментировать пакет. Это используется для определения минимальной единицы MTU на тракте к адресату. По умолчанию используется значение «no». |
Validate reply data? [no]: | Указывает, следует ли проверять ответные данные. По умолчанию используется значение «no». |
Data pattern [0xABCD] | Задает шаблон данных. Для устранения ошибок кадрирования и проблем синхронизации на линиях последовательной передачи используются разные шаблоны данных. По умолчанию используется шаблон [0xABCD]. |
Loose, Strict, Record, Timestamp, Verbose[none]: | Параметры IP-заголовка. Это приглашение предлагает выбрать более одного параметра. Типичные сбои:
Различие между использованием параметра Record этой команды и использованием команды traceroute состоит в том, что параметр Record этой команды не только информирует об участках тракта, пройденных эхо-запросом (ping) до места назначения, но также информирует об участках, через которые запрос прошел на обратном пути. Команда traceroute не предоставляет информацию о тракте, пройденном эхо-ответом. Команда traceroute выдает приглашения для заполнения обязательных полей. Команда traceroute устанавливает запрошенный параметр для каждого теста. Однако нет гарантии, что все маршрутизаторы (или конечные узлы) обработают эти параметры. По умолчанию не используется. |
Sweep range of sizes [n]: | Позволяет менять размеры отправляемых эхо-пакетов. Эта команда используется для определения минимальных размеров MTU, настроенных для узлов на тракте к адресату. Таким образом, устраняется снижение производительности, вызванное фрагментацией пакетов. По умолчанию используется значение «no». |
!!!!! | Каждый восклицательный знак (!) указывает на получение ответа. Точка (.) означает, что время ожидания ответа сетевым сервером истекло. Описание остальных символов см. в разделе символы эхо-тестирования. |
Success rate is 100 percent | Процент пакетов, успешно возвращенных маршрутизатору. Результаты со значением менее 80 процентов обычно указывают на наличие проблем. |
round-trip min/avg/max = 1/2/4 ms | Интервалы времени полного обхода для эхо-пакетов протокола, включая минимальные/средние/максимальные значения (в миллисекундах) |
Нижеприведенная диаграмма показывает, что хост 1 и хост 2 не могут обмениваться ping-пакетами. Вы можете проверить наличие этой неисправности на маршрутизаторах, чтобы определить, является ли она проблемой маршрутизации, или у одного из двух узлов неправильно настроен шлюз по умолчанию.
Для выполнения эхо-тестирования из хоста 1 к хосту 2 каждый хост должен указать маршрутизатору шлюз по умолчанию на соответствующем сегменте LAN, или он должен обменяться сетевой информацией с маршрутизаторами, использующими некоторый протокол маршрутизации. Если для одного из хостов задан неверный шлюз или указаны неверные маршруты в таблице маршрутизации, он не сможет отправлять пакеты на адреса, отсутствующие в ARP (Кэш протокола разрешения адресов). Также возможно, что хосты не могут обмениваться ping -пакетами по причине того, что для одного из маршрутизаторов не указан маршрут в подсеть, из которой хост посылает свои эхо-пакеты.
Пример
Ниже приведен пример команды расширенной ping команды, источник которой – интерфейс Ethernet 0 маршрутизатора А, а получатель – интерфейс Ethernet маршрутизатора В. Если эхо-тестирование выполняется успешно, проблем маршрутизации нет. Маршрутизатор A имеет доступ в Ethernet маршрутизатора B, а маршрутизатор B имеет доступ в Ethernet маршрутизатора A. А также шлюзы по умолчанию для обоих узлов настроены корректно.
Если выполнение расширенной команды ping из маршрутизатора A не удается, значит возникли проблемы маршрутизации. Проблема маршрутизации может быть на любом из трех маршрутизаторов. Маршрутизатору А может недоставать маршрута в подсеть Ethernet маршрутизатора B или в подсеть между маршрутизаторами C и B. Маршрутизатору B может недоставать маршрута в подсеть Ethernet маршрутизатора A или в подсеть между маршрутизаторами C и A; а маршрутизатор C может не иметь маршрута в подсеть сегментов Ethernet маршрутизаторов A или B. Следует устранить проблемы маршрутизации, и после этого попытаться выполнить команду ping из хоста 1 к хосту 2. Если хост 1 все еще не может связаться с хостом 2, следует проверить шлюзы по умолчанию обоих хостов. Возможность соединения между Ethernet маршрутизатора А и Ethernet маршрутизатора В проверяется с помощью расширенной команды ping.
Если обычная команда ping посылается из интерфейса Ethernet от маршрутизатора А к маршрутизатору В, адрес источника этого эхо-пакета является IP-адресом исходящего интерфейса, то есть, адресом последовательного интерфейса 0 (172.31.20.1). Когда маршрутизатор В отвечает на эхо-пакет, этот ответ отсылается на адрес источника (172.31.20.1). Таким образом проверяется только связь между последовательным интерфейсом 0 маршрутизатора А (172.31.20.1) и интерфейсом Ethernet маршрутизатора B (192.168.40.1).
Чтобы проверить связь между интерфейсами Ethernet 0 маршрутизатора A (172.16.23.2) и Ethernet 0 маршрутизатора B (192.168.40.1), используйте команду расширенную команду ping. Расширенная команда ping дает возможность указать адрес источника ping-пакета, как показано ниже.
Router A>enable Router A#ping Protocol [ip]: Target IP address: 192.168.40.1 !--- Адрес, на который должен быть выполнен эхо-запрос. Repeat count [5]: Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: y Source address or interface: 172.16.23.2 !--- Этот адрес является ичточником ping-пакетов. Type of service [0]: Set DF bit in IP header? [no]: Validate reply data? [no]: Data pattern [0xABCD]: Loose, Strict, Record, Timestamp, Verbose[none]: Sweep range of sizes [n]: Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 162.108.21.8, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 36/97/132 ms !--- Эхо-запрос выполнен успешно. Router A#
Следующий пример содержит расширенные команды и подробности изменений:
Router A>enable Router A#ping Protocol [ip]: !--- Имя протокола. Target IP address: 192.168.40.1 !--- Адрес, на который должен быть выполнен эхо-запрос. Repeat count [5]: 10 !--- Число ping-пакетов, передаваемых на адрес назначения. Datagram size [100]: !--- Размер ping-пакета. Значение по умолчанию – 100 байт. Timeout in seconds [2]: !--- Интервал времени ожидания. Эхо-запрос может быть успешным, только если: !--- Пакет ECHO REPLY получен до истечения данного промежутка времени. Extended commands [n]: y !--- Если необходимо получить параметры расширенной команды, выберите "yes" !--- (Loose Source Routing, Strict Source Routing, Record route и Timestamp). Source address or interface: 172.16.23.2 !--- Этот адрес является источником ping-пакетов и должен быть IP-адресом !--- или полным именем интерфейса (например, Serial0/1 или 172.16.23.2). Type of service [0]: !--- Определяет тип обслуживания (ToS). Set DF bit in IP header? [no]: !--- Задает необходимость включения бита DF в !--- пакет эхо-запроса. Validate reply data? [no]: !--- Указывает, следует ли проверять ответные данные. Data pattern [0xABCD]: !--- Указывает шаблон данных в полезной нагрузке пакета. Некоторые физические каналы !--- могут иметь проблемы, связанные с шаблоном данных. Например, последовательные каналы !--- с неверно настроенной кодировкой канала. Полезные шаблоны данных для тестирования !--- включают шаблоны "все 1" (0Xffff), шаблоны "все 0" (0x0000), а также чередование !--- единиц и нулей (0Xaaaa). Loose, Strict, Record, Timestamp, Verbose[none]: !--- Параметры IP-заголовка. Sweep range of sizes [n]: y !--- Если необходимо менять размеры отправляемых эхо-пакетов, выберите "yes". Sweep min size [36]: Sweep max size [18024]: Sweep interval [1]: Sending 179890, [36..18024]-byte ICMP Echos to 162.108.21.8, timeout is 2 seconds: !--- Счетчик 179890 зависит от значений минимальных изменений, !--- максимальных изменений, интервала между изменениями и счетчик повторений. Подсчет основан на следующих значениях. !--- 18024 (верхний предел диапазона) - 36 (нижний предел диапазона) = 17988 (байт в диапазоне) !--- 17988 (байт в диапазоне) / 1 (интервал между изменениями) = 17988 (шаги в диапазоне) !--- 17988 (байт в диапазоне) + 1 (первое значение) = 17989 (значения, подлежащие проверке) !--- 17989 (значения, подлежащие проверке) * 10 (счетчик повторений) = 179890 (эхо-запросы, подлежащие отправке) !--- Чтобы уменьшить значение, необходимо увеличить интервал между изменениями или уменьшить !--- счетчик повторений, можно также сократить разницу между !--- минимальным и максимальным уровнем изменений. На базе предыдущего примера !--- количество 17890 является ожидаемым значением, предпринимается попытка выполнить запрос "ICMP-эхо" 17890 раз. Packet sent with a source address of 172.16.23.2 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Success rate is 100 percent, round-trip min/avg/max = 1/2/4 ms !--- Запрос "ICMP-эхо" успешно выполнен. Router A#
Команда трассировки
Там, где команда ping может быть использована для проверки связи между устройствами, команда traceroute может использоваться для обнаружения трактов, по которым пакеты достигают удаленных адресатов, а также точек нарушения маршрутизации.
Целью использования команды traceroute является запись источника каждого ICMP-сообщения «превышен лимит времени» для обеспечения трассировки тракта, по которому пакет попадает к адресату.
Устройство, выполняющее команду traceroute, отсылает последовательность блоков UDP (Протокол датаграмм пользователя) (с увеличением значений TTL (время существования) на неверный адрес порта (по умолчанию 33434) на удаленном хосте.
Сначала посылаются три датаграммы, причем поле TTL каждой датаграммы установлено в значение 1. Значение TTL, равное 1, является причиной «тайм-аута» датаграммы при достижении первого маршрутизатора на ее тракте. Этот маршрутизатор выдает ICMP сообщение о превышении времени, что означает истечение срока действия датаграммы.
Затем посылаются еще три сообщения UDP, каждое со значением 2 в поле TTL. Это значит, что второй маршрутизатор на тракте к адресату вернет сообщения ICMP об истечении срока.
Этот процесс продолжается до тех пор, пока пакеты не достигнут пункта назначения, а система, инициировавшая проверку прохождения сигнала по сети, не получит ICMP-сообщения об истечении времени от каждого маршрутизатора по пути к пункту назначения. Как только эти датаграммы пытаются получить доступ к неверному порту (по умолчанию 33434) на хосте назначения, то этот узел начинает отвечать ICMP-сообщениями «port unreachable», что значит «порт недоступен». Это событие служит признаком того, что программа traceroute завершена.
Расширенная команда traceroute
Расширенная команда traceroute – разновидность команды traceroute. Расширенная команда traceroute используется для просмотра пути, по которому пакеты доходят до пункта назначения. Эта команда также может быть использована для проверки маршрутизации. Это удобно для устранения петель маршрутизации или для определения, на каком участке происходит потеря пакетов (если маршрут отсутствует или пакеты блокируются списком управления доступом (ACL) или брандмауэром). Вы можете выполнить расширенную команду ping, чтобы определить тип проблемы соединения, а затем с помощью расширенной команды traceroute выяснить местоположение проблемы.
Сообщение об ошибке превышения лимита времени указывает на то, что сервер промежуточной связи «увидел» и отбросил пакет. Сообщение об ошибке недоступности пункта назначения указывает на то, что узел назначения получил тестовый пакет и отклонил его, так как не может отправить пакет. Если таймер срабатывает до прихода ответа, команда trace отображает звездочку (*). Выполнение команды заканчивается, когда происходит следующее:
конечная точка отвечает
максимальное значение TTL превышено
пользователь прерывает трассировку с помощью управляющей последовательности
Примечание. Активизировать эту управляющую последовательность можно с помощью одновременного нажатия клавиш Ctrl, Shift и 6.
Описания полей команды traceroute
В этой таблице содержатся описания полей команды traceroute:
Поле | Описание |
---|---|
Protocol [ip]: | Запрос поддерживаемого протокола. Введите appletalk, clns, ip, novell, apollo, vines, decnet или xns. По умолчанию используется ip. |
Target IP addres | Необходимо указать имя хоста или IP-адрес. Нет значения по умолчанию. |
Source address: | Интерфейс или IP адрес маршрутизатора будут использованы в качестве адреса отправителя для тестирования. Обычно IP-адрес для использования исходящим интерфейсом выбирает маршрутизатор. |
Numeric display [n]: | По умолчанию имеется как символическое, так и цифровое отображение; тем не менее можно отменить символическое отображение. |
Timeout in seconds [3]: | Количество секунд ожидания ответа на тестовый пакет. Значение по умолчанию равно трем секундам. |
Probe count [3]: | Число пробных пакетов, которые требуется отправить на каждом уровне TTL. Значение по умолчанию равно 3. |
Minimum Time to Live [1]: | Значения TTL для первых пробных пакетов. Значение по умолчанию — 1, но для отмены отображения известных скачков может быть установлено более высокое значение. |
Maximum Time to Live [30]: | Максимальное значение TTL, которое может использоваться. Значение по умолчанию – 30. Выполнение команды traceroute завершается при достижении точки назначения или данного значения. |
Port Number [33434]: | Порт назначения, используемый пробными сообщениями UDP. Значение по умолчанию — 33434. |
Loose, Strict, Record, Timestamp, Verbose[none]: | Параметры IP-заголовка. Можно указать любое сочетание. Команда traceroute выдает приглашения для заполнения обязательных полей. Запомните, что команда traceroute устанавливает запрашиваемый параметр для каждого теста; однако нет гарантии, что все маршрутизаторы (или конечные узлы) обработают эти параметры. |
Пример
Router A>enable Router A#traceroute Protocol [ip]: Target IP address: 192.168.40.2 !--- Адрес, к которому выполняется трассировка тракта. Source address: 172.16.23.2 Numeric display [n]: Timeout in seconds [3]: Probe count [3]: Minimum Time to Live [1]: Maximum Time to Live [30]: Port Number [33434]: Loose, Strict, Record, Timestamp, Verbose[none]: Type escape sequence to abort. Tracing the route to 192.168.40.2 1 172.31.20.2 16 msec 16 msec 16 msec 2 172.20.10.2 28 msec 28 msec 32 msec 3 192.168.40.2 32 msec 28 msec * !--- Трассировка выполнена успешно. Router A#
Примечание. Команду расширенной трассировки traceroute можно выполнить только в привилегированном режиме EXEC, в то время как команда обычной трассировки traceroute работает как в этом режиме, так и в режиме пользователя.
Пинговать порт через командную строку
Диагностика и логи
Telnet — это утилита, с помощью которой можно соединиться с удалённым портом любого компьютера и установить канал связи.
Важно: в Windows Vista и Windows 7/8/10 утилита telnet по умолчанию отключена. Вы можете установить утилиту по инструкции от Microsoft.
- 1. Нажмите Пуск или сочетание клавиш Win + R.
- 2. В поле поиска введите «cmd» и нажмите кнопку ОК.
- 3.
В командной строке введите команду:
telnet имя_сервера номер_порта
или:
telnet IP_сервера номер_порта
- 1. Запустите терминал. Для этого в поисковой строке введите слово «Терминал» или нажмите комбинацию клавиш Ctrl+Alt+T.
- 2.
Установите утилиту telnet:
sudo apt install telnet
- 3.
В терминале введите команду:
telnet имя_сервера номер_порта
или:
telnet IP_сервера номер_порта
Если командная строка или терминал возвращает ошибку, то порт закрыт:
Если окно становится полностью пустым или на экране появляется приглашение сервера, порт открыт:
Как пользоваться ping и traceroute
Ping — это утилита, с помощью которой можно проверить доступность сервера с компьютера. Опрашиваемому узлу отправляются эхо-запросы (ICMP-пакеты Echo Request). Если до узла дошёл запрос, в ответ он должен отправить ICMP-пакет с принятыми данными и эхо-ответ (Echo Reply).
Traceroute — это утилита, с помощью которой можно отследить путь запроса к серверу, а также проблемы, связанные с доступностью удалённого сервера. Утилита отправляет запрос узлу и последовательно опрашивает все маршрутизаторы на пути.
Если у вас кириллический домен Кириллические домены необходимо вводить в формате Punycode. Для перевода домена в Punycode воспользуйтесь сервисом Whois. Введите имя вашего домена и нажмите Punycode-конвертация.
- 1. Нажмите Пуск или сочетание клавиш Win + R.
- 2. В поле поиска введите «cmd» и нажмите кнопку ОК.
- 3.
В окне терминала введите нужную команду:
- ping — ping имя_сайта или ping IP_сервера,
- traceroute — tracert имя_сайта или tracert IP_сервера.
- 1. Запустите терминал. Для этого в поисковой строке введите слово «Терминал» или нажмите комбинацию клавиш Ctrl+Alt+T.
- 2.
В открывшемся окне терминала введите нужную команду:
- ping — ping имя_сайта или ping IP_сервера,
- traceroute — traceroute имя_сайта или traceroute IP_сервера.
- 1. Найдите в Spotlight утилиту Network Utility (Сетевая утилита) и запустите её.
- 2.
В открывшейся программе выберите нужную вкладку:
- ping — на вкладке «Ping» введите имя домена или IP-адрес и нажмите кнопку Ping:
- traceroute — на вкладке «Traceroute» введите имя домена или IP-адрес и нажмите кнопку Trace:
Готово, мы рассмотрели, как пользоваться командой ping и как запустить tracert.
Результатом работы каждой из этих команд будет несколько строк в окне терминала. Результат команды ping покажет количество переданных и потерянных пакетов при обмене с узлом, а также время приёма и передачи. Результатом traceroute будет трассировка маршрута к узлу.
Вы можете скопировать полученный результат или прислать скриншот с результатом исполнения в службу поддержки.
Диагностика сети при помощи MTR
MTR — программа, которая сочетает функционал команд traceroute и ping в одном инструменте. MTR проверяет соединение между локальной системой и указанным узлом (IP или доменом). Программа отправляет запрос к узлу, как команда ping, и показывает маршрут пакета, как traceroute.
Диагностика сети WinMTR:
- 1.
- 2.
Распакуйте архив и запустите программу от имени администратора:
- 3.
Нажмите Options, в настройках отключите галочку Resolve names. Нажмите OK:
- 4.
В поле «Host» введите ваше доменное имя или IP-адрес. Нажмите Start:
- 5.
Когда число отправленных пакетов (колонка «Sent») будет более 200, нажмите Stop:
- 6.
Нажмите Export TEXT и сохраните результат работы программы:
Результат работы содержит:
- Hostname — IP-адрес или домен узла. Значение «No response from host» говорит о блокировке ICMP-пакетов в узле;
- Loss % — процент потерянных ответов от данного узла. Например, при «No response from host» процент потерь равен 100 — значит, маршрутизатор не ответил на ICMP-запрос;
- Sent — количество отправленных запросов узлу;
- Recv — количество полученных ответов от узла;
- Best — наименьшее время задержки, мс;
- Avrg — среднее время задержки, мс;
- Worst — наибольшее время задержки, мс;
- Last — время задержки последнего полученного пакета, мс.
На Linux утилита MTR установлена по умолчанию.
- 1. Запустите терминал. Для этого в поисковой строке введите слово «Терминал» или нажмите комбинацию клавиш Ctrl+Alt+T.
- 2.
Если утилита MTR не установлена, введите команды:
- для Ubuntu/Debian: sudo apt install mtr
- для CentOS: sudo yum install mtr
- для Fedora: sudo dnf install mtr
- 3.
Введите команду:
mtr -n -c 300 -r 123.123.123.123
Где 123.123.123.123 — IP-адрес вашего сайта.
- 4.
Дождитесь окончания выполнения запроса. В окне терминала вы увидите результат работы утилиты MTR:
Результат работы содержит:
- HOST — IP-адрес или домен узла. Значение «???» говорит о блокировке ICMP-пакетов в узле;
- Loss% — процент потерянных ответов от данного узла. Например, при «???» процент потерь равен 100 — значит, маршрутизатор не ответил на ICMP-запрос;
- Snt — количество отправленных запросов узлу;
- Last — время задержки последнего полученного пакета, мс;
- Avg — среднее время задержки, мс;
- Best — наименьшее время задержки, мс;
- Wrst — наибольшее время задержки, мс;
- StDev — среднеквадратичное отклонение времени задержки, мс.
Если вы обнаружили потери на промежуточных узлах, проблемы нет. Промежуточные маршрутизаторы могут не отвечать на ICMP-запросы, а просто пропускать дальше трафик. Если же потери обнаружены на конечном узле, отправьте результат работы программы в службу поддержки. В сообщении укажите ваш внешний IP-адрес. Узнать IP-адрес можно на сайте REG.RU.
Как просмотреть журналы сайтов
Журналы сайтов расположены в корневой директории хостинга в папке logs. Логи хостинга можно просмотреть как через хостинг-панели управления, так и по FTP и SSH.
В панели управления хостингом
- 1.
- 2.
Перейдите в Менеджер файлов, а затем в директорию logs:
- 3.
Для просмотра журнала скачайте необходимый файл на локальный ПК. Для этого выделите строку с названием журнала и нажмите кнопку Скачать:
- 1.
- 2.
В разделе «Файлы» нажмите Диспетчер файлов:
- 3.
- 4.
Для просмотра журнала скачайте необходимый файл на локальный ПК. Для этого выделите строку с названием журнала и нажмите кнопку Скачать:
- 1.
- 2.
Перейдите во вкладку «Файлы», а затем в директорию logs:
- 3.
Для просмотра журнала скачайте необходимый файл на локальный ПК. Для этого выделите строку с названием журнала и нажмите кнопку Скачать:
По FTP или SSH
Помогла ли вам статья?
Источник: https://www.reg.ru/support/hosting-i-servery/kak-razmestit-sayt-na-hostinge/kak-proverit-otkryt-li-port-komandoy-telnet
Test-NetConnection: проверка открытых/закрытых TCP портов из PowerShell
В PowerShell 4.0 (Windows 2012 R2, Windows 8.1 и выше) появился встроенный командлет для проверки сетевых соединений — Test-NetConnection. С помощью данного командлета вы можете проверить доступность удаленного сервера или сетевой службы на нем, блокировку TCP портов файерволами, проверить доступность по ICMP и маршрутизацию. По сути, командлет Test-NetConnection позволяет заменить сразу несколько привычных сетевых утилит: ping, traceroute, сканер TCP портов и т.д.
Любому администратору периодически приходится проверять доступность службы на удаленном сервере путем проверки ответа от удаленного TCP порта (например, доступность почтового или веб сервера). Причем, все привыкли, что такую проверку быстрее всего выполнить с помощью команды telnet.
Например, для проверки доступности SMTP службы на почтовом сервере (по умолчанию он отвечает на 25 TCP порту) достаточно выполнить команду telnet msk-msg01.winitpro.ru 25. Но начиная с Windows 7 клиент telnet выделен в отдельный компонент, который нужно устанавливать отдельно. Посмотрим, как выполнить аналогичное действие в PowerShell.
Основное преимущество командлета Test-NetConnection – он уже входит в состав всех современных версий Windows и вам не нужно устанавливать его отдельно. Командлет входит в состав модуля NetTCPIP (начиная с PoSh v4.0).
TCP Port Ping: Использование Test-NetConnection для проверки открытых портов и доступности серверов
Проверим, открыт ли порт TCP 25 (SMTP протокол) на почтовом сервере с помощью Test-NetConnection:
Test-NetConnection -ComputerName msk-msg01 -Port 25
В сокращенном виде аналогичная команда выглядит так:
TNC msk-mail1 -Port 25
Разберем результат команды:
ComputerName : msk-msg01
RemoteAddress : 10.10.1.7
RemotePort : 25
InterfaceAlias : CORP
SourceAddress : 10.10.1.70
PingSucceeded : True
PingReplyDetails (RTT) : 0 ms
TcpTestSucceeded : True
Как вы видите, командлет выполняет разрешение имени сервера в IP адрес, выполняется проверка ответа ICMP (аналог ping) и доступность TCP порта. Указанный сервер доступен по ICMP (PingSucceeded = True) и 25 TCP порт также отвечает (RemotePort=25, TcpTestSucceeded= True).
У командлета есть специальный параметр –CommonTCPPort, позволяющий указать наименование известного сетевого протокола (HTTP, RDP, SMB, WINRM).
Например, чтобы проверить доступность веб-сервера, можно использовать команду:
Test-NetConnection -ComputerName winitpro.ru -CommonTCPPort HTTP
Или доступность RDP порта (3389):
Test-NetConnection msk-rds1 –CommonTCPPort RDP
Можно вывести все параметры, которые возвращает командлет Test-NetConnection:
Test-NetConnection msk-man01 -port 445|Format-List *
Если нужна только информация по доступности TCP порта, в более лаконичном виде проверка может быть выполнена так:
TNC msk-mail1 -Port 25 -InformationLevel Quiet
Командлет вернул True, значит удаленный порт доступен.
В Windows 10/ Windows Server 2016 вы можете использовать командлет Test-NetConnection для трассировки маршрута до удаленного сервера при помощи параметра –TraceRoute (аналог tracert). С помощью параметра –Hops можно ограничить максимальное количество хопов при проверке.
Test-NetConnection msk-man01 –TraceRoute
Командлет вернул сетевую задержку при доступе к серверу в милисекундах (PingReplyDetails (RTT) : 41 ms) и все IP адреса маршрутизаторов на пути до целевого сервера.
Test-NetConnection в скриптах мониторинга
Следующая команда позволить проверить доступность определенного порта на множестве серверов, список которых хранится в текстовом файле servers.txt. Нас интересуют сервера, где искомая служба не отвечает:
Get-Content c:\Distr\servers.txt | where { -NOT (Test-Netconnection $_ -Port 25 -InformationLevel Quiet)}| Format-Table –AutoSize
Аналогичным образом вы можете создать простейшую систему мониторинга, которая проверяет доступность серверов и выводит уведомление, если один из серверов недоступен.
Например, вы можете проверить доступность основных служб на всех контроллеров домена (список DC можно получить командлетом Get-ADDomainController). Проверим следующие службы на DC (в утилите PortQry есть аналогичное правило Domain and trusts):
- RPC – TCP/135
- LDAP – TCP/389
- LDAP – TCP/3268
- DNS – TCP/53
- Kerberos – TCP/88
- SMB – TCP/445
$Ports = «135»,»389″,»636″,»3268″,»53″,»88″,»445″,»3269″, «80», «443»$AllDCs = Get-ADDomainController -Filter * | Select-Object Hostname,Ipv4address,isGlobalCatalog,Site,Forest,OperatingSystemForEach($DC in $AllDCs){Foreach ($P in $Ports){$check=Test-NetConnection $DC -Port $P -WarningAction SilentlyContinueIf ($check.tcpTestSucceeded -eq $true){Write-Host $DC.name $P -ForegroundColor Green -Separator » => «}else{Write-Host $DC.name $P -Separator » => » -ForegroundColor Red}
}
Скрипт проверит указанные TCP порты на контроллерах домена, и, если один из портов недоступен, выделит его красным цветом (с небольшими доработками можно запустить данный PowerShell скрипт как службу Windows).
Сканер сети на PowerShell
Также вы можете реализовать простой сканер портов и IP подсетей для сканирования удаленных серверов или подсетей на открытые/закрытые TCP порты.
Просканируем диапазон IP адресов на открытый порт 3389:
foreach ($ip in 5..30) {Test-NetConnection -Port 3389 -InformationLevel «Detailed» 10.10.10.$ip}
Просканируем диапазон TCP портов от 1 до 1024 на указанном сервере:
foreach ($port in 1..1024) {If (($a=Test-NetConnection srvfs01 -Port $port -WarningAction SilentlyContinue).tcpTestSucceeded -eq $true){ «TCP port $port is open!»}}
Источник: https://winitpro.ru/index.php/2016/09/08/tcp-port-ping-s-pomoshhyu-powershell/
Как проверить открыт ли порт
Меня часто спрашивают, как проверить, открыт ли порт с помощью стандартных средств операционной системы Windows. Сделать это совсем не сложно и под силу даже начинающему пользователю. Давайте разбираться.
Иногда у пользователя возникает ситуация, когда необходимо открыть тот или иной порт компьютера для видеоигр, сложных программ или специальных интернет-клиентов. Но как проверить, открыт ли в данный момент этот порт? Для решения подобных задач есть несколько вариантов.
Проверка открытых портов на локальном компьютере
Способ 1. Для того, чтобы проверить открытые порты на локальном (своем) компьютере, можно воспользоваться «Командной строкой» операционной системы Windows (полный Список команд Windows ( Windows CMD ) тут).
Для вызова этой строки необходимо нажать сочетание клавиш Win+R и прописать команду «cmd», после чего нажать «ОК».
В открывшемся окне пропишите специальную команду
netstat -a
и ознакомьтесь со списком открытых портов на Вашем компьютере.
Способ 2. Если Вы подключены к интернету, то проверить, открыт ли порт, можно на сайте
whatsmyip.org/port-scanner/
Данный ресурс сам определит Ваш IP-адрес, а сканировать порты можно через специальное поле «Custom Port Test».
Введите интересующий Вас порт и нажмите кнопку «Check Port», после чего Вы получите ответ, открыт или закрыт данный порт.
Проверка открытых портов на удаленном компьютере
Теперь рассмотрим, как проверить, открыт ли порт на удаленном компьютере или сервере. Воспользуйтесь все той же «Командной строкой» в системе Windows, но теперь пропишите команду telnet в формате:
telnet IP-адрес порт
Нажмите клавишу «Enter». Если нет записи «Could not open …», то запрашиваемый порт открыт, иначе – закрыт.
Мы вкратце рассмотрели, как проверить, открыт ли порт на компьютере. Если остались, какие либо вопросы, то задайте их в поле для комментариев.
Что означает результат проверки порта?
Статус Порт закрыт
Подключиться к этому порту в данный момент невозможно. Вредоносные программы или злоумышленники не могут воспользоваться данным портом для атаки или получения конфиденциальной информации (Вам поможет материал 4 лучших бесплатных антивируса для Windows 10). Если все неизвестные порты имеют статус «закрыт», то это означает хороший уровень защищенности компьютера от сетевых угроз.
Если порт должен быть открытым, то это плохой показатель. Причиной недоступности порта может быть неверная настройка сетевого оборудования или программного обеспечения. Проверьте права доступа программ к сети в файерволе. Удостоверьтесь, что порты проброшены через роутер.
Результат «порт закрыт» также можно получить, если порт открыт, но время отклика вашего компьютера в сети (пинг) завышено. Подключится к порту в таких условиях практически не представляется возможным.
Статус Порт открыт
К данному порту можно произвести подключение, он доступен из интернета. Если это то, что требуется — прекрасно.
Если неизвестна причина, по которой порт может быть открытым, то стоит проверить запущенные программы и сервисы. Возможно, некоторые из них вполне легально используют этот порт для работы с сетью. Существует вероятность, что порт открыт в следствии работы несанкционированного/вредоносного программного обеспечения (Вам поможет материал Как включить защиту от потенциально нежелательных программ в Windows Defender). В таком случае рекомендуется проверить компьютер антивирусом.
Что за порты? Для чего они нужны?
Порты, которые проверяет PortScan.ru — это не физические, а логические порты на компьютере или сетевом устройстве.
В случае, если программа или служба планирует работать с сетью, она открывает порт с уникальным номером, через который она может работать с удаленными клиентами/серверами. Фактически, сетевая программа резервирует для себя определенное число, которое позволяет понять, что пришедшие данные предназначаются именно этой программе.
На человеческом языке это звучало бы примерно так: «Я, программа-сервер, открываю порт номер 1234. Если по сетевому кабелю придут данные с номером порта 1234 — это мне. «
Какие номера портов может открывать программа?
Порты идентифицируются номерами от 0 до 65535 включительно. Любой другой порт открыть нельзя, соответственно и проверить тоже. Это ограничения TCP/IP протокола.
Стоит отметить, что клиентская программа всегда должна знать номер порта, к которому ей нужно подключаться на сервере или другом удаленном сетевом устройстве. По этой причине для наиболее популярных протоколов зарезервированы порты в диапазоне от 0 до 1023.
Так, например, осуществляя серфинг в интернете, ваш браузер подключается к 80 порту на удаленном сервере, на котором находится сайт. В ответ браузер получает набор кода и данных, который скачивает и отображает в виде веб-страницы.
Для каких ситуаций возможна проверка открытых портов?
Проверка открытых портов возможна, если вашему компьютеру присвоен внешний IP адрес. Подробнее об этом вы можете узнать у своего интернет-провайдера.
Стоит учесть, что если ваш компьютер подключен к интернету не напрямую, а через роутер (маршрутизатор), то результаты проверки относятся именно к роутеру. Проверить состояние порта для компьютера внутри такой подсети возможно только при наличии проброса портов.
Что такое проброс портов?
Проброс портов (Port Forwarding, иногда Virtual Servers) — специальная настройка на роутере, позволяющая перенаправить внешние запросы (из интернета) на компьютеры локальной сети. По сути это способ указать, на какой локальный компьютер пересылать данные и запросы подключения, пришедшие на определенный порт.
Допустим, у вас дома игровой или веб-сервер, подключенный через роутер к интернету. Все компьютеры, подключенные к этому же роутеру, находятся в одной сети, поэтому смогут подключиться к данному серверу. Однако снаружи, из интернета, подключиться к вашему серверу без проброса портов уже не получится.
Если ваш компьютер подключен к интернету напрямую (без роутера/маршрутизатора), то выполнять проброс портов не требуется. Все ваши открытые порты должны быть доступны из интернета (естественно, при наличии выделенного IP).
Как узнать, какие порты открыты на компьютере?
Для Windows: Пуск → «cmd» → Запустить от имени администратора → netstat -bn
Для Linux: В терминале выполнить команду: «ss -tln»
Как закрыть порт?
Прежде всего надо устранить причину — запущенную программу или службу, которая открыла этот порт; ее надо закрыть/остановить. Если причина открытого порта не ясна — проверьте компьютер антивирусом, удалите лишние правила проброса портов на роутере и установите продвинутый файервол (Firewall).
Источник: https://elementarnov.ru/component/k2/item/63-kak-proverit-otkryt-li-port
Что такое номер порта Ping? — WiseTut
Ping — это термин и инструмент командной строки, используемый для проверки подключения удаленной системы к сети. Это один из самых популярных инструментов для диагностики сети. По умолчанию использование команды ping не требует номера порта и будет работать только с целевым IP-адресом или доменным именем. Но вы можете спросить, какой номер порта используется командой ping.
Очень популярны протоколы TCP и UDP, где они могут предоставлять несколько номеров портов для предоставления различных услуг по сети.Команда ping может быть связана с этими протоколами TCP и UDP, но не использует TCP или UDP. Об этом могут даже спросить вас на собеседовании, или на аттестате, или на классном экзамене. Команда ping использует протокол ICMP.
Протокол Ping и ICMP
Инструмент ping использует протокол ICMP, который отличается от протоколов TCP и UDP, где он тесно интегрирован с протоколом IP. ICMP — это протокол уровня 3, который передается с IP-пакетами, даже если IP также является протоколом уровня 3.ICMP создан для поддержки протокола IP.
Ping использует ICMP типа 8 и типа 0
Обычно протокол ICMP не имеет никаких атрибутов или функций, таких как номер порта. Протокол ICMP предоставляет части Type , Code , Checksum и Content . Таким образом, для команды ping нет определенного номера порта. Но типы ICMP Тип 8 (Эхо-сообщение) и Тип 0 (Эхо-ответное сообщение) используются для операции эхо-запроса.Отправитель или пингер создает пакет ICMP с типом 8, который запрашивает у удаленной системы ответ ICMP. Целевой объект, если он настроен правильно и доступен, отвечает ответом ICMP типа 0 на этот запрос проверки связи.
Содержимое Ping-пакета
Чтобы исследовать пакеты ICMP ping, мы проведем тест ping для популярного IP-адреса DNS-сервера Google 8.8.8.8 и посмотрим на детали пакета ICMP для запроса и ответа. Сначала запустите ping для 8.8.8.8 с помощью следующей команды.
$ пинг 8.8.8.8
Ниже мы видим, что ICMP-запрос ping с IP-адреса 192.168.142.133 на адрес 8.8.8.8. Если мы посмотрим на пакет с подробным описанием протокола ICMP, там нет информации о порте и номере порта. Наиболее характерной информацией является информация о типе: « Тип: 8 (эхо-запрос (эхо-запрос)») «
. Ping ICMP Request Packet DetailsОтвет от DNS-сервера Google 8.8.8.8, как показано ниже, помечен как ответ эхо-запроса.Если мы посмотрим на подробный ответный пакет ICMP, там нет информации, связанной с портом или номером порта. Но « Type: 0 (Echo (ping) reply) » — это тип пакета ответа ICMP.
Ping ICMP Ответный пакет ПодробностиИспользуется ли порт 7 для проверки связи ICMP?
Короткий ответ — нет. В старые времена компьютеров было много простых протоколов, которые помогали пользователям в разных случаях. Номер протокола TCP и UDP 7 назначен для простого порта службы ping , где для выполнения тестов ping могут использоваться протоколы TCP и UDP.Эта услуга называется эхо-тестом , где после подключения к TCP и UDP-порту 7 переданные данные возвращаются в качестве ответа, который создает эффект эха. Но в настоящее время большинство компьютеров не предоставляют и не обслуживают этот TCP- и UDP-порт номер 7 для этого типа проверки связи и подключения. В качестве общего ответа протокол ICMP не использует порт номер 7, который является службой TCP и UDP, называемой абсолютным эхо.
Альтернативный способ проверки связи с TCP-портами
Как указывалось ранее, ping — это общий термин, который используется для разных случаев, кроме команды ping.Существуют различные инструменты, которые можно использовать для проверки связи с портами TCP и UDP. Эти инструменты просто пытаются подключить удаленные TCP-порты, и если соединение установлено успешно, это называется успешным эхо-запросом. Вы можете прочитать следующий пост о проверке связи TCP-портов с помощью различных инструментов, таких как telnet, Nmap, Test-NetConenction, NC.
Как проверить связь с определенным номером порта
Ping, вероятно, является наиболее часто используемым инструментом для проверки сетевого подключения к удаленной системе. Использовать ping очень просто.Вы просто используете команду ping вместе с IP или URL-адресом удаленного сервера.
пинг faebook.com
PING faebook.com (157.240.24.20) 56 (84) байт данных.
64 байта из edge-star-shv-01-sin2.facebook.com (157.240.24.20): icmp_seq = 1 ttl = 51 время = 307 мс
64 байта от edge-star-shv-01-sin2.facebook.com (157.240.24.20): icmp_seq = 2 ttl = 51 time = 225 мс
Но каков порт по умолчанию для команды ping? Ответ отрицательный.
Ping основан на ICMP, а не на TCP или UDP, и протокол ICMP не имеет номеров портов.
Так как же проверить связь с определенным номером порта удаленного сервера?
Вы не можете сделать это с помощью команды ping. Однако есть и другие инструменты, которые позволяют пинговать определенные порты TCP или UDP.
Позвольте мне показать вам пару таких инструментов и то, как их использовать для проверки связи с заданным номером порта.
Пинг определенного порта с Nmap
Nmap — это инструмент сетевого сканирования. Хотя вы можете многое сделать с Nmap, я покажу вам, как использовать его для проверки связи с определенным портом.
Но сначала убедитесь, что в вашей системе установлен Nmap.В дистрибутивах на основе Debian / Ubuntu вы можете использовать приведенную ниже команду для установки Nmap.
sudo apt install nmap
После того, как вы убедились, что у вас установлен Nmap, вы можете использовать его для проверки связи с портом следующим образом:
nmap -p 443 facebook.com
Результат будет будет примерно так:
Запуск Nmap 7.60 (https://nmap.org) в 2019-01-07 10:40 IST
Отчет о сканировании Nmap для facebook.com (157.240.24.35)
Хост включен (0.Задержка 49 с).
Другие адреса facebook.com (не сканированные): 2a03: 2880: f10c: 83: face: b00c: 0: 25de
Запись rDNS для 157.240.24.35: edge-star-mini-shv-01-sin2.facebook.com
ПОРТОВАЯ ГОСУДАРСТВЕННАЯ СЛУЖБА
443 / TCP открыть https
Выполнено Nmap: 1 IP-адрес (1 хост активен) просканирован за 10,35 секунды
Как видно из выходных данных, сервер включен и ответил, что номер порта 443 типа TCP открыт.
Если вы хотите просканировать более одного порта, вы также можете это сделать. Например, вы можете указать диапазон номеров портов следующим образом:
nmap -p 80-88 facebook.com
В выходных данных будет представлена информация по каждому отдельному порту:
Запуск Nmap 7.60 (https://nmap.org) в 2019-01-07 10:48 IST
Отчет о сканировании Nmap для facebook.com (157.240.24.35)
Хост работает (задержка 0,34 с).
Другие адреса facebook.com (не сканированные): 2a03: 2880: f139: 183: face: b00c: 0: 25de
Запись rDNS для 157.240.24.35: edge-star-mini-shv-01-sin2.facebook.com
ПОРТОВАЯ ГОСУДАРСТВЕННАЯ СЛУЖБА
80 / tcp открыть http
81 / tcp отфильтрованные хосты2-нс
82 / TCP с фильтром xfer
83 / tcp с фильтром mit-ml-dev
84 / tcp отфильтрованный ctf
85 / tcp с фильтром mit-ml-dev
86 / tcp фильтрованный mfcobol
87 / tcp с фильтром Priv-term-l
Керберос-сек с фильтром 88 / tcp
Выполнено Nmap: 1 IP-адрес (1 хост включен) просканирован за 4.49 секунд
Вы также можете использовать имя порта вместо номера порта:
nmap -p https facebook.com
Результат остается таким же, как и предыдущая команда.
Если вы хотите специально пропинговать порт TCP, вы также можете указать это:
nmap -p 443 -sT facebook.com
Для порта UDP вы можете использовать
nmap -p 443 -sU facebook.com
Nmap — не единственный инструмент. Вы также можете использовать некоторые другие инструменты.
Использование telnet для проверки связи определенного порта на удаленном сервере
Telnet — это инструмент удаленного подключения, похожий на SSH, однако SSH более безопасен по конструкции, чем Telnet.
Перед использованием Telnet убедитесь, что он установлен. В Debian / Ubuntu вы можете использовать эту команду для установки Telnet:
sudo apt install telnet
После того, как у вас есть Telnet, вы можете использовать его для подключения к определенному порту удаленной системы.
telnet facebook.] '.
Вы можете закрыть соединение с помощью сочетания клавиш Ctrl +] или просто нажмите Ctrl + C.
Почему нет ответа от порта?
Все примеры, которые я показал до сих пор, имели успешный отклик. Но что делать, если ответа нет. Что это значит?
Может быть несколько возможных причин, по которым порт I может не отвечать.
- Нет служб, слушающих порт, поэтому нет ничего, что могло бы ответить.
- Брандмауэр блокирует входящий трафик на определенном порту.
- На самом деле существует проблема с сетевым подключением между вами и рассматриваемым сервером.
Надеюсь, вам понравился этот учебник и вы узнали, как пинговать определенный номер порта. Если у вас есть вопросы или предложения, оставьте комментарий ниже.
Как пинговать определенный номер порта? Команды с примерами
Системные администраторы или операторы должны убедиться, что служба работает все время. Когда дело доходит до сетевого или удаленного мониторинга, технический оператор должен проверить, прослушивает ли служба запрос по запросу.
Пингуя определенный порт на сервере с удаленного компьютера, вы узнаете, что служба работает или не работает. Номер порта в компьютерной сети — это числовое значение (например, 3425).
Сетевая служба — это программное приложение, которое прослушивает определенный номер порта для запроса. Как только запрос получен через этот порт, он отвечает.
Служба базы данных, веб-сервер или веб-приложение — вот несколько примеров сетевых приложений. На сервере может размещаться несколько служб, использующих разные номера портов.
В реальном примере просмотр веб-страницы (например, www.cspsprotocol.com) является примером, когда веб-сайт работает через порт 80 на сервере хостинга для домена, а веб-браузер запрашивает веб-страницу.
У нас есть команда ping протокола icmp, чтобы проверить IP, доступен ли хост или нет. Но это только сообщает нам, что хостинг-сервер запущен и работает. Недостаточно проверить, запущена ли конкретная служба на этом хосте.
Пинг порта — это способ, с помощью которого мы можем удаленно проверить, отображается ли сервировка на порту или нет.В этом руководстве мы объясняем, как пинговать порт разными способами.
Используйте telnet для проверки связи определенного порта.
Telnet — это основная команда в операционных системах Windows и Linux для удаленного входа в систему. Это протокол прикладного уровня, использующий TCP / IP в качестве основного транспортного протокола. Telnet нуждается в IP-адресе и номере порта, по умолчанию он использует номер порта 23. Чтобы проверить связь с конкретным портом с помощью telnet, нам нужно использовать следующую команду.
# telnet
Вместо IP-адреса вы также можете использовать доменное имя.C
Команда telnet является частью Windows, но в Linux доступна безопасная версия удаленного входа с именем ssh. Если в вашей операционной системе Linux нет этой команды, используйте следующую команду для ее установки.
#yum install telnet
Для выхода из теленети наберите q.
Используйте команду Netcat (nc) для проверки связи определенного порта.
В Linux есть команда nc
для выполнения действий для UDP, TCP и других типов сокетов. Он может сканировать порты и выполнять другие действия.Сканирование портов означает проверку того, открыт ли порт и может ли он использоваться для передачи данных. Если в Linux нет команды nc, вы можете установить ее с помощью yum.
# yum install NC
Ниже показано использование nc для проверки портов на хосте www.google.com.
# nc -vz www.google.com 80 Ncat: версия 7.50 (https://nmap.org/ncat) Ncat: подключен к 142.250.192.196:80. Ncat: 0 байтов отправлено, 0 байтов получено за 0,05 секунды.
Подключиться к порту 80. Итак, порт открыт.
Теперь подключитесь к порту 500.
# NC -vz www.google.com 500 Ncat: версия 7.50 (https://nmap.org/ncat) Ncat: соединение с 142.250.192.196 не удалось: время ожидания соединения истекло. Ncat: Пробуем следующий адрес ... Ncat: Сеть недоступна.
Ошибка подключения. Порт не открыт.
Есть ли у нас другие утилиты для проверки связи с конкретным портом?
Да, мы можем использовать такие утилиты, как nmap в Linux и Poershell в Windows. Но telnet является наиболее предпочтительным, поскольку это основная и устаревшая команда для всех типов операционных систем.
Как проверить связь с портами на удаленном хосте
Эта статья посвящена различным методам, которые вы можете использовать для проверки связи с портами , чтобы помочь в устранении проблем с сетевым подключением. Команда ping доступна практически на каждом устройстве, на которое вы можете войти, что делает ее инструментом перехода к использованию для проверки сетевого подключения к удаленному хосту.
Это, несомненно, выглядит знакомо ..
$ ping 172.31.31.232
PING 172.31.31.232 (172.31.31.232) 56 (84) байтов данных.64 байта из 172.31.31.232: icmp_seq = 1 ttl = 64 time = 0.542 мс
64 байта из 172.31.31.232: icmp_seq = 2 ttl = 64 time = 0.187 мс
64 байта из 172.31.31.232: icmp_seq = 3 ttl = 64 time = 0,219 мс
Хотя это может быть полезным тестом, проблема заключается в том, что при пинге удаленного хоста, например, через Интернет, вы можете не получить ответ, если протокол ICMP (который использует Ping) заблокирован по пути или заблокирован устройством назначения. Вместо этого мы могли «пропинговать » конкретный порт на удаленном устройстве.
Если сервер прослушивает определенный порт, например порт 80 для веб-сервера, мы можем попытаться проверить возможность подключения к этому порту, чтобы установить, доступен ли он. В случае веб-сервера его задача — прослушивать порт 80 (или, действительно, 443), поэтому, установив соединение (или выполнив эхо-запрос этого порта), мы можем проверить, доступна ли служба. Существует ряд инструментов, которые помогут нам проверить связь с конкретным портом, в зависимости от того, какую операционную систему вы используете.
Примечание . На самом деле мы не проверяем связь с портом — термин «проверка связи» технически относится к запросу проверки связи с использованием протокола управляющих сообщений Интернета (ICMP).Здесь мы собираемся установить соединение с заданным портом, но вы часто слышите, как это звучит как «эхо-запрос на порт».
Давайте начнем с рассмотрения NetCat, инструмента, часто используемого в Linux, который изначально присутствует во многих дистрибутивах Linux.
Порты Ping с использованием NetCat
netcat (часто сокращенно nc ) — это компьютерная сетевая утилита для чтения и записи в сетевые соединения с использованием TCP или UDP. Он доступен в Linux, а также на хостах ESXi.
Поскольку мы не хотим, чтобы взаимодействовал с портом сервера , мы просто хотим установить, открыт ли он и слушает, мы используем опцию -z
с netcat, которая является опцией сканирования. Мы также хотим использовать -v
для включения подробного вывода. Имея это в виду, позвольте « пинговать» порт 80 на веб-сервере, чтобы узнать, отвечает ли он:
$ nc -vz 172.31.28.41 80
Подключение к порту 172.31.28.41 80 [tcp / http] выполнено успешно!
Отлично! Выходные данные показывают, что nc проверил, что он может взаимодействовать с веб-сервером через порт 80.Таким образом мы можем «пропинговать» любой порт. Например, чтобы узнать, прослушивает ли он порт 22 (SSH):
$ nc -vz 172.31.28.41 22
Подключение к порту 172.31.28.41 22 [tcp / ssh] выполнено успешно!
И снова у нас есть успешный ответ на запрос подключения.
Проверьте связь с диапазоном портов с помощью NetCat
Также можно использовать nc для сканирования диапазона портов. Для этого используйте:
# nc -vz 172.31.28.41 22-23
Подключение к порту 172.31.28.41 22 [tcp / ssh] выполнено успешно!
NC: подключиться к 172.31.28.41 сбой порта 23 (tcp): в соединении отказано
Как видно из выходных данных, мы подтвердили, что порт 22 доступен, а порт 23 — нет.
NetCat имеет много-много других применений, но как инструмент для быстрой проверки из системы Linux, чтобы узнать, прослушивает ли порт и доступен ли он, его трудно превзойти! Затем давайте посмотрим, как мы можем пропинговать порт с устройства Windows.
Как использовать PowerShell для проверки связи с портом или несколькими портами
PowerShell изначально доступен на современных устройствах Windows (и теперь вы также можете установить PowerShell в Linux), поэтому это отличный инструмент для проверки , работает ли удаленный сервер. порт доступен , так как он имеет встроенный командлет test-netconnection
для проверки связи с удаленными портами.Как и в случае с nc
, единственные параметры, которые вам нужно передать командлету, — это IP-адрес и порт, которые мы хотим пропинговать на удаленном хосте. Например:
Как и в случае с NetCat
, вы также можете использовать test-netconnection
для проверки связи диапазона портов с помощью простого сценария PowerShell. Например:
$ target = 3.10.190.7.
$ ports = [22,23]
Foreach ($ P в портах $) {
Test-NetConnection $ target -Port $ P -WarningAction SilentlyContinue
}
Это простой цикл для
, который будет пинговать каждый порт, указанный в переменной ports, против IP в целевой переменной .
Последние мысли
В этой статье вы узнали, , как проверить связь с портами на удаленном хосте , используя собственные инструменты в системах Linux и Windows. Эти методы полезны для определения, открыт ли порт сервера и доступен ли он на удаленном хосте .
В случае NetCat это также будет работать с хостов ESXi, что может быть полезно при устранении проблем с подключением vSphere.
tcp-ping-port — npm
tcp-ping-port
1.0.1 • Общедоступно • ОпубликованоПростая утилита TCP ping для проверки связи порта IP или домена.
Содержание
Преимущества
Ниже приведены плюсы и минусы этого пакета по сравнению с обычным пингом
Плюсы
- Может использоваться с функциями Amazon Lambda и Aazure.
Обычный пинг - Пакеты TCP имеют более высокий приоритет, чем пакеты ICMP
- Он может пинговать определенный порт
- Может работать, даже если ICMP отключен
Минусы
к началу
Установка
$ npm install tcp-ping-port --save
наверх
Как использовать
Простые примеры
const {tcpPingPort} = require ("tcp-ping-port")
tcpPingPort ("google.com "). затем (онлайн => {
})
С дополнительными опциями
const {tcpPingPort} = require ("tcp-ping-port")
const dns = require ('dns')
const options = {
socketTimeout: 11000,
dnsTimeout: 10000,
dnsServers: '8.8.8.8',
}
tcpPingPort ("google.com", 80, параметры). Затем (онлайн => {
})
к началу
Зависимости
-
dns-fast-resolver
— для одновременного разрешения нескольких доменов и обработки любых ошибок при разрешении доменного имени.Кроме того, чтобы пропустить полное разрешение DNS, если имя хоста является IP-адресом. -
лодаш
-
тип
к началу
API
tcpPingPort (имя хоста [, порт, параметры, преобразователь])
Попытки открыть и закрыть TCP-соединение
hostname
порт
<номер>
Номер портаопции
<объект>
опции сокета и резолвера- socketTimeout
- dnsTimeout
Полезно в редких случаях, когда для разрешения имен хостов может потребоваться более 4 секунд по умолчанию. - dnsServers
['4.4.4.4', '[2001: 4860: 4860 :: 8888]', '4.4.4.4:1053', '[2001: 4860: 4860 :: 8888]: 1053']
)
- socketTimeout
возвращает
-
True
— когда хост находится в сети, а TCP-соединение успешно открывается и закрывается -
False
— когда имя хоста не разрешено или ему не удалось открыть TCP-соединение
-
к началу
Тестирование
Выполнить все тесты
$ npm тест
Запускаем ping "google.com: 80 "
тест
$ npm запустить unit-test - --grep "google.com:80"
наверх
Установить
npm i tcp-ping-port
ЗагрузкиЕженедельные загрузки
Соавторы
Как проверить связь с конкретным портом?
Мы будем понимать, что «пинг определенного порта» означает, что вы хотите проверить статус определенного порта для данного IP-адреса. Это полезно для устранения неполадок, почему служба не работает должным образом.
В этой статье показано, как проверить состояние конкретного сетевого порта с помощью Netcat, Nmap и Nping.
Эхо-запрос на определенный порт с помощью Netcat
Инструмент Netcat используется для получения информации о сетевых подключениях и прослушивания.
Если Netcat не установлен на вашем компьютере с Linux, выполните следующую команду:
Системы на основе Ubuntu / Debian:
$ sudo apt установить netcat
Системы на базе CentOS / Red Hat:
Или попробуйте
$ sudo dnf установить netcat
Вы можете использовать Netcat для проверки связи определенного порта следующим образом.
Замените < IP > и < Порт > соответствующим образом.
Например:
Рисунок 1. Выполните эхо-запрос определенного порта с помощью Netcat
Чтобы получить дополнительные параметры и дополнительную помощь по Netcat, выполните команду ниже.
Проверка связи с определенным портом с помощью инструмента Nmap
Инструмент Nmap обычно используется для сканирования сетевого хоста для получения информации о доступных портах и службах.
Если инструмент Nmap еще не установлен на вашем компьютере с Linux, выполните следующую команду:
Системы на основе Ubuntu / Debian:
Системы на базе CentOS / Red Hat:
Теперь вы можете использовать Nmap для проверки связи определенного порта.Синтаксис i.
Например:
$ sudo nmap -p80 192.168.0.1
Рисунок — Пинг определенного порта с помощью Nmap
Для получения дополнительных опций и помощи при использовании Nmap выполните команду ниже.
Эхо-запрос на определенный порт с помощью Nping
Nping является частью Nmap и работает примерно так же, как стандартная утилита ping. Вы можете использовать инструмент Nping для проверки связи определенного порта следующим образом.
Например:
Рисунок 2 — Пинг определенного порта с помощью Nping
Для получения дополнительных опций и помощи при использовании Nping выполните команду ниже.
Заключение
В этой статье показано, как выполнить эхо-запрос определенного порта с помощью Netcat, Nmap и Nping. Сообщите нам, какой из этих инструментов лучше всего подходит для вас.
Test-NetConnection (NetTCPIP) | Документы Microsoft
Отображает диагностическую информацию для подключения.
В этой статье
Синтаксис
Test-Net Подключение
[[-ComputerName] ]
[-TraceRoute]
[-Hops ]
[-InformationLevel ]
[<Общие параметры>]
Test-Net Подключение
[[-ComputerName] ]
[-CommonTCPPort]
[-InformationLevel ]
[<Общие параметры>]
Test-Net Подключение
[[-ComputerName] ]
-Порт
[-InformationLevel ]
[<Общие параметры>]
Test-Net Подключение
[[-ComputerName] ]
[-DiagnoseRouting]
[-ConstrainSourceAddress ]
[-ConstrainInterface ]
[-InformationLevel ]
[<Общие параметры>]
Описание
Командлет Test-NetConnection отображает диагностическую информацию для подключения.Он поддерживает тест ping, тест TCP, трассировку маршрута и диагностику выбора маршрута. В зависимости от входных параметров выходные данные могут включать результаты поиска DNS, список IP-интерфейсов, правила IPsec, результаты выбора маршрута / исходного адреса и / или подтверждение установления соединения.
Примеры
Пример 1: Проверка связи с помощью ping
PS C: \> Test-NetConnection
Имя компьютера: internetbeacon.msedge.net
RemoteAddress: 2a01: 111: 2003 :: 52
ИнтерфейсAlias: Ethernet
SourceAddress: 2001: 4898: d8: 33: 81e8: 7b49: 8bf5: 8710
PingSucceeded: True
PingReplyDetails (RTT): 5 мс
Эта команда проверяет подключение ping к серверу по умолчанию.
Пример 2: Проверка связи с помощью ping с подробными результатами
PS C: \> Test-NetConnection -InformationLevel "Подробный"
Имя компьютера: internetbeacon.msedge.net
RemoteAddress: 2a01: 111: 2003 :: 52
NameResolutionResults: 2a01: 111: 2003 :: 52
13.107.4.52
ИнтерфейсAlias: Ethernet
SourceAddress: 2001: 4898: d8: 33: 81e8: 7b49: 8bf5: 8710
NetRoute (NextHop): fe80 :: 200: 5eff: fe00: 203
PingSucceeded: True
PingReplyDetails (RTT): 6 мс
Эта команда проверяет подключение ping к серверу по умолчанию и устанавливает для параметра InformationLevel значение Подробный.
Пример 3: Проверка возможности подключения TCP и отображение подробных результатов
PS C: \> Test-NetConnection -Port 80 -InformationLevel "Подробный"
Имя компьютера: internetbeacon.msedge.net
RemoteAddress: 2a01: 111: 2003 :: 52
Удаленный порт: 80
NameResolutionResults: 2a01: 111: 2003 :: 52
13.107.4.52
Соответствие IPsecRules: IPsec / Domain-TrafficFromInternet-v6
NetworkIsolationContext: Интернет
IsAdmin: Ложь
ИнтерфейсAlias: Ethernet
SourceAddress: 2001: 4898: d8: 33: 81e8: 7b49: 8bf5: 8710
NetRoute (NextHop): fe80 :: 200: 5eff: fe00: 203
TcpTestSucceeded: True
Эта команда проверяет TCP-соединение с сервером по умолчанию и устанавливает для параметра InformationLevel значение Подробный.
Пример 4: Проверить соединение с удаленным хостом
PS C: \> Test-NetConnection -ComputerName "www.contoso.com" -InformationLevel "Подробный"
PingReplyDetails (RTT): 164 мс
Имя компьютера: www.contoso.com
RemoteAddress: 65.55.39.10
Имя Разрешение Результат: 65.55.39.10
64.4.6.100
ИнтерфейсAlias: Ethernet
SourceAddress: 10.137.193.122
NetRoute (NextHop): 10.137.192.1
PingSucceeded: True
PingReplyDetails (RTT): 164 мс
Эта команда проверяет связь ping с удаленным хостом с именем www.contoso.com.
Пример 5. Выполнение диагностики маршрута для подключения к удаленному хосту
PS C: \> Test-NetConnection -ComputerName www.contoso.com -DiagnoseRouting -InformationLevel Подробный
Имя компьютера: www.contoso.com
RemoteAddress: 2001: 428: 3805: 187 :: 2768
SelectedSourceAddress: 2001: 4898: e0: 79: f17c: d212: 8743: 43c2
OutgoingInterfaceIndex: 4
SelectedNetRoute: DestinationPrefix: :: / 0 NextHop: fe80 :: 200: 5eff: fe00: 202
RouteSelectionEvents: IP: Route [DestinationPrefix: :: / 0 NextHop: fe80 :: 200: 5eff: fe00: 202 InterfaceIndex: 4 InterfaceMetric: 10 RouteMetric: 256] предпочтительнее
Маршрут [DestinationPrefix: :: / 0 NextHop: fe80 :: 200: 5eff: fe00: 202 InterfaceIndex: 5 InterfaceMetric: 10 RouteMetric: 256] для
Назначение: 2001: 428: 3805: 187 :: 2768 в отсеке: 1, причина: RouteOrder.SourceAddressSelectionEvents: IP: Исходный адрес 2001: 4898: e0: 79: f17c: d212: 8743: 43c2 предпочтительнее fe80 :: f17c: d212: 8743: 43c2 для пункта назначения 2001: 428: 3805: 187 :: 2768 Правило = 2.0.
RouteDiagnostics Успешно: True
Эта команда выполняет диагностику маршрута для достижения удаленного узла с именем www.contoso.com.
Пример 6. Выполнение диагностики маршрута для подключения к удаленному узлу с ограничениями маршрутизации
PS C: \> Test-NetConnection -ComputerName "www.contoso.com "-ConstrainInterface 5 -DiagnoseRouting -InformationLevel" Подробный "
Имя компьютера: www.contoso.com
RemoteAddress: 2600: 1409: a: 185 :: 2768
ConstrainInterfaceIndex: 5
SelectedSourceAddress: 2001: 4898: e0: 79: 75dd: 64cf: d9ff: f86
OutgoingInterfaceIndex: 5
SelectedNetRoute: DestinationPrefix: :: / 0
NextHop: fe80 :: 200: 5eff: fe00: 202
RouteSelectionEvents: IP: Маршрут [DestinationPrefix: :: / 0 NextHop: fe80 :: 200: 5eff: fe00: 202 InterfaceIndex: 4
RouteMetric: 256] заблокирован для Destination: 2600: 1409: a: 185 :: 2768 ConstrainInterfaceIndex: 5 ConstrainScopeZone: 1 в отсеке: 1, причина: InterfaceConstraint.SourceAddressSelectionEvents: IP: Исходный адрес 2001: 4898: e0: 79: 75dd: 64cf: d9ff: f86 предпочтительнее fe80 :: 75dd: 64cf: d9ff: f86 для пункта назначения 2600: 1409: a: 185 :: 2768 Правило = 2.0.
IP: Исходный адрес 2001: 4898: e0: 79: 75dd: 64cf: d9ff: f86 предпочтительнее fe80 :: 75dd: 64cf: d9ff: f86 для пункта назначения 2600: 1409: a: 185 :: 2768 Правило = 2.0.
RouteDiagnostics Успешно: True
Эта команда выполняет диагностику маршрута для достижения удаленного узла с именем www.contoso.com с ограничениями маршрутизации.
Параметры
— Общий порт TCP
Задает номер TCP-порта общей службы.Допустимые значения для этого параметра:
Тип: | Строка |
Допустимые значения: | HTTP, RDP, SMB, WINRM |
Позиция: | 1 |
Значение по умолчанию: | Входное значение по умолчанию: |
Нет ввода : | False |
Принимать подстановочные знаки: | False |
-ComputerName
Задает имя системы доменных имен (DNS) или IP-адрес целевого компьютера.
Тип: | Строка | |
Псевдонимы: | RemoteAddress, cn | |
Позиция: | 0 | |
Значение по умолчанию: | Нет | |
Принимать подстановочные знаки: | Ложь |
-ConstrainInterface
Задает ограничение интерфейса, используемое для диагностики маршрута.
Тип: | UInt32 | ||
Позиция: | Именованный | ||
Значение по умолчанию: | Нет | ||
Принять ввод конвейера: | Ложные | Ложные символы подстановки |
-ConstrainSourceAddress
Задает ограничение адреса источника, используемое для диагностики маршрута.
Тип: | Строка | ||
Позиция: | Именованный | ||
Значение по умолчанию: | Нет | ||
Принять конвейерный ввод: | Ложные | 907 Ложные подстановочные знаки | 907 |
-DiagnoseRouting
Указывает, что диагностика маршрута запускается для вывода информации о выборе маршрута и адреса источника для удаленного хоста.
Тип: | SwitchParameter | |
Позиция: | Именованный | |
Значение по умолчанию: | Нет | |
Принять ввод конвейера: | Ложный | 907 907 Ложный подстановочный знак 907 |
-Хмель
Задает количество переходов, которые необходимо пройти в команде трассировки маршрута.
Тип: | Int32 | ||
Позиция: | Именованный | ||
Значение по умолчанию: | Нет | ||
Принять ввод конвейера: | Ложный | 21 Ложные символы подстановки | 21 |
-Информационный уровень
Определяет информационный уровень.Допустимые значения для этого параметра:
Если установить для этого параметра значение Quiet, командлет возвращает основную информацию. Например, для проверки связи этот командлет возвращает логическое значение, которое указывает, успешна ли попытка проверки связи узла или порта.
Тип: | Строка | ||
Допустимые значения: | Тихо, Подробно | ||
Позиция: | Именованный | ||
Значение по умолчанию: | Нет | Вход | 907 |
Принимать подстановочные знаки: | Ложь |
-Порт
Задает номер порта TCP на удаленном компьютере.Командлет использует этот номер порта для проверки возможности подключения к удаленному компьютеру.
Тип: | Int32 | ||
Псевдонимы: | RemotePort | ||
Позиция: | Имя | ||
Значение по умолчанию: | Нет | 907 907 907 907 907 907 907 907 907Принимать подстановочные знаки: | Ложь |
-TraceRoute
Указывает, что Tracert запускается для проверки возможности подключения к удаленному хосту.
Тип: | SwitchParameter | |
Позиция: | Именованный | |
Значение по умолчанию: | Нет | |
Принять ввод конвейера: | Ложный | 907 907 Ложный подстановочный знак 907 |
Входы
Нет
Выходы
NetRouteDiagnostics
Этот объект отображает информацию диагностики маршрута и возвращается, если вы указали набор параметров NetRouteDiagnostics.