Gor 实现网络抓包和流量镜像
mylxsw, 7/16/2018 • gortcpdumpcommandlinux
项目地址 :https://github.com/buger/goreplay (opens in a new tab)
流量抓包
下面的命令实现了监听 88 端口的HTTP请求,过滤出请求路径为 /app/noticex
的请求,输出到标准输出
/usr/local/bin/gor --input-raw :88 --output-stdout --http-allow-url /app/noticex
流量镜像
以下命令实现将所有发往 :9998 的 HTTP 请求,如果请求地址匹配 /mid-api/mm/mm/voice/callback,则将其复制一份,转发给 **http://192.168.0.47:18888**,并且将请求的地址 /mid-api/mm/mm/voice/callback 重写为 /callback/voice/tencent,添加请求参数 token=6ae4f7752bae71a6a2。
# 镜像发往网关的语音回调请求发往本地的消息服务
/usr/local/bin/gor --input-raw :9998 \
--output-http http://192.168.0.47:18888 \
--http-allow-url /mid-api/mm/mm/voice/callback \
--http-rewrite-url /mid-api/mm/mm/voice/callback:/callback/voice/tencent \
--http-set-param token=6ae4f7752bae71a6a2
# 镜像发往正式消息服务的请求发往本地消息服务
/usr/local/bin/gor --input-raw :24020 --output-http http://192.168.0.47:18888 --http-allow-url /sms --http-allow-url /batch-sms --http-allow-url /voice --http-allow-url /batch-voice
如下图所示
本地电脑 IP 地址为 192.168.0.47,就能够收到从服务器镜像过来的请求了。