NetworkTest: различия между версиями

Материал из ALT Linux Wiki
 
(не показана 1 промежуточная версия этого же участника)
Строка 196: Строка 196:
====Проверка трафика HTTP с заданного IP-адреса====
====Проверка трафика HTTP с заданного IP-адреса====


Чтобы осуществить проверку, добавим в фильтр для отслеживания HTTP-трафика между локальным компьютером и 192.168.0.10 параметр ip.src:
Чтобы осуществить проверку, добавим в фильтр для отслеживания HTTP-трафика между локальным компьютером и 192.168.0.1 параметр ip.src:


{{cmd|<nowiki>ip.src==192.168.0.1&&</nowiki>}}
{{cmd|<nowiki>ip.src==192.168.0.1&&</nowiki>}}


[[File:Wireshark_start2.png]]  
[[File:Wireshark_start2.png]]


====Проверка HTTP-трафика на заданный IP-адрес====
====Проверка HTTP-трафика на заданный IP-адрес====


Этот пункт тесно связан с советом №2. Но в этом случае мы будем использовать параметр ip.dst как часть фильтра захвата:
Этот пункт тесно связан с советом №2. Но в этом случае мы будем использовать параметр ip.dst как часть фильтра захвата:


{{cmd|<nowiki>ip.dst==192.168.0.108&&http</nowiki>}}
{{cmd|<nowiki>ip.dst==192.168.0.108&&http</nowiki>}}
Строка 212: Строка 211:


Объединяя советы №2 и №3, Вы можете использовать ip.addr в правиле фильтрации вместо ip.src или ip.dst.
Объединяя советы №2 и №3, Вы можете использовать ip.addr в правиле фильтрации вместо ip.src или ip.dst.
====Мониторинг трафика Apache и MySQL в сети====
====Мониторинг трафика Apache и MySQL в сети====



Текущая версия от 23:26, 15 ноября 2023

Примечание: Обратите внимание, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.

Тестирование и мониторинг сети

Проверка доступности хоста

ping 192.168.0.1

Определение маршрута сетевых пакетов

tracepath ya.ru
tracepath 8.8.8.8

или

traceroute ya.ru
traceroute 8.8.8.8

Клиент-серверное определение скорости сети

На сервере и на клиенте установите утилиту iPerf:

# apt-get install iperf

Чтобы проверить скорость от клиента до сервера, выполните следующее:

  1. Запустите iperf на сервере с ключом -s
    $ iperf -s
  2. Запустите iperf на клиенте с ключом -c и указанием адреса:
    $ iperf -c 192.168.0.12
  3. На сервере и на клиенте отобразятся максимальные скорость отправки и получения

Параметры

Общие

Параметр сокращенно Параметр подробно Назначение
1 -p # --port # # - порт, на котором будут работать сервер и клиент (по-умолчанию 5201)
2 -f --format формат скорости в результатах теста: k (Кбит), K (Кбайт), m (Мбит), M (Мбайт), g (Гбит), G (Гбайт)
3 -i # --interval # интервал между выводом результата тестирования, в секундах

Сервер

Параметр сокращенно Параметр подробно Назначение
1 -s --server запуск сервера c отображением информации на экране
2 -D --daemon запуск сервера в фоновом режиме в виде службы, будет оставаться запущенным, даже после закрытия консоли. Можно прописать в виде юнита systemd.

Клиент

  • где #[KMG] - можно указать значение и объем K - килобит, M - мегабит и G - гигабит соответственно.
  • где # - нужно подставить значение
Параметр сокращенно Параметр подробно Назначение
1 -c <хост> --client <хост> запуск клиента и подключение к серверу <хосту>
2 -u --udp протокол UDP вместо TCP
3 -b #[KMG][/#] --bandwidth #[KMG][/#] максимальная скорость в битах/сек (0 - отсутствует ограничение); по умолчанию отсутствует ограничение скорости для TCP, а для UDP составляет 1 Мбит/сек (опция /# для пакетного режима передачи данных)
4 -t # --time # время тестирования в секундах (по умолчанию 10 сек)
5 -n #[KMG] --bytes #[KMG] количество байт для передачи данных (вместо ключа -t)
6 -l #[KMG] - --len #[KMG] размер буфера (по умолчанию 128 КБ для TCP, 8 КБ для UDP)
7 -P # --parallel # число одновременных параллельных клиентских потоков
8 -R --reverse запуск в обратном режиме (Reverse mode: сервер отправляет трафик, клиент принимает)
9 -4 --version4 использовать только IPv4
10 -6 --version6 использовать только IPv6
11 -Z --zerocopy метод отправки данных по технологии zero copу для снижения нагрузки на процессор
12 -O N --omit N пропустить первые n секунд (игнорировать алгоритм TCP slowstart--)
13 --get-server-output получить результаты с сервера

