Какие команды можно использовать для диагностики сети (Windows и Linux)?
Примечание: Диагностика сети — одна из ключевых задач системного администратора. От корректной работы сети зависит доступность сервисов, стабильность приложений и взаимодействие пользователей. Для проверки соединений и выявления проблем в Windows и Linux есть набор стандартных утилит, которые позволяют понять, где именно возникает сбой — на стороне клиента, в сети или на удаленном узле.
Ping
Windows и Linux: команда ping проверяет доступность хоста и измеряет задержку. Она отправляет ICMP-запросы и показывает время ответа. В Windows по умолчанию отправляется 4 пакета, в Linux — до остановки пользователем.
Используется для проверки:
-
Достижимости IP-адреса или доменного имени.
-
Задержек в сети.
-
Потерь пакетов.
Traceroute и Tracert
Linux: команда traceroute.
Windows: команда tracert.
Эти утилиты показывают путь, по которому пакеты проходят до указанного хоста, и отображают все промежуточные маршрутизаторы. Это помогает определить, на каком участке маршрута возникают задержки или обрывы соединения.
Nslookup и Dig
Windows: nslookup.
Linux: nslookup и более расширенная утилита dig.
Команды используются для диагностики DNS. С их помощью можно:
-
Узнать IP-адрес по доменному имени.
-
Проверить работу DNS-сервера.
-
Просмотреть записи разных типов (A, MX, TXT и др.).
Netstat
Windows и Linux: netstat.
Команда отображает сетевые подключения, порты и используемые процессы. Она полезна для диагностики:
-
Открытых портов.
-
Подключений к конкретным хостам.
-
Активных сервисов на сервере.
В Linux также часто используется более современная утилита ss, которая дает аналогичную информацию быстрее.
Ipconfig и Ifconfig / Ip
Windows: ipconfig.
Linux: ifconfig (устаревшая) или современная ip addr, ip route.
Эти команды позволяют просматривать и настраивать сетевые интерфейсы. С их помощью можно проверить:
-
Текущие IP-адреса и маски подсети.
-
Адреса шлюзов и DNS-серверов.
-
Корректность сетевых маршрутов.
ARP
Windows и Linux: arp.
Команда показывает таблицу сопоставлений IP-адресов и MAC-адресов в локальной сети. Используется для диагностики проблем уровня канала, например, когда IP-адрес конфликтует или устройство не отвечает на запросы.
Telnet и Nc (Netcat)
Windows: telnet (нужно включать дополнительно).
Linux: nc (netcat).
С их помощью можно проверить доступность определенных портов на удаленном сервере, например, telnet host 80 или nc -zv host 443. Это помогает диагностировать, открыт ли порт и отвечает ли сервис.
Pathping
Windows: pathping.
Это комбинация ping и tracert. Утилита показывает как маршрут до узла, так и статистику потерь пакетов на каждом промежуточном участке. Полезна для более глубокой диагностики соединения.
Mtr
Linux: mtr.
Это интерактивная утилита, объединяющая возможности ping и traceroute. Она в реальном времени показывает маршрут до узла и задержки на каждом промежуточном хопе. Это удобный инструмент для анализа нестабильных соединений.
Curl и Wget
Linux и Windows (в новых версиях): curl, а также в Linux — wget.
Эти инструменты позволяют протестировать доступность веб-сервисов, проверить корректность HTTP-запросов и заголовков. Особенно полезны при диагностике проблем с веб-приложениями.
Tcpdump и Wireshark
Linux: tcpdump.
Windows и Linux: Wireshark.
Эти инструменты относятся к более продвинутым средствам диагностики. Они позволяют перехватывать и анализировать сетевой трафик на разных уровнях, что дает возможность детально разбирать проблемы протоколов и взаимодействия приложений.