Как определить внешний ip с помощью netstat. Советы по использованию Netstat для администраторов Windows Server

Выпуск WordPress 5.3 улучшает и расширяет представленный в WordPress 5.0 редактор блоков новым блоком, более интуитивным взаимодействием и улучшенной доступностью. Новые функции в редакторе […]

После девяти месяцев разработки доступен мультимедиа-пакет FFmpeg 4.2, включающий набор приложений и коллекцию библиотек для операций над различными мультимедиа-форматами (запись, преобразование и […]

  • Новые функции в Linux Mint 19.2 Cinnamon

    Linux Mint 19.2 является выпуском с долгосрочной поддержкой, который будет поддерживаться до 2023 года. Он поставляется с обновленным программным обеспечением и содержит доработки и множество новых […]

  • Вышел дистрибутив Linux Mint 19.2

    Представлен релиз дистрибутива Linux Mint 19.2, второго обновления ветки Linux Mint 19.x, формируемой на пакетной базе Ubuntu 18.04 LTS и поддерживаемой до 2023 года. Дистрибутив полностью совместим […]

  • Доступны новые сервисные релизы BIND, которые содержат исправления ошибок и улучшения функций. Новые выпуски могут быть скачано со страницы загрузок на сайте разработчика: […]

    Exim – агент передачи сообщений (MTA), разработанный в Кембриджском университете для использования в системах Unix, подключенных к Интернету. Он находится в свободном доступе в соответствии с […]

    После почти двух лет разработки представлен релиз ZFS on Linux 0.8.0, реализации файловой системы ZFS, оформленной в виде модуля для ядра Linux. Работа модуля проверена с ядрами Linux c 2.6.32 по […]

  • В WordPress 5.1.1 устранена уязвимость, позволяющая получить контроль над сайтом
  • Комитет IETF (Internet Engineering Task Force), занимающийся развитием протоколов и архитектуры интернета, завершил формирование RFC для протокола ACME (Automatic Certificate Management Environment) […]

    Некоммерческий удостоверяющий центр Let’s Encrypt, контролируемый сообществом и предоставляющий сертификаты безвозмездно всем желающим, подвёл итоги прошедшего года и рассказал о планах на 2019 год. […]

  • Вышла новая версия Libreoffice – Libreoffice 6.2
  • netstat [-a] [-e] [-n] [-o] [-p протокол] [-r] [-s] [интервал] , где

    Примеры команды NETSTAT

    Пример работы команды Netstat на Windows 10 показан на рисунке выше, утилита работает на всех версиях операционных систем Windows.

    • Для отображения справки по команде введите в командной строке netstat /? ;
    • Для вывода статистики Ethernet и статистики по всем протоколам введите следующую команду: netstat -e -s ;
    • Для вывода статистики только по протоколам TCP и UDP введите следующую команду: netstat -s -p tcp udp ;
    • Для вывода активных подключений TCP и кодов процессов каждые 5 секунд введите следующую команду: netstat -o 5 .

    IPCONFIG - управление сетевыми интерфейсами – Самалхан А.

    Команда IPCONFIG - отображение параметров TCP/IP

    Команда IPCONFIG служит для управления сетевыми интерфейсами и отображения всех текущих параметров сети TCP/IP, а также обновления параметров DHCP и DNS в операционных системах Windows. При вызове команды ipconfig без параметров выводится только IP-адрес, маска подсети и основной шлюз для каждого сетевого адаптера. А для проверки соединений в TCP/IP сетях используется команда Ping.



    Параметры утилиты IPCONFIG

    ipconfig ] ] ] , где

    • /all - Вывод полной конфигурации TCP/IP для всех адаптеров. Без этого параметра команда ipconfig выводит только IP-адреса, маску подсети и основной шлюз для каждого адаптера. Адаптеры могут представлять собой физические интерфейсы, такие как установленные сетевые адаптеры, или логические интерфейсы, такие как подключения удаленного доступа.
    • /renew [адаптер] - Обновление конфигурации DHCP для всех адаптеров (если адаптер не задан) или для заданного адаптера. Данный параметр доступен только на компьютерах с адаптерами, настроенными для автоматического получения IP-адресов. Чтобы указать адаптер, введите без параметров имя, выводимое командой ipconfig.
    • /release [адаптер] - Отправка сообщения DHCPRELEASE серверу DHCP для освобождения текущей конфигурации DHCP и удаление конфигурации IP-адресов для всех адаптеров (если адаптер не задан) или для заданного адаптера. Этот адаптер отключает протокол TCP/IP для адаптеров, настроенных для автоматического получения IP-адресов. Чтобы указать адаптер, введите без параметров имя, выводимое командой ipconfig.
    • /flushdns - Сброс и очистка содержимого кэша сопоставления имен DNS клиента. Во время устранения неполадок DNS эту процедуру используют для удаления из кэша записей отрицательных попыток сопоставления и других динамически добавляемых записей.
    • /displaydns - Отображение содержимого кэша сопоставления имен DNS клиента, включающего записи, предварительно загруженные из локального файла Hosts, а также последние полученные записи ресурсов для запросов на сопоставление имен. Эта информация используется службой DNS клиента для быстрого сопоставления часто встречаемых имен без обращения к указанным в конфигурации DNS-серверам.
    • /registerdns - Динамическая регистрация вручную имен DNS и IP-адресов, настроенных на компьютере. Этот параметр полезен при устранении неполадок в случае отказа в регистрации имени DNS или при выяснении причин неполадок динамического обновления между клиентом и DNS-сервером без перезагрузки клиента. Имена, зарегистрированные в DNS, определяются параметрами DNS в дополнительных свойствах протокола TCP/IP.
    • /showclassid адаптер - Отображение кода класса DHCP для указанного адаптера. Чтобы просмотреть код класса DHCP для всех адаптеров, вместо параметра адаптер укажите звездочку (*). Данный параметр доступен только на компьютерах с адаптерами, настроенными для автоматического получения IP-адресов.
    • /setclassid адаптер [код_класса] - Задание кода класса DHCP для указанного адаптера. Чтобы задать код класса DHCP для всех адаптеров, вместо параметра адаптер укажите звездочку (*). Данный параметр доступен только на компьютерах с адаптерами, настроенными для автоматического получения IP-адресов. Если код класса DHCP не задан, текущий код класса удаляется.

    Примеры команды IPCONFIG

    • Чтобы вывести основную конфигурацию TCP/IP для всех адаптеров, введите: ipconfig
    • Чтобы вывести полную конфигурацию TCP/IP для всех адаптеров, введите: ipconfig /all
    • Чтобы обновить конфигурацию IP-адреса, назначенного DHCP-сервером, только для адаптера "Подключение по локальной сети", введите: ipconfig /renew "Подключение по локальной сети"
    • Чтобы сбросить кэш сопоставления имен DNS при наличии неполадок в сопоставлении имен, введите: ipconfig /flushdns
    • Чтобы вывести код класса DHCP для всех адаптеров с именами, начинающимися со слова "Подключение", введите: ipconfig /showclassid "Подключение"
    • Чтобы задать код класса DHCP TEST для адаптера Подключение по локальной сети, введите: ipconfig /setclassid "Подключение по локальной сети" TEST

    TRACERT - определение маршрута прохождения пакетов ICMP - Мерей

    Описание команды TRACERT

    Команда TRACERT выполняет трассировку до точки назначения с помощью посылки адресату эхо-сообщений. Посылка осуществляется по протоколу Control Message Protocol (ICMP) с постоянным увеличением значений срока жизни пакетов (Time to Live, TTL).

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

    Для проверки сети также можно воспользоваться командами:

    • PING - основная TCP/IP-команда, используемая для устранения неполадки в соединении, проверки возможности доступа и разрешения имен;
    • PATHPING - предоставляет информацию о латентности сети и потерях данных на промежуточных узлах.

    Лабораторная работа № 03-005

    Сетевая утилита netstat. Принципы работы и использование.

    Утилита отображает активные и прослушиваемые порты TCP, статистики Ethernet, таблицы маршрутизации IP, статистики IPv4 (для протоколов IP, ICMP, TCP и UDP) и IPv6 (для протоколов IPv6, ICMPv6, TCP через IPv6 и UDP через IPv6). Запущенная без параметров, команда netstat отображает активные подключения TCP.

    Синтаксис:

    netstat [-a ] [-e ] [-n ] [-o ] [-p протокол ] [-r ] [-s ] [интервал ].

    Параметры:

    -a вывод всех активных подключений TCP и прослушиваемых компьютером портов TCP и UDP;

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

    -e вывод статистики Ethernet, например количества отправленных и принятых байтов и пакетов. Этот параметр может комбинироваться с ключом -s ;

    -n вывод активных подключений TCP с отображением адресов и номеров портов в числовом формате без попыток определения имен;

    -o вывод активных подключений TCP и включение кода процесса (PID) для каждого подключения. Код процесса позволяет найти приложение на вкладке Процессы диспетчера задач Windows. Этот параметр может комбинироваться с ключами -a , -n и -p ;

    -p протокол вывод подключений для протокола, указанного параметром протокол . В этом случае параметр протокол может принимать значения tcp , udp , tcpv6 или udpv6 . Если данный параметр используется с ключом -s для вывода статистики по протоколу, параметр протокол может иметь значение tcp , udp , icmp , ip , tcpv6 , udpv6 , icmpv6 или ipv6 ;

    -r вывод содержимого таблицы маршрутизации IP. Эта команда эквивалентна команде route print ;

    -s вывод статистики по протоколу. По умолчанию выводится статистика для протоколов TCP, UDP, ICMP и IP. Если установлен протокол IPv6 для Windows XP, отображается статистика для протоколов TCP через IPv6, UDP через IPv6, ICMPv6 и IPv6. Параметр -p может использоваться для указания набора протоколов;

    - v используется вместе с параметром b для отображения последовательности программных компонент, участвующих в создании сокета

    интервал задаёт обновление выбранных данных с интервалом, определенным параметром интервал (в секундах). Нажатие клавиш CTRL+C останавливает обновление. Если этот параметр пропущен, netstat выводит выбранные данные только один раз.

    /? о тображение справки в командной строке.

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

    Обслуживание коммуникационных потребностей прикладных процессов осуществляет транспортный уровень стека протоколов, реализуемый программно в ядре операционной системы, в виде отдельного пользовательского процесса или в форме библиотечного модуля, загружаемого сетевым приложением. Пакеты, поступающие на транспортный уровень, организуются операционной системой в виде множества очередей к точкам входа различных прикладных процессов. В терминологии TCP/IP такие системные очереди называются портами . Порт - это программное понятие, которое используется клиентом или сервером для посылки или приема сообщений; порт идентифицируется 16-битовым числом. Таким образом, адресом назначения, который используется транспортным объектом, является идентификатор (номер) порта прикладной службы. Номер порта в совокупности с номером сети и номером конечного узла однозначно определяют прикладной процесс в сети. Этот набор идентифицирующих параметров имеет название сокет (socket) .

    Назначение номеров портов прикладным процессам осуществляется либо централизованно , если эти процессы представляют собой популярные общедоступные службы (например, номер 21 закреплен за службой удаленного доступа к файлам FTP, a 23 - за службой удаленного управления telnet), либо локально для тех служб, которые еще не стали столь распространенными, чтобы закреплять за ними стандартные (зарезервированные) номера. Централизованное присвоение службам номеров портов выполняется организацией Internet Assigned Numbers Authority (IANA) . Эти номера затем закрепляются и опубликовываются в стандартах Internet .

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

    Инициирующий соединение клиент, прежде чем пытаться установить соединение с удаленным сервером-приложением, запрашивает у своей ОС номер свободного порта. Порты с номерами 0 -1023 принято называть привилегированными, они практически все зарезервированы и не выделяются клиентским процессам. Это не означает, что не существует закрепленных номеров портов с большими номерами, но они используются гораздо реже и будучи свободными на данном хосте, вполне могут предоставляться в распоряжение программы-клиента.

    UDP (User Datagramm Protocol) простой, ориентированный на передачу датаграмм, протокол транспортного уровня: за один раз процесс выдает одну UDP датаграмму, в результате чего передается одна IP датаграмма. Протокол не устанавливает соединения и не подтверждает отправителю факта доставки сообщения.

    TCP (Transmission Control Protocol) предоставляет основанный на соединении надежный сервис потока байтов. Он применяется в тех случаях, когда требуется гарантированная доставка сообщений. Он использует контрольные суммы пакетов для проверки их целостности и освобождает прикладные процессы от необходимости таймаутов и повторных передач для обеспечения надежности.

    Термин "основанный на соединении" (connection-oriented) означает, что два приложения, использующие TCP (как правило, это клиент и сервер), должны установить TCP соединение друг с другом, после чего у них появляется возможность обмениваться данными.

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

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

    лены в виде модели, имеющей 11 возможных состояний:

    Состояние Описание

    CLOSED Закрыто. Соединение не является активным и не находится в процессе установки

    LISTEN Ожидание. Сервер ожидает входящего запроса

    SYN RCVD Прибыл запрос соединения. Ожидание подтверждения

    SYN SENT Запрос соединения послан. Приложение начало открывать соединение

    ESTABLISHED Установлено. Нормальное состояние передачи данных

    FINWAIT 1 Приложение сообщило, что ему больше нечего передавать

    FINWAIT 2 Другая сторона согласна разорвать соединение

    TIMED WAIT Ожидание, пока в сети не исчезнут все пакеты

    CLOSING Обе стороны попытались одновременно закрыть соединение

    CLOSE WAIT Другая сторона инициировала разъединение

    LAST АСК Ожидание, пока в сети не исчезнут все пакеты

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

    Каждое соединение начинается в состоянии CLOSED (закрытое). Оно может выйти из этого состояния, предпринимая либо активную (CONNECT), либо пассивную (LISTEN) попытку открыть соединение. Если противоположная сторона осуществляет противоположные действия, соединение устанавливается и переходит в состояние ESTABLISHED. Инициатором разрыва соединения может выступить любая сторона. По завершении процесса разъединения соединение возвращается в состояние CLOSED.

    Вопросы для самопроверки

      Порт как элемент адресации транспортного уровня. Сокет.

      Локально и централизованно назначаемые порты.

      Основные протоколы транспортного уровня стека TCP/IP. Их краткая характеристика.

      Сопоставление сетевых подключений с процессами, функционирующими на компьютере.

      Параметры утилиты netstat.

    Необходимое оборудование

    IBM PC - совместимая ЭВМ с лицензионной операционной системой Windows, подключение к локальной сети, выход в интернет.

    Задания

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

    1. Воспользовавшись командой netstat просмотрите статистику работы Ethernet - подключения.

    2. Воспользовавшись командой netstat просмотрите статистику работы сетевых протоколов.

    3. Воспользовавшись командой netstat просмотрите статистику работы протокола ICMP (в выводе должны присутствовать данные только по этому протоколу).

    4. Командой netstat просмотрите список всех подключений TCP и прослушиваемых портов UDP.

    5. Запустите браузер и установите соединение с любым сайтом. Повторите предыдущее задания и прокомментируйте результат.

    6. С помощью команды netstat определите любые 5 процессов, прослушивающих UDP порты. Укажите наименование процессов и номера прослушиваемых портов.

    6. С помощью команды netstat определите активные TCP – подключения, номера их портов и имена исполняемых файлов приложений, использующих эти подключения.

    Отчет о выполнении работы представьте в печатной или электронной форме с представлением копий экранов работы утилиты.

    Полезная команда и утилита одновременно, которая называется netstat, позволяет просматривать информацию о соединениях системы по протоколам UDP и TCP.

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

    • Название протокола (TCP или UDP)
    • Локальный адрес IP и номер порта, которые используются соединением через сокет
    • Удаленный адрес IP (адрес назначения) и номер порта, который используется соединением через сокет
    • Состояние соединения (Ожидающее (Listening) ), Установленное (Established) ) и т.д.)

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

    1. При попытке установить соединение клиент отправляет сообщение SYN серверу.

    2. Сервер отвечает собственным сообщением SYN и подтверждением (ACK).

    3. После этого клиент отправляет сообщение ACK обратно на сервер, завершая процесс установки соединения.

    Процесс разрыва соединения состоит из следующих этапов:

    1. Клиент сообщает "Я закончил", отправляя сообщение FIN серверу. На этом этапе клиент только принимает данные от сервера, но сам ничего не отправляет.

    2. После этого сервер отправляет сообщение ACK и отправляет собственное сообщение FIN клиенту.

    3. После этого клиент отправляет сообщение ACK серверу, подтверждая запрос сервера FIN.

    4. При получении сообщения ACK от клиента сервер закрывает соединение.

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

    • CLOSE_WAIT - указывает на пассивную фазу закрытия соединения, которая начинается после получения сервером сообщения FIN от клиента.
    • CLOSED - соединение прервано и закрыто сервером.
    • ESTABLISHED - клиент установил соединение с сервером, получив от сервера сообщение SYN.
    • FIN_WAIT_1 - клиент инициировал закрытие соединения (отправил сообщение FIN).
    • FIN_WAIT_2 - клиент получил сообщения ACK и FIN от сервера.
    • LAST_ACK - сервер отправил сообщение FIN клиенту.
    • LISTEN - сервер готов принимать входящие соединения.
    • SYN_RECEIVED - сервер получил сообщение SYN от клиента и отправил ему ответ.
    • TIMED_WAIT - клиент отправил сообщение FIN серверу и ожидает ответа на это сообщение.
    • YN_SEND - указанное соединение активно и открыто.

    Теперь все, что необходимо знать о команде netstat, это синтаксис ее вызова:

    Netstat [-a] [-e] [-n] [-o] [-p <протокол>] [-r] [-s] [интервал]

    Параметры команды netstat

    Параметр

    Использование

    Отображает все соединения и ожидающие порты

    Отображает статистику Ethernet

    Показывает адреса и порты в цифровом формате (адреса IP вместо имен интерфейсов

    Отображает идентификатор процесса-владельца для каждого соединения

    P <протокол>

    Показывает соединения для указанного протокола. Можно выбрать один из таких протоколов: TCP, TCPv6, UDP и UDPv6. При указании параметра -s можно указывать IP, IPv6, ICMP и ICMPv6.

    Отображает таблицу маршрутизации системы

    Отображает статистику для каждого протокола в отдельности; по умолчанию статистика отображается для протоколов TCP, TCPv6, UDP и UDPv6, IP, IPv6, ICMP и ICMPv6. Подмножество протоколов может быть указано с помощью параметра -p.

    интервал

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

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

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

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

    Полностью определенное имя домена. Параметр -f позволяет узнать FQDN для внешнего адреса. При использовании netstat с этим параметром имена разрешаются как во внутренней, так и во внешней сети. На рис. A показан вывод команды.

    Рисунок A

    Какой процесс использует тот или иной порт. Сочетание параметров -a -n -o позволяет выяснить, какому идентификатору процесса (PID) соответствует тот или иной порт. (См. ) Вывод команды показан на рис. B.


    Рисунок B

    А если добавить к этой комбинации параметр -b, для каждого процесса будут использоваться дружественные имена, как показано на рис. C. Правда, для этого потребуются права администратора.


    Рисунок C

    Обратите внимание: удаленные адреса, указывающие на 192.168.1.220:3261, принадлежат службе инициатора Windows iSCSI и обозначаются иначе, чем адреса остальных служб.

    Вывод таблицы маршрутизации. Когда нужно выяснить, почему на одном компьютере сетевое соединение работает иначе, чем на других в той же сети, можно использовать параметр -r, который выводит маршрут для данной системы, как показано на рис. D. Обратите внимание на раздел «Постоянные маршруты» (Persistent routes): в нем указываются все статические маршруты, настроенные для Windows Server).


    Рисунок D

    Эти четыре вариации команды netstat существенно облегчают