Вспомогательные утилиты

29    

Генератор статистики по протоколу NetFlow#

Для эмуляции работы пользователей и экспорта статистики по протоколу NetFlow v.5 используется утилита utm5_flowgen, которая устанавливается в следующую директорию: /netup/utm5/bin/utm5_flowgen. В командной строке можно передать следующие параметры:

-h

IP-адрес хоста, на который будут отправлены сгенерированные NetFlow-пакеты. Значение по умолчанию – 127.0.0.1.

-p

Порт, на который будут отправлены сгенерированные NetFlow-пакеты. Значение по умолчанию – 9996.

-c

Количество записей NetFlow. Значение по умолчанию - 65535.

-v

Версия протокола NetFlow. Поддерживаются версии 5 и 9

-f

В качестве пересылаемых данных использовать данные из указанного файла. По умолчанию используются данные из /dev/random. Только для NetFlow версии 5.

-t

Периодичность отправки пакетов NetFlow.

-s

IP-адрес отправителя трафика в записи NetFlow.

-d

IP-адрес получателя трафика в записи NetFlow.

-z

Порт источника трафика в записи NetFlow.

-x

Порт получателя трафика в записи NetFlow.

-n

Номер AS источника трафика в записи NetFlow.

-m

Номер AS получателя трафика в записи NetFlow.

-i

Индекс входящего интерфейса в записи NetFlow.

-o

Индекс исходящего интерфейса в записи NetFlow.

-b

Количество переданных байт в записи NetFlow.

-P

Количество переданных пакетов в записи NetFlow.

-j

TOS, указанный в записи NetFlow.

-k

TCP-флаги в записи NetFlow.

-l

Идентификатор протокола в записи NetFlow. Например: 6=TCP, 17=UDP и т. д.

-N

IP-адрес следующего маршрутизатора в записи NetFlow.

-u

Использовать *.utm файл в качестве источника отправляемой статистики NetFlow.

Следующая команда генерирует один пакет NetFlow с информацией о 1048576 байтах, переданных между адресами 10.0.0.1 и 10.0.0.2:

/netup/utm5/bin/utm5_flowgen -c 1 -s 10.0.0.1 -d 10.0.0.2 -b 1048576

Генератор статистики по протоколу RADIUS#

Для эмуляции работы пользователей и экспорта статистики по протоколу RADIUS используется утилита utm5_radgen, которая устанавливается в следующую директорию: /netup/utm5/bin/utm5_radgen. В командной строке можно передать следующие параметры:

-p

Порт, на который следует отправить сгенерированные RADIUS-пакеты.

-h

IP-адрес, на который следует отправить сгенерированные RADIUS-пакеты.

-s

Секретное слово для взаимодействия с RADIUS-сервером.

-c

Код RADIUS-пакета. Значение по умолчанию: 1 (Access-Request).

-i

Идентификатор RADIUS-пакета. Значение по умолчанию: 1.

-u

Пароль пользователя в открытом виде. Данное значение будет использовано при формировании атрибута Password (код атрибута 2).

-a

Значения атрибутов.

-b

Значения атрибутов в бинарном представлении (HEX ASCII).

-q

Быстрый режим: не дожидаться ответа.

-f

Имя файла, из которого необходимо считать аутентификатор. По умолчанию: /dev/random

-v

Показать версию утилиты.

Возможно указание нескольких атрибутов. Строка имеет следующий формат:

vendor_id:attr_id:is_digit:value

Поля разделены двоеточием. Первое поле указывает на идентификатор вендора. Значение по умолчанию: 0.

Второе поле указывает на идентификатор атрибута.

Третье поле используется для указания типа данных: 0 - строковый, 1- цифровой.

Четвёртое поле используется для передачи самого значения.

Примеры

1.Для отправки запроса на авторизацию (Access-Request) необходимо выполнить следующую команду:

/netup/utm5/bin/utm5_radgen -h 127.0.0.1 -p 1812 -s secret -u password -a 0:1:0:username

 
В результате будет сгенерирован RADIUS-пакет с запросом на авторизацию для пользователя username с паролем password.

2.Для отправки запроса на аккаунтинг (Accounting-Request) необходимо выполнить следующую команду:

/netup/utm5/bin/utm5_radgen -h 127.0.0.1 -p 1813 -s secret -a 0:1:0:username -a 0:40:1:1 -a 0:44:0:sessionid1 -c 4

 
В результате будет сгенерирован RADIUS-пакет с запросом на аккаунтинг для пользователя username, и будет указано, что происходит открытие сессии (start). Идентификатор сессии sessionid1.

3.Для отправки запроса на аккаунтинг (Accounting-Request) необходимо выполнить следующую команду:

/netup/utm5/bin/utm5_radgen -h 127.0.0.1 -p 1813 -s secret -a 0:1:0:username -a 0:32:0:localhost -a 0:40:1:2 -a 0:44:0:sessionid1 -a 0:46:1:100 -c 4

 
В результате будет сгенерирован RADIUS-пакет с запросом на аккаунтинг для пользователя username, и будет указано, что происходит закрытие сессии (stop). Идентификатор сессии sessionid1. Длительность сессии (Acct-Session-Time) – 100 секунд.

Утилита get_nf_direct#

Утилита get_nf_direct предназначена для формирования детальных отчетов по трафику на основании сохраненной первичной информации о трафике.

