API 概述
该API接口提供襄阳防火墙攻击记录查询功能,允许用户查询指定服务器IP的最近一个月攻击日志记录,包括攻击源、攻击类型、持续时间等详细信息。
接口支持两种请求方式(GET和POST),并返回JSON格式的响应数据,包含操作结果状态码和相关攻击记录信息。必须指定单个服务器IP才能查询。
实时查询
安全认证
跨域支持
接口详情
GET/POST
请求参数
| 参数名 | 类型 | 是否必需 | 说明 |
|---|---|---|---|
server_ip
|
字符串 | 必需 | 服务器IP地址(必须提供) |
|
系统会自动查询该IP最近一个月的攻击记录,无需指定时间范围
|
|||
响应示例
成功响应
{
"code": 0,
"msg": "查询成功",
"data": [
{
"count": 14131,
"status": 0,
"deftype": "全局过滤模块:syn flood",
"s_ip": "30.0.0.10",
"start_time": "2022-11-10 18:04:41",
"drop_count": 14131,
"s_port_list": "80",
"c_port_list": "2240,6371",
"c_ip_list": "200.0.1.116,200.0.2.253",
"packet_type": "TCP_SYN",
"end_time": "2022-11-10 18:05:22",
"duration": "41seconds",
"drop_size": 7517692,
"id": 68,
"size": 7517692
}
]
}
失败响应
{
"code": -1,
"msg": "查询攻击记录失败"
}
参数说明
{
"count": 峰值包数
"status": 攻击状态 1:正在攻击 0:攻击结束
"deftype": 防护方式
"s_ip": 服务器IP
"start_time": 攻击起始时间
"drop_count": 拦截包数
"s_port_list": 目的端口
"c_port_list": 源端口
"c_ip_list": 攻击源IP
"packet_type": 包类型
"end_time": 攻击结束时间
"duration": 持续时间:seconds(秒) minutes(分钟) hours(小时) days(天)
"drop_size": 拦截峰值流量 单位字节
"id": 本次攻击日志id值,唯一标识
"size": 服务器峰值流量 单位字节
}
使用示例
PHP 示例代码
<?php
// 服务器IP(必须提供)
$serverIp = "需要查询的服务器IP";
// 构建API请求URL
$apiUrl = "https://gb.qixidc.cn/xy/gj.php?api=1" .
"&server_ip=" . urlencode($serverIp);
// 发送请求
$response = file_get_contents($apiUrl);
$result = json_decode($response, true);
// 处理响应
if ($result && $result['code'] == 0) {
echo "查询成功: " . $result['msg'] . "\n";
echo "攻击记录数量: " . count($result['data']) . "\n";
// 遍历攻击记录
foreach ($result['data'] as $attack) {
echo "攻击ID: " . $attack['id'] . "\n";
echo "攻击类型: " . $attack['deftype'] . "\n";
echo "攻击源IP: " . $attack['c_ip_list'] . "\n";
echo "开始时间: " . $attack['start_time'] . "\n";
echo "持续时间: " . $attack['duration'] . "\n";
echo "-------------------------\n";
}
} else {
echo "错误: " . ($result['msg'] ?? '未知错误');
}
?>
错误代码说明
0 - 成功
查询攻击记录成功
-1 - 查询失败
查询攻击记录过程中出现错误
401 - 缺少IP参数
请求中缺少必须的server_ip参数
402 - IP格式无效
提供的服务器IP地址格式不正确
500 - 服务器内部错误
服务器处理请求时发生错误