Перейти к содержанию

flow_hooks.php

Модуль управления сетевым трафиком и MAC-адресами: мониторинг потоков, защита от DDoS (blackhole/unblock), управление защитой IP и проверка соответствия MAC-адресов.

Методы API

Метод Действие Описание
check_traffic_flow получение данных о трафике Возвращает последние данные об обновлениях трафика по локациям.
ddos_blackhole активация blackhole при DDOS атаке Инициирует процесс блокировки IP-адреса (blackhole) в случае обнаружения чрезмерного трафика. Если количество предупреждений достигло порога, выполняется сетевая блокировка.
ddos_protect активация защиты от DDoS Активирует защиту от DDoS для указанного IP/CIDR и уведомляет клиента.
ddos_unblock снятие DDOS блокировки Снимает ограничение blackhole для конкретного IP-адреса, если у сервера был установлен соответствующий тег.
ddos_unprotect деактивация защиты от DDoS Снимает защиту с IP/CIDR и удаляет соответствующие теги.
ddos_warning отправка предупреждения о DDOS Отправляет уведомление клиенту и логирует факт обнаружения подозрительного трафика без немедленной блокировки.
mac_change смена MAC-адреса Обновляет MAC-адрес для конкретного IP.
mac_check проверка соответствия MAC и IP Запускает процесс верификации ARP-записей: проверяет, соответствует ли текущий MAC-адрес зарегистрированному в базе для данного IP.
mac_report отчет о MAC-адресах Групповая отправка отчетов по статическим MAC-адресам для проверки соответствия IP.
traffic_tick регистрация сетевого события (трафик) Регистрирует данные о прохождении трафика для конкретного IP-адреса или групповое обновление.

flow_hooks/check_traffic_flow

Возвращает последние данные об обновлениях трафика по локациям.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: check_traffic_flow
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=check_traffic_flow"
Пример успешного ответа
{
"result": "OK",
"action": "check_traffic_flow",
"data": [
{
"last_update": "2024-05-20 12:00:00",
"delay": 400,
"location": "NL"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка получения данных трафика"
}

flow_hooks/ddos_protect

Активирует защиту от DDoS для указанного IP/CIDR и уведомляет клиента.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: ddos_protect
ip ✅ integer IP-адрес в формате long (целое число)
cidr ✅ string Сетевой префикс для защиты в формате CIDR
rate ✅ number Скорость атаки в Мбит/с
pps ✅ integer Количество пакетов в секунду (PPS)
routers ✅ string Список маршрутизаторов для применения защиты

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=ddos_protect" \
--data "ip=3232235521" \
--data "cidr=192.168.1.0/24" \
--data "rate=1000" \
--data "pps=500000" \
--data "routers=router1,router2"
Пример успешного ответа
{
"result": "OK",
"action": "ddos_protect",
"data": {
"status": "protection_activated"
}
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка активации защиты"
}

flow_hooks/ddos_unprotect

Снимает защиту с IP/CIDR и удаляет соответствующие теги.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: ddos_unprotect
ip ❌ string IP-адрес для снятия защиты. Может быть представлен в числовом формате.
cidr ❌ string Сетевой префикс (CIDR) для снятия защиты и удаления тегов.

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=ddos_unprotect" \
--data "ip=1.2.3.4"
Пример успешного ответа
{
"result": "OK",
"action": "ddos_unprotect",
"data": {}
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка снятия защиты"
}

flow_hooks/mac_change

Обновляет MAC-адрес для конкретного IP.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: mac_change
ip ✅ string IP-адрес устройства для смены MAC-адреса
new_mac ✅ string Новый MAC-адрес устройства

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=mac_change" \
--data "ip=192.168.1.1" \
--data "new_mac=AA:BB:CC:DD:EE:FF"
Пример успешного ответа
{
"result": "OK",
"action": "mac_change",
"data": {}
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка обновления MAC-адреса"
}

flow_hooks/traffic_tick

Регистрирует данные о прохождении трафика для конкретного IP-адреса или групповое обновление.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: traffic_tick
ip ❌ string IP-адрес для регистрации трафика. Если не указан или пуст, выполняется групповое обновление.
direction ❌ string Направление трафика.
volume ❌ number Объем переданного трафика.
data ❌ array<string> Массив данных для группового обновления трафика.

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=traffic_tick" \
--data "ip=192.168.1.1" \
--data "direction=inbound" \
--data "volume=500"
Пример успешного ответа
{
"result": "OK",
"action": "traffic_tick",
"data": {
"status": 1
}
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка регистрации трафика"
}

flow_hooks/mac_report

Групповая отправка отчетов по статическим MAC-адресам для проверки соответствия IP.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: mac_report
ip ✅ string IP-адрес для сопоставления с MAC-адресами.
macs ✅ array<string> Список статических MAC-адресов для обработки.

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=mac_report" \
--data "ip=192.168.1.1" \
--data "macs[]=00:11:22:33:44:55" \
--data "macs[]=AA:BB:CC:DD:EE:FF"
Пример успешного ответа
{
"result": "OK",
"action": "mac_report",
"data": {}
}
Примеры ошибок
{
"code": -1,
"message": "Ошибка обработки MAC-адресов"
}

flow_hooks/ddos_blackhole

Инициирует процесс блокировки IP-адреса (blackhole) в случае обнаружения чрезмерного трафика. Если количество предупреждений достигло порога, выполняется сетевая блокировка.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: ddos_blackhole
ip ✅ string IP-адрес сервера для проверки и возможной блокировки.
rate ✅ number Скорость трафика в Мбит/с.
pps ✅ integer Количество пакетов в секунду (packets per second).

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=ddos_blackhole" \
--data "ip=1.2.3.4" \
--data "rate=100" \
--data "pps=50000"
Пример успешного ответа
{
"result": "OK",
"action": "ddos_blackhole",
"data": {
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
}
Примеры ошибок
{
"code": -1,
"message": "IP is not connected to any server"
}

flow_hooks/ddos_unblock

Снимает ограничение blackhole для конкретного IP-адреса, если у сервера был установлен соответствующий тег.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: ddos_unblock
ip ✅ string IP-адрес для снятия блокировки. Может быть представлен в виде строки или числового значения (long).

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=ddos_unblock" \
--data "ip=1.2.3.4"
Пример успешного ответа
{
"result": "OK",
"action": "ddos_unblock",
"data": {}
}
Примеры ошибок
{
"code": -1,
"message": "Failed to unblock blackhole"
}

flow_hooks/ddos_warning

Отправляет уведомление клиенту и логирует факт обнаружения подозрительного трафика без немедленной блокировки.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: ddos_warning
- - - Других параметров нет

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=ddos_warning"
Пример успешного ответа
{
"result": "OK",
"action": "ddos_warning",
"data": {}
}
Примеры ошибок
[]

flow_hooks/mac_check

Запускает процесс верификации ARP-записей: проверяет, соответствует ли текущий MAC-адрес зарегистрированному в базе для данного IP.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: mac_check
amount ❌ integer Количество IP-адресов для обработки за один проход.
skip ❌ integer Количество IP-адресов, которые необходимо пропустить из набора данных.
status ❌ integer Статус записей для обработки. Допустимые значения: 0 - все необработанные элементы, -1 - все неудачные элементы, 1 - все обработанные элементы.
id ❌ integer ID конкретной записи для повторной проверки.

Пример запроса

curl -s "https://invapi.hostkey.ru/flow_hooks.php" -X POST \
--data "action=mac_check"
Пример успешного ответа
{
"result": "OK",
"action": "mac_check",
"data": {}
}
Примеры ошибок
{}
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×