博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
tcpcopy 流量复制工具
阅读量:5250 次
发布时间:2019-06-14

本文共 1211 字,大约阅读时间需要 4 分钟。

一、作用

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

./configuremake && 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日志是否有对应的访问信息,而且是放大的流量

转载于:https://www.cnblogs.com/yunweixiaoxuesheng/p/9085728.html

你可能感兴趣的文章
Python+selenium鼠标、键盘事件
查看>>
You Are the One (区间DP)
查看>>
.NET工行E生活接入AES加密算法的吐槽-2018
查看>>
Vue.js环境搭建
查看>>
latex对齐问题
查看>>
STL 智能指针
查看>>
JQuery------动态添加的元素on方法不起作用解决方法
查看>>
史上最全面的汽车金融风控解决方案,拿走不谢(仁润)
查看>>
[PHP源码阅读]strpos、strstr和stripos、stristr函数
查看>>
【Python Programe】使用Python发送语音验证
查看>>
阿里云域名备案成功,网站可以成功访问啦。
查看>>
docker安装脚本
查看>>
log4net 使用笔记
查看>>
@WebServlet注解
查看>>
网站收集
查看>>
Servlet与JSP之间相互传值问题
查看>>
编译安装mysql5.7
查看>>
flask 在模板中渲染错误消息 --
查看>>
flask实战-个人博客-编写博客前台
查看>>
spring boot cloud
查看>>