tcpcopy

今天使用了tcpcopy做了测试,整理下结果

安装

最新版的tcpcopy需要安装两个,tcpcopyintercept
请根据提示安装

./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

注意: 网上很多教程用的0.9.x版本
注: 编译时候需要加一些参数才有-i选项

服务器IP说明

  • 10.10.0.201 - client
  • 10.10.0.203 - 线上server
  • 10.10.0.204 - 待测server
  • 10.10.0.205 - 辅助server
    这里写图片描述

配置

线上server:10.10.0.203

配置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

辅助server 10.10.0.205

intercept -i eth0 -F ‘tcp and src host 10.10.0.204 and src port 2222’ -d

待测server 10.10.0.204

配置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

时序

此时序图为参考时序图,不同次测试可能略有不同,但是逻辑顺序不会变。

Created with Raphaël 2.1.0 client 201 client 201 线上 203 线上 203 待测 204 待测 204 辅助 205 辅助 205 201.p0 -> 203.80 Syn 202.p0 -> 204.2222 Syn 203.80 -> 201.p0 Syn ack 204.2222 -> 202.p0 Syn Ack 201.p0 -> 203.80 Ack 202.p0 -> 204.2222 Ack 201.p0 -> 203.80 http get 202.p0 -> 204.2222 http get 203.80 -> 201.p0 Ack 204.2222 -> 202.p0 Ack 203.80 -> 201.p0 http reply generate by 203 204.2222 -> 202.p0 Http reply generate by 204 201.p0 -> 203.80 Ack 202.p0 -> 204.2222 Ack 201.p0 -> 203.80 Fin 202.p0 -> 204.2222 Fin 203.80 -> 201.p0 Fin 204.2222 -> 202.p0 Fin 201.p0 -> 203.80 Ack 202.p0 -> 204.2222 Ack
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值