Исполняемый файл называется /netup/utm5/bin/get_nf_direct.

В командной строке можно передавать следующие параметры:

-D <путь>

Имя директории, в которой находятся файлы с первичной информацией о трафике.

-b <путь>

Имя файла с первичной информацией о трафике.

-a

Идентификатор лицевого счета в системе, для которого формируется отчет.

-s <IP-адрес>

Адрес отправителя трафика, для которого формируется отчет.

-d <IP-адрес>

Адрес получателя трафика, для которого формируется отчет.

-p <порт>

Порт отправителя трафика, для которого формируется отчет.

-P <порт>

Порт получателя трафика, для которого формируется отчет.

-c <класс>

Класс трафика, для которого формировать отчет.

-f <время>

Время в формате Unix Time Stamp, начиная с которого формировать отчет.

-t <время>

Время в формате Unix Time Stamp, по которое формировать отчет. Если значение не указано, используется текущее время.

-l <число>

Максимальное количество строк, которые будут использоваться при формировании отчета. По умолчанию не ограничено.

-e

Отображать статистику в расширенном виде.

-C

Вывод в формате CSV.

-h

Вывод информации о версии и допустимых параметрах командной строки.

Утилита utm5_payment_tool#

Утилита utm5_payment_tool предназначена для внесения платежей на лицевой счет абонента с использованием стороннего программного обеспечения. Вызов утилиты осуществляется из командной строки с указанием параметров. Запуск утилиты производится командой:

/netup/utm5/bin/utm5_payment_tool

Параметры командной строки начинаются со знака “ - ”, затем следует название ключа и через пробел значение параметра. Общий список всех ключей и параметров приведён ниже.

Все строковые значения должны передаваться в кодировке UTF-8. Порядок указания параметров не имеет значения.

Конфигурационный файл#

По умолчанию утилита utm5_payment_tool использует конфигурационный файл /netup/utm5/utm5_payment_tool.cfg.

Значения параметров в конфигурационном файле для этой утилиты имеют больший приоритет, чем значения параметров, указанные в командной строке.

Формат конфигурационного файла:

параметр=значение

Набор символов до знака равенства является названием параметра, после – значением параметра. Пробелы учитываются. Пустые строки игнорируются. Строка, начинающаяся с символа #, считается комментарием.

Список возможных параметров и ключей командной строки:

Ключ

Параметр

Значение по умолчанию

Описание

-h <IP-адрес>

core_host

127.0.0.1

Адрес сервера, на котором запущено ядро UTM5.

-P <порт>

core_port

11758

Порт, на котором ядро UTM5 слушает URFA.

-l

core_user

init

Логин для доступа к ядру UTM5. Задается на странице “Системные пользователи” в интерфейсе администратора.

-p

core_password

init

Пароль для доступа к ядру UTM5. Задается на странице “Системные пользователи” в интерфейсе администратора.

-k

user_comment

пустая строка

Комментарий для абонента.

-L

admin_comment

пустая строка

Комментарий для администратора.

-c

currency_id

810 (RUR)

ID валюты платежа (трёхзначный цифровой код).

-m

payment_method

0 (оплата наличными)

ID метода платежа. Полный список доступных методов смотрите в справочнике в интерфейсе администратора.

-i

turn_on_internet

no

Открыть доступ в Интернет после внесения платежа: yes / no.

-a

accoun_id

не задано

Номер лицевого счёта абонента.

-e

external_number

не задано

Внешний идентификатор платежа.

-b

payment

0.0

Сумма платежа.

Утилита db_archiver#

Утилита db_archiver используется при обновлении UTM5 и предназначена для проверки и приведения структуры БД в соответствие требованиям новой версии ядра UTM5. Кроме того, утилита позволяет архивировать таблицы, подлежащие архивации.

Исполняемый файл называется /netup/utm5/bin/db_archiver.

В командной строке можно передавать следующие параметры:

-a

Архивировать таблицы, подлежащие архивации.

-c <путь>

Путь к конфигурационному файлу UTM5.
По умолчанию: /netup/utm5/utm5.cfg

-d

Записать в log-файл различия между текущей структурой БД и структурой БД, необходимой для работы новой версии UTM5.

-e

Обновить только те столбцы таблиц, которые помечены для обновления компанией NetUP.

-f

Обновить все столбцы, формат которых отличается от формата в новой версии UTM5.

-g

Обновить таблицы, подлежащие архивации.

-i

Обновить индексы.

-n

Не считать за изменение структуры первичный ключ без значения по умолчанию.

-t

Верифицировать архивные таблицы.

-l

Приостановить действия ядра UTM5, требующие записи в БД. Это требуется для архивации таблиц без остановки ядра. Этот параметр следует использовать совместно с параметром -a

-q

Не требовать подтверждения действий и минимизировать количество записей в log-файл. Это может потребоваться, например, при использовании этой утилиты по расписанию.

-u

Обновить структуру базы данных. Этот параметр используется совместно с параметрами -e, -f, -g и -i. Например: -uef

-v

Вывести в log-файл описание структуры БД новой версии UTM5.

-x <login>

Логин для соединения с ядром по протоколу URFA.

-y <password>

Пароль для соединения с ядром по протоколу URFA. Логин и пароль для соединения с ядром по протоколу URFA могут потребоваться только если они отличаются от указанных в конфигурационном файле ядра.

-?, -h

Вывод справки.