Вернуться к оглавлению

Утилита для диагностики netstat

Утилита netstat встроена в МКСЗ «Diamond VPN/FW» и позволяет выводить следующую информацию:

  • состояния TCP соединений (входящих и исходящих);
  • число сетевых интерфейсов;
  • статистику по сетевым протоколам.

Для запуска утилиты необходимо подключиться к устройству по протоколу ssh и выполнить команду «netstat».

# netstat
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0     48 192.168.101.11:ssh      192.168.101.20:63885    ESTABLISHED
tcp        0      0 localhost:60578         localhost:33666         ESTABLISHED
tcp        0      0 192.168.101.11:https    192.168.101.20:50564    TIME_WAIT
tcp        0      0 192.168.101.11:https    192.168.101.20:50562    TIME_WAIT
tcp        0      0 192.168.101.11:https    192.168.101.20:50567    ESTABLISHED
tcp        0      0 localhost:33666         localhost:60578         ESTABLISHED
tcp        0      0 localhost:51180         localhost:41345         ESTABLISHED
tcp        0      0 192.168.101.11:ssh      192.168.101.20:63886    ESTABLISHED
tcp        0      0 localhost:41345         localhost:51180         ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  8      [ ]         DGRAM                    19535    /dev/log
unix  2      [ ]         STREAM     CONNECTED     170138
unix  2      [ ]         DGRAM                    10459
unix  2      [ ]         STREAM     CONNECTED     167508
unix  2      [ ]         DGRAM                    10471
unix  2      [ ]         DGRAM                    10856
unix  3      [ ]         STREAM     CONNECTED     18709
unix  3      [ ]         STREAM     CONNECTED     18710
unix  3      [ ]         DGRAM                    18540
unix  3      [ ]         DGRAM                    18541
unix  2      [ ]         DGRAM                    425991
unix  2      [ ]         DGRAM                    19540
unix  2      [ ]         DGRAM                    20146
unix  3      [ ]         STREAM     CONNECTED     1758     /var/run/frr/zserv.api
...

Для получения справки по различным ключам необходимо выполнить команду «netstat –help».

# netstat --help
usage: netstat [-vWeenNcCF] [<Af>] -r         netstat {-V|--version|-h|--help}
       netstat [-vWnNcaeol] [<Socket> ...]
       netstat { [-vWeenNac] -i | [-cnNe] -M | -s [-6tuw] }

        -r, --route              display routing table
        -i, --interfaces         display interface table
        -g, --groups             display multicast group memberships
        -s, --statistics         display networking statistics (like SNMP)
        -M, --masquerade         display masqueraded connections

        -v, --verbose            be verbose
        -W, --wide               don't truncate IP addresses
        -n, --numeric            don't resolve names
        --numeric-hosts          don't resolve host names
        --numeric-ports          don't resolve port names
        --numeric-users          don't resolve user names
        -N, --symbolic           resolve hardware names
        -e, --extend             display other/more information
        -p, --programs           display PID/Program name for sockets
        -o, --timers             display timers
        -c, --continuous         continuous listing

        -l, --listening          display listening server sockets
        -a, --all                display all sockets (default: connected)
        -F, --fib                display Forwarding Information Base (default)
        -C, --cache              display routing cache instead of FIB

  <Socket>={-t|--tcp} {-u|--udp} {-U|--udplite} {-S|--sctp} {-w|--raw}
           {-x|--unix} --ax25 --ipx --netrom
  <AF>=Use '-6|-4' or '-A <af>' or '--<af>'; default: inet
  List of possible address families (which support routing):
    inet (DARPA Internet) inet6 (IPv6) ax25 (AMPR AX.25)
    netrom (AMPR NET/ROM) ipx (Novell IPX) ddp (Appletalk DDP)
    x25 (CCITT X.25)

Для отображения различной информации в разных форматах утилита принимает на вход параметры из таблицы 12.d.1. Для сокетов TCP допустимы значения состояния из таблицы 12.d.2.

Таблица 12.d.1. Значение параметров утилиты

Параметр Значение
-a Параметр задает отображение состояния всех сокетов
-A Параметр задает адреса любых управляющих блоков протокола, связанных с сокетами
-b Параметр задает отображение исполняемого файла, участвующего в создании подключения или ожидающего порта, а также последовательность компонентов, участвующих в создании подключения, либо ожидающих порт
-i Параметр задает отображение состояния автоматически сконфигурированных интерфейсов
-n Параметр задает отображение информации в числовом виде
-r Параметр задает отображение таблицы маршрутизации
-s Параметр задает отображение статистической информации по протоколам
-I Параметр задает отображение информации об указанном интерфейсе в отдельный столбец
-p Параметр задает отображение идентификатора/названия процесса, создавшего сокет

Таблица 12.d.2. Описание значений сокетов TCP

Значение Описание
CLOSED Сокет не используется, закрыт
LISTEN (LISTENING) Ожидает входящего соединения
SYN_SENT Активно пытается установить соединение
SYN_RECEIVED Идет начальная синхронизация соединения
ESTABLISHED (CONNECTED) Соединение установлено
CLOSE_WAIT Удаленная сторона отключилась. Ожидание закрытия сокета
FIN_WAIT_1 Сокет закрыт. Отключение соединения
CLOSING Сокет закрыт. Удаленная сторона отключилась. Ожидание подтверждения
LAST_ACK Удаленная сторона отключилась. Сокет закрыт. Ожидание подтверждения
FIN_WAIT_2 Сокет закрыт. Ожидание отключения удаленной стороны
TIME_WAIT Сокет закрыт, но ожидает пакеты, еще находящиеся в сети для обработки

Вернуться к оглавлению