netstat – многоцелевая консольная утилита, с помощью которой можно получать информацию о работе различных сетевых процессов, состоянии активных сокетов, данные таблицы маршрутизации, а также статистику сетевых интерфейсов.
В этой заметке рассмотрим, каким образом можно получить статистику и информацию о параметрах сетевых интерфейсов утилитой netstat в FreeBSD.
Утилита в установке не нуждается, присутствует в /usr/bin. Для просмотра информации о сетевых интерфейсах запускаем её с ключом –i
Как видим, на сервере присутствуют две сетевые карты (em0 и em1), для отбора по части названия интерфейса можно воспользоваться традиционным «grep»
Для отбора конкретного интерфейса применяем ключ –I
Через этот интерфейс прошло 33383 входных (Ipkts) пакетов и 2374 выходных (Opkts), не было зарегистрировано ни ошибок (Ierrs, Oerrs), ни коллизий (Coll).
Существует возможность наблюдения статистики в реальном времени (через заданный промежуток времени в секундах), запуск утилиты с ключом -w, завершение вывода осуществляем нажатием комбинации клавиш «ctrl+c»
В этом примере вывод информации происходит каждые 2-е секунды, также задали дополнительные ключи -d – число отброшенных пакетов (колонка drops). В текущем примере пропущенный интерфейсом трафик мизерный, ниже приведу скриншоты рабочего шлюза с 15..20 рабочих мест в сети.
Добавил ключик –t (показывает колонку Time счётчика сторожевого таймера).
Как видим, циферки немного изменились в большую сторону. В шлюзе установлены сетевые карты realtek rtl8139, тем не менее, работают они хорошо, ни ошибок, ни коллизий, ни отброшенных пакетов не наблюдается.