tcpcopy
tcpcopy copied to clipboard
我只想使用tcpcopy的流量复制功能
我只想使用tcpcopy的流量复制功能。但是我看文档tcpcopy online机器必须收到intercept的 response包才发下一个包。这个功能能支持么?或者有什么推荐么?
https://github.com/session-replay-tools/mirror 也许适合你
我试了mirror,但是我看mirror需要双网卡,我这里用一个网卡测试,没有测试成功。
跟双网卡没有关系
/usr/local/mirror/sbin/mirror -s 00:8D:FA:C0:63:22 -o eth0 -i eth0 -x 120.011.11.11 -t AD:88:3D:A4:65:A3 -F 'port 8080' 这样ok的么?那-o与-i的区别是啥? 2017/08/15 11:23:40 +411 [notice] total captured packets:202137540 2017/08/15 11:24:40 +411 [notice] user time used:120 2017/08/15 11:24:40 +411 [notice] sys time used:418 2017/08/15 11:24:40 +411 [notice] max memory size:36248 2017/08/15 11:24:40 +411 [notice] total captured packets:226368730 2017/08/15 11:25:40 +411 [notice] user time used:134 2017/08/15 11:25:40 +411 [notice] sys time used:465 2017/08/15 11:25:40 +411 [notice] max memory size:36248 2017/08/15 11:25:40 +411 [notice] total captured packets:251496570 2017/08/15 11:26:40 +411 [notice] user time used:147 2017/08/15 11:26:40 +411 [notice] sys time used:512 2017/08/15 11:26:40 +411 [notice] max memory size:36248 2017/08/15 11:26:40 +411 [notice] total captured packets:276201780
我是监听了8080 端口。但是目标机器上没有相应的8080的包。顺便说一句,抓取流量机器、与目标机器非同一个网段(掩码不一样)
mirror需要同一个网段,否则不好办
需要同一个网段的限制是什么?用到了端口镜像技术是么? 我看tcpcopy倒没这个限制的。
如果是我这里是单网卡,想用到流量复制的功能,你建议怎么处理呢?
mirror是通过mac地址寻址的,而tcpcopy默认是通过ip地址寻址的。
mirror出去的数据包,需要考虑怎么样才能走出去,跨网段,就会麻烦很多。
单网卡可能会影响线上业务吧,毕竟是公用一个设备,如果有条件,最好用交换机的mirror,影响代价相对比较小
问个题外话,mirror的实现还是利用了libpcap底层的这个包,修改了mac地址么? tcpcopy 这个也是利用了libpcap的包?因为我看都有libpcap版本的要求。
交换的mirror,指的是交换机自带的mirror功能配置,是这样的么?
对,交换机自带的功能。 mirror修改了mac地址,把包发送过去(利用了libpcap的发包功能),不涉及到tcp层面的内容,而tcpcopy需要模拟tcp协议栈。
之所以libpcap有版本要求,是因为部分函数只有1.0版本以上才有
是否单网卡这个问题,因为我们的服务器都是单网卡的。所以即使非实时,去拉取生成的流量文件也是需要网络带宽,有影响的。
我想问一下tcpcopy这个我能只复用流量复制部分的功能么?因为我这边的需求是非同一网段的不同机器流量复制。