今天使用了tcpcopy做了测试,整理下结果
最新版的tcpcopy需要安装两个,tcpcopy和intercept。
请根据提示安装
./configure make make install
注意如果按照这样默认装,安装目录如下
/usr/local/tcpcopy/sbin/tcpcopy
/usr/local/intercept/sbin/intercept
[root@localhost ~]# tcpcopy -v tcpcopy version:1.0.0 [root@localhost ~]# intercept -v intercept version:1.0.0
注意: 这个版本的tcpcopy已经去掉了-i < device >参数, 网上很多教程用的0.9.x版本
10.10.0.201 - client 10.10.0.203 - 线上server 10.10.0.204 - 待测server 10.10.0.205 - 辅助server
配置nginx,监听80端口
server { listen 80; location / { return 200 "Reply form server 10.10.0.203\n"; } }
tcpcopy -x 10.10.0.203:80-10.10.0.204:2222 -s 10.10.0.205 -d -c 10.10.0.202
intercept -i eth0 -F ‘tcp and src host 10.10.0.204 and src port 2222’ -d
配置nginx,监听2222端口
server { listen 2222; location / { return 200 "Reply form server 10.10.0.204\n"; } }
route add -host 10.10.0.201 gw 10.10.0.205
route add -host 10.10.0.202 gw 10.10.0.205
登陆clinet-10.10.0.201
[root@localhost ~]# curl 10.10.0.203 Reply form server 10.10.0.203
此时序图为参考时序图,不同次测试可能略有不同,但是逻辑顺序不会变。