Если вы когда-нибудь пытались заставить компьютер общаться с сервером или понять, почему интернет вдруг стал ленивым, то эта статья — для вас. Мы разберём, что такое порты и почему их надо проверять, как проверить открытые порты с помощью Telnet, разберёмся с хитростями команд ping и traceroute, освоим мощную утилиту MTR, а в конце расскажем, как заглянуть в журналы сайтов и что там искать. Ну и, конечно, раскроем секреты netstat — волшебной утилиты для сетевого сыщика.

Порт: дверь в мир приложений и сетевого общения

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

Порт — это число от 0 до 65 535, которое помогает устройству различать разные приложения, работающие одновременно. Например, веб-сервер обычно слушает порт 80 (HTTP), а почтовый — 25 (SMTP).

Термин Значение
Порт Числовой идентификатор (0–65535)
IP-адрес Уникальный адрес устройства в сети

Открытие порта — это как открыть дверь магазина для покупателей. Если дверь закрыта, подключиться не получится.

Проверяем порт с помощью Telnet: просто и быстро

Telnet — утилита для проверки, открыт ли порт на сервере. Она пытается установить соединение с нужным портом, и если дверь открыта — соединение установится, если закрыта — получите ошибку.

Как использовать Telnet в Windows и Linux

  • Запустите терминал (командную строку).
  • Введите команду:
telnet <IP-адрес или имя сервера> <номер порта>
  • Если экран становится пустым или видите приглашение сервера — порт открыт.
  • Если получаете ошибку — порт закрыт.

В Windows 7/8/10 Telnet может быть отключён по умолчанию. Его нужно установить через "Включение или отключение компонентов Windows".

Пример:

telnet 192.168.1.10 80

Если подключение прошло — ваш веб-сервер на порту 80 доступен!

Ping и Traceroute: проверяем живость узла и маршрут

Ping — это как крик в лес: "Ты тут?"

Ping отправляет специальный запрос (ICMP Echo Request) и ждёт ответа (Echo Reply). Если ответ приходит — узел жив и доступен.

ping example.com

Результат покажет, сколько пакетов отправлено и получено, а также задержку (время в миллисекундах).

Traceroute — это как карта путешествия вашего пакета

Traceroute показывает путь, по которому идут данные от вашего компьютера до сервера. Он перечисляет все "переходные станции" — маршрутизаторы.

tracert example.com  # в Windows
traceroute example.com  # в Linux/macOS

Это помогает понять, где именно "зависает" сеть или теряются пакеты.

MTR: лучший друг сетевого администратора

MTR — это гибрид ping и traceroute. Он отправляет запросы к серверу и показывает одновременно маршрут и статистику потерь пакетов и задержек.

Преимущества MTR:

  • Показывает процент потерь на каждом узле пути
  • Считает среднее, минимальное и максимальное время задержки
  • Обновляет результаты в реальном времени

Установка и запуск:

ОС Команда установки Команда запуска
Ubuntu sudo apt install mtr mtr -n -c 300 <IP или домен>
CentOS sudo yum install mtr mtr -n -c 300 <IP или домен>
Fedora sudo dnf install mtr mtr -n -c 300 <IP или домен>
macOS brew install mtr sudo /usr/local/sbin/mtr <домен>

Опция -n отключает разрешение имён для ускорения, -c 300 — количество отправленных пакетов.

Что значат столбцы результата:

Колонка Описание
Host IP или домен узла
Loss % Процент потерянных пакетов
Sent Отправленные пакеты
Last Задержка последнего пакета (мс)
Avg Среднее время задержки (мс)
Best Минимальное время задержки (мс)
Wrst Максимальное время задержки (мс)
StDev Среднеквадратичное отклонение задержки (мс)

Если видите высокий процент потерь на конечном узле — пора звонить провайдеру.

Netstat — сетевой детектив под капотом

Netstat — мощная команда, которая показывает состояние сетевых соединений, открытые порты, статистику протоколов и процессы, которые используют эти соединения.

