Skip to content

net-utility

Утилиты для анализа сети

nmap

Утилита nmap (Network Mapper) - это утилита для сканирования сети и анализа безопасности. Она позволяет проверять доступные хосты, обнаруживать открытые порты, определять службы, запущенные на хостах, а также выполнять другие сетевые операции, такие как определение операционной системы и анализ сетевого трафика.

nmap
# Сканирование открытых портов на конкретном хосте:
nmap <адрес_хоста>

# Сканирование определенного диапазона портов на хосте:
nmap -p <диапазон_портов> <адрес_хоста>

# Сканирование хостов в заданном диапазоне IP-адресов:
nmap <диапазон_IP-адресов>

# Определение операционной системы на удаленном хосте:
nmap -O <адрес_хоста>

# Сканирование всех хостов в сети:
nmap <адрес_сети/подсети>

curl

Утилита curl — это командная строковая утилита, которая используется для взаимодействия с различными сетевыми протоколами. Она позволяет отправлять HTTP-запросы, загружать и выгружать файлы, устанавливать соединения по протоколам FTP, SMTP, POP3, IMAP и многим другим.

curl
# Получение содержимого веб-страницы:
curl <URL_веб-страницы>

# Сохранение содержимого веб-страницы в файл:
curl -o <имя_файла> <URL_веб-страницы>

# Отправка POST-запроса на сервер:
curl -X POST -d "param1=value1&param2=value2" <URL_сервера>
curl -X POST -d "username=user&password=pass" https://api.example.com/login

# Отправка запроса PUT для загрузки файла на веб-сервер:
curl -X PUT --upload-file localfile.txt https://www.example.com/upload

# Установка заголовка запроса:
curl -H "HeaderName: HeaderValue" <URL_веб-ресурса>
curl -H "Authorization: Bearer token" https://api.example.com/data

# Отправка запроса HEAD для получения заголовков страницы:
curl -I https://www.example.com

# Загрузка файла с использованием авторизации:
curl -u username:password -O https://www.example.com/secure/file.txt

# Отправка запроса с использованием прокси-сервера:
curl -x proxy.server.com:8080 https://www.example.com

# Перенаправление вывода в файл:
curl <URL_веб-страницы> > output.html

HTTPie

Утилита HTTPie - это командная строковая утилита, предназначенная для отправки HTTP-запросов и взаимодействия с веб-серверами. Она является альтернативой для утилиты curl, но предоставляет более простой и интуитивно понятный синтаксис.

Ниже приведены некоторые основные функции и возможности утилиты HTTPie:

  • Отправка HTTP-запросов: HTTPie позволяет отправлять HTTP-запросы на указанные URL-адреса. Вы можете указывать различные методы запроса (например, GET, POST, PUT, DELETE) с помощью понятного синтаксиса.
  • Читабельный вывод: HTTPie предоставляет читабельный вывод HTTP-ответов. Он форматирует и выводит ответы в удобочитаемом формате, с подсветкой синтаксиса и структурированным представлением заголовков и содержимого.
  • Настройка заголовков и данных запроса: HTTPie позволяет легко настраивать заголовки запроса, добавлять пользовательские заголовки и отправлять данные формы. Он также поддерживает форматы данных, такие как JSON и XML.
  • Аутентификация: HTTPie поддерживает различные методы аутентификации, включая базовую аутентификацию и аутентификацию с помощью токенов или ключей. Вы можете указать учетные данные для аутентификации в запросах.
  • Удобный синтаксис: HTTPie предоставляет простой и интуитивно понятный синтаксис, который легко читается и понимается. Это делает его более доступным для новичков и обеспечивает удобство использования.
  • Расширенные возможности: HTTPie имеет дополнительные возможности, такие как сессии, возможность отправки потокового контента, длительные запросы (long-polling) и другие.
HTTPie
#синтаксис для использования httpie:
http [options] [METHOD] URL [ITEM [ITEM]]

# Основное использование httpie — предоставить URL в качестве аргумента:
http example.com

# Отправка метода HTTP
http GET devops-docs.akulovs.ru

Ping

Ping - это утилита сетевой диагностики, которая используется для проверки доступности узлов (хостов) в компьютерных сетях и измерения задержки (задержки времени) в сети. При выполнении команды ping, устройство отправляет специальные ICMP (Internet Control Message Protocol) эхо-запросы (ICMP Echo Request) на указанный хост и ожидает ответных ICMP эхо-ответов (ICMP Echo Reply).

Вот как работает процесс ping:

  • Утилита ping отправляет ICMP эхо-запрос на указанный хост, указывая его IP-адрес в пакете запроса. Пакет содержит также другую информацию, включая идентификатор пакета и временную метку.
  • Хост-получатель получает ICMP эхо-запрос и обрабатывает его. Затем хост-получатель формирует ICMP эхо-ответ и отправляет его обратно на устройство-отправитель.
  • Устройство-отправитель получает ICMP эхо-ответ и измеряет время, прошедшее с момента отправки запроса до получения ответа. Это время измеряется как задержка или пинг (ping) и отображается в виде времени отклика (round-trip time, RTT).
  • Утилита ping выводит результаты теста в командной строке, показывая статус доступности хоста и временной отклик в миллисекундах. Если хост доступен и отвечает на запросы, результаты покажут низкую задержку времени отклика. Если хост недоступен или не отвечает, результаты будут отражать ошибку "Host Unreachable" или "Request Timed Out".
ping
# Проверка доступности хоста:
ping google.com

# Отправить определенное количество пакетов:
ping -c 10 example.com

# Ping всех устройств в указанной подсети
ping -b -c 4 192.168.1.255

traceroute

Traceroute - это утилита сетевой диагностики, которая позволяет отслеживать маршрут, который пакеты данных проходят от отправителя к указанному хосту или IP-адресу в сети. Она помогает определить промежуточные узлы (маршрутизаторы) и время, требуемое для доставки пакетов до каждого из них.

Traceroute работает путем отправки серии пакетов данных с постепенным увеличением значения TTL в заголовке IP-пакета. Каждый промежуточный маршрутизатор, через который проходит пакет, уменьшает значение TTL на 1 и при достижении нуля отбрасывает пакет и отправляет обратное сообщение (ICMP Time Exceeded) обратно отправителю. Таким образом, можно проследить путь до конечного пункта и измерить время отклика от каждого узла.

При использовании утилиты traceroute вы увидите список промежуточных узлов, через которые проходят пакеты данных, а также время задержки (ping) до каждого узла. Это позволяет определить, какие узлы находятся на пути следования пакетов и где возможно возникают задержки или проблемы.

traceroute
# Основная команда:
traceroute google.com

# Отключение разрешения IP в имена узлов:
traceroute -n example.com

# Указание максимального количества «прыжков»:
traceroute -m 30 google.com

dig

Утилита dig (Domain Information Groper) является командной строковой утилитой для выполнения запросов к DNS-серверам. Она предоставляет информацию о доменных именах, записях DNS и других связанных данных.

# Получение информации о домене
dig google.com

# Для получения только основных данных используйте запрос с флагом +short
dig google.com +short

# Запрос MX-записи
dig ya.ru  MX +noall +answe

# Запрос NS-записи
dig ya.ru NS +noall +answer

# Использование определённого DNS-сервера
dig @8.8.8.8 google.com +noall +answer