zxnetgateway
网络传输网关相关接口
1 surguard
可通过环境变量SG_STAT_PORT配置http服务监听端口,默认使用60000端口,启动后可通过GET请求以下地址获取统计信息:http://127.0.0.1:60000/netstat,返回以下json结构:
{
"code": 0,
"msg": "ok",
"data": {
"InterfaceName": "sg0", //接口名
"BytesSent": 17126151, //上行字节数
"BytesReceived": 67165254162, //下行字节数
"PacketsSent": 11527, //上行包数量
"PacketsReceived": 43718123, //下行包数量
"ErrorsSent": 0, //上行错误包数量
"ErrorsReceived": 0, //下行错误包数量
"DropsSent": 0, //上行丢弃包数量
"DropReceived": 0, //下行丢弃包数量
}
}
2 surwall:
在原有的HTTP API上增加了stats接口用于获取统计信息,通过GET请求以下地址获取:http://127.0.0.1:8080/stats,返回以下json结构:
{
"code": 0,
"msg": "ok",
"data":{
"api_call_count":4,
//http接口拦截统计数据
"api_stat":{
//端口号
"80":{
//URI
"GET /test":{
"blacklist":true, //是否为黑名单,这里为黑名单,配置的IP均为放行地址
"reject":0, //该URI的总拦截字节数
"hits":{
"192.168.36.1":0, //来自192.168.36.1的放行字节数
"192.168.36.214":269 //来自192.168.36.1的放行字节数
}
},
"POST /test2":{
"blacklist":false, //是否为黑名单,这里为白名单,配置的IP均为拦截地址
"reject":2176, //该URI的总拦截字节数
"hits":{
"192.168.36.214":2176 //来自192.168.36.214的拦截字节数
}
}
},
"8088":{
"GET /test":{
"blacklist":true,
"reject":0,
"hits":{
"192.168.36.1":0,
"192.168.36.185":0
}
},
"POST /test2":{
"blacklist":false,
"reject":0,
"hits":{
"192.168.36.1":0
}
}
}
},
//流量拦截统计数据
"stream_stat":{
"blocked_ip":{ //被拦截的IP
"192.168.36.151":1 //192.168.36.151被拦截1次
},
"warned_ip":{ //被警告的IP
"192.168.36.182":2 //192.168.36.182被警告2次
}
}
}
}
3.加密网关接口合并
附件为更新完接口的surguard套件,调整如下:
-
1.surguard统计接口的监听端口和surguard隧道使用同一个端口(使用环境变量SG_LISTEN_PORT配置,默认端口为50000),可根据注册到zookeeper中的IP和端口直接访问netstat接口,例如:http://192.168.36.218:50001/surguard/netstat,其中192.168.36.218:50001 为zookeeper中注册的内容
-
2.两个程序的统计接口分别增加前缀:surguard的统计接口增加surguard前缀,原来的http://127.0.0.1:50000/netstat 接口变为 http://127.0.0.1:50000/surguard/netstat;surwall的接口增加surwall前缀,比如原来的http://127.0.0.1:8080/stats接口变为http://127.0.0.1:8080/surwall/stats
-
3.可通过surguard的接口代理访问surwall的接口,需要在surguard启动前配置环境变量SG_STAT_PORT,值为surwall的监听端口,不填写的话使用surguard的监听端口+1,配置后使用surwall前缀的URL访问surguard的接口会代理到surwall服务的对应接口,例如surguard监听50000端口,surwall监听8080端口,则为surguard配置环境变量SG_STAT_PORT=8080,两个服务启动后可通过http://127.0.0.1:50000/surguard/netstat访问surguard的统计数据,也可通过http://127.0.0.1:50000/surwall/stats访问surwall的统计数据。如果surwall程序退出或不存在,调用surwall相关接口会报错