Основные параметры netstat:

Параметр Описание
-a Показывает все активные соединения и порты, которые слушает компьютер
-b Показывает исполняемый файл, связанный с каждым соединением (требуются права администратора)
-e Показывает статистику Ethernet (байты, пакеты)
-n Показывает IP-адреса и номера портов в числовом виде, без попытки определения имён
-o Показывает идентификаторы процессов (PID), связанных с соединениями
-p Фильтр по протоколу (tcp, udp, tcpv6, udpv6 и др.)
-r Отображает таблицу маршрутизации IP
-s Показывает статистику по протоколам (TCP, UDP, ICMP и др.)
интервал Позволяет обновлять вывод каждые N секунд

Пример полезных команд:

  • Показать все слушающие порты:
netstat -a | find /i "listening"
  • Показать активные TCP-подключения с PID:
netstat -o -n
  • Показать статистику протоколов TCP и UDP:
netstat -s -p tcp udp
  • Отобразить таблицу маршрутизации:
netstat -r

Что показывают колонки в netstat:

Колонка Значение
Proto Протокол (TCP, UDP)
Local Address Локальный IP и порт
Foreign Address Внешний IP и порт, с которым установлено соединение
State Состояние TCP-соединения (ESTABLISHED, LISTENING, CLOSE_WAIT и др.)

Как читать состояние TCP:

  • ESTABLISHED — соединение активно
  • LISTENING — порт ждёт входящие подключения
  • TIME_WAIT — соединение ожидает завершения
  • CLOSE_WAIT — ожидание закрытия соединения

Почему netstat — незаменимая утилита?

Она позволяет понять, какие программы "разговаривают" с сетью, проверить открытые порты и отследить подозрительную активность. Как будто у вас есть рентгеновский взгляд на все сетевые операции!

Просмотр журналов сайтов: как и зачем

Журналы (логи) — это дневники работы сайта и сервера, где записаны все запросы, ошибки и другая важная информация. Они находятся в папке logs на сервере.

Где искать логи:

  • В панели управления хостингом (раздел "Менеджер файлов" → папка logs)
  • Через FTP или SSH, зайдя в директорию logs

Как просмотреть:

  1. Скачайте нужный файл журнала на компьютер.
  2. Откройте его в текстовом редакторе.
  3. Анализируйте ошибки, запросы и прочие события.

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


Часто задаваемые вопросы (FAQ)

Как узнать, открыт ли порт 80 на сервере?
Используйте команду telnet <IP> 80. Если подключение установлено — порт открыт.

Что делать, если ping не проходит, но сайт работает?
Некоторые серверы блокируют ICMP-пакеты для безопасности, но HTTP трафик идёт нормально. Используйте traceroute или MTR для диагностики.

Почему netstat показывает много соединений с разными портами?
Это нормально. Разные приложения и сервисы используют порты для разных задач. Обратите внимание на состояние и PID, чтобы понять, что за программа.

Можно ли использовать MTR в Windows?
Да, существует версия WinMTR, которую можно скачать и запустить с правами администратора.

Что значит высокая задержка в ping или MTR?
Это может указывать на проблемы в сети или слишком большой физический путь между узлами.


Чек-лист для быстрой диагностики сети

  • [ ] Проверить, открыт ли нужный порт с помощью Telnet
  • [ ] Выполнить ping для проверки доступности сервера
  • [ ] Запустить traceroute, чтобы найти проблемные узлы на пути
  • [ ] Использовать MTR для детального анализа потерь и задержек
  • [ ] Запустить netstat, чтобы увидеть активные соединения и слушающие порты
  • [ ] Просмотреть логи сайта на наличие ошибок или подозрительной активности

В итоге, освоив эти инструменты и команды, вы станете настоящим сетевым сыщиком. И помните: даже если сеть кажется запутанной, у вас всегда есть правильные команды, чтобы заглянуть за кулисы и понять, что происходит на самом деле! А с таким арсеналом и компьютер скажет вам: "Всё под контролем!"