码迷,mamicode.com
首页 > 其他好文 > 详细

tcpcopy 流量复制工具

时间:2018-05-25 00:20:11      阅读:320      评论:0      收藏:0      [点我收藏+]

标签:无法   网卡   组件   而且   关闭   style   https   inter   add   

一、作用

tcpcopy可以复制线上真实流量到测试环境做压力测试,返回信息进过处理进入黑洞一般,无需担心返回给客户。

 

二、原理

tcpcopy和intercept两个组件

-tcpcopy

安装在生产主机上,生产主机会接受正常流量,正常流量被tcpcopy复制并发送至测试环境主机。

- intercept

 安装intercept组件的主机被称作辅助主机,他接收测试环境主机返回的响应信息(测试环境将路由指向辅助主机),辅助主机返回响应信息给安装tcpcopy的生产主机,完成一次请求流程。

 

三、实验

192.168.31.100  测试环境主机(指路由)      nginx开启80端口

192.168.31.101  生产环境主机(tcpcopy)    nginx开启80端口

192.168.31.200  辅助主机(intercept)

 

1. 下载

tcpcopy

https://github.com/session-replay-tools/tcpcopy/releases

intercept

https://github.com/session-replay-tools/intercept/releases

./configure
make && make install

 

 

2. 辅助主机操作

- 辅助主机不返回给客户端响应信息,所以关闭路由转发

echo "0" > /proc/sys/net/ipv4/ip_forward

 

- 辅助主机先开启intercept组件,不开启tcpcopy无法启动

intercept组件监听抓取测试主机对应端口返回的响应信息

./intercept -i eth0 -F tcp and src port 8000 -d
-i 监听指定网卡送来的信息
-F 过滤信息
-d 以守护进程形式启动

 

3. 生产主机操作

./tcpcopy -x 80-192.168.31.100:80 -s 192.168.31.200 -c 192.168.31.201 -n 2 -d
-x 指定本地复制的端口,以及复制流量发送到的主机及端口
-s 辅助主机intercept的ip,将tcpcopy会和intercept建立连接,默认连接36524端口
-c 伪装地址,修改复制流量的原地址,测试主机返回响应信息时候指了路由,将伪装地址转发给辅助主机做处理
-n 放大流量,2就是两倍
-d 以守护进程方式启动

 

4. 测试主机

指定路由将响应请求发送给辅助主机做处理

route add -host 192.168.31.201 gw 192.168.31.200

 

5. 测试流程

访问生产主机80端口,查看测试主机nginx日志是否有对应的访问信息,而且是放大的流量

tcpcopy 流量复制工具

标签:无法   网卡   组件   而且   关闭   style   https   inter   add   

原文地址:https://www.cnblogs.com/yunweixiaoxuesheng/p/9085728.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!