Пример использования

Вариант 1: простой

  1. Адрес сервера 192.168.0.17, адрес клиента 192.168.0.136
  2. Запускаем iperf на сервере
    $ iperf -s
  3. Запускаем iperf на клиенте
    $ iperf -c 192.168.0.17

Вывод будет следующим:

Сервер:

[admin@server]$ iperf -s

Server listening on TCP port 5001 TCP window size:  128 KByte (default)

[  4] local 192.168.0.17 port 5001 connected with 192.168.0.136 port 46060
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.7 sec  62.1 MBytes  48.8 Mbits/sec

Клиент:

[uer@client]$ iperf -c 192.168.0.17

Client connecting to 192.168.0.17, TCP port 5001 TCP window size: 45.0 KByte (default)

[  3] local 192.168.0.136 port 46060 connected with 192.168.0.17 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.3 sec  62.1 MBytes  50.8 Mbits/sec

Определение скорости интернет-соединения

Установка:

# apt-get install speedtest-cli

Тест:

$ speedtest-cli

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

Анализ сети с использованием Wireshark

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

Установка:

# apt-get install wireshark

Запуск:

$ beesu wireshark

Сценарии использования

Проверка HTTP-трафика

Введите http в поле фильтра и нажмите «Применить». Затем запустите браузер и перейдите на любой сайт:

Wireshark start1.png

Чтобы начать новый анализ, остановите захват в реальном времени и отредактируйте фильтр параметров съемки.

Проверка трафика HTTP с заданного IP-адреса

Чтобы осуществить проверку, добавим в фильтр для отслеживания HTTP-трафика между локальным компьютером и 192.168.0.1 параметр ip.src:

ip.src==192.168.0.1&&

Wireshark start2.png

Проверка HTTP-трафика на заданный IP-адрес

Этот пункт тесно связан с советом №2. Но в этом случае мы будем использовать параметр ip.dst как часть фильтра захвата:

ip.dst==192.168.0.108&&http

Wireshark start3.png

Объединяя советы №2 и №3, Вы можете использовать ip.addr в правиле фильтрации вместо ip.src или ip.dst.

Мониторинг трафика Apache и MySQL в сети

Эта функция может Вам пригодиться при необходимости проверить трафик, который будет соответствовать определенным условиям. К примеру, чтобы контролировать трафик на портах TCP 80 (веб-сервер) и 3306 (сервер базы данных MySQL / MariaDB), можно использовать условие OR в фильтре захвата:

tcp.port==80||tcp.port==3306

Wireshark start4.png

В советах №2 и №3 символ || и слово or производят одинаковые операции. То же самое справедливо для символов && и слова and.

Исключение пакетов с заданными IP-адресами

Чтобы исключить пакеты, не соответствующие правилам фильтра, используйте ! и заключите правило в круглые скобки. Например, чтобы исключить отправляемые пакеты или направляющиеся к заданному IP-адресу, Вы можете использовать:

!(ip.addr == 192.168.0.10)

Мониторинг трафика локальной сети (192.168.0.0/24)

Это правило фильтра позволит отображать только локальный трафик и исключать различные пакеты (как адресованные, так и поступающие из Интернета):

ip.src==192.168.0.0/24 and ip.dst==192.168.0.0/24

Wireshark start5.png

Отслеживание содержания в TCP conversation

  • Статистика-Диалоги
  • Протоколы - отмечаем TCP
  • Снимите галочку "Ограничить соотиветственн..."
  • Выбираем пакет
  • Жмем "Отслеживание трафика"
  • Показать данные как > YAML


Wireshark start6.png

Изменение правил раскраски

Наверняка Вы уже заметили, что каждая строка в окне захвата окрашена. Если Вы хотите изменить эти настройки, перейдите в Просмотр

Wireshark start7.png

Сохранение Capture в файл

Вы можете изучить содержимое захвата Wireshark подробнее, сохранив его. Для этого перейдите в меню Файл.

Wireshark start8.png

Источники