• 【Tcpcopy】离线回放功能


    最近因调试问题,需要一直进行tcpcopy,拿有问题的包进行测试。决定使用tcpcopy对录制脚本进行回放,以下为我操作的具体步骤。主要是三块

    1 下载安装具有离线回放功能的tcpcopy

    2 使用tcpdump进行脚本录制

    3 回放离线文件

    一 tcpcopy下载安装

    原微博里说0.98版本以上即可支持离线回放功能。保险起见,我下载了最新的即1.0.0版本的tcpcopy和intercept来测试离线回放。

    tcpcopy的git路径:https://github.com/wangbin579/tcpcopy

    intercept的git路径:https://github.com/wangbin579/intercept

    分别上传到对应的服务器和客户端,进行安装

    tcpcopy安装步骤:

    1 上传至路径/opt/soft,并解压 tar -xzvf tcpcopy-1.0.0.tar.gz
    2 cd /opt/soft/tcpcopy-1.0.0/进入路径,执行./configure --offline(若不能执行成功,则使用./configure --help进行查看)
    3 make
    4 make install

    intercept安装步骤:

    1 上传至路径/opt/soft,并解压 tar -xzvf intercept-1.0.0.tar.gz
    2 cd /opt/soft/intercept-1.0.0/进入路径,执行./configure --offline(若不能执行成功,则使用./configure --offline进行查看)
    3 make
    4 make install

    问题1 :“can't find pcap.h”(网卡流量监控软件),需要安装libpcap-devel。

    1 yum list libpcap-devel*查到到对应的lib包名称
    2 yum install libpcap-devel.x86_64

    二 使用tcpdump录制pcap离线文件

    tcpdump -i eth0 -w online.pcap tcp and port 80 

    -i eth0:eth0为网卡,获取方式可在liunx系统下执行ifconfig查看所有的网卡,选取需要的那个。
    -w online.pcap:为获取pcap文件进行回放,可设置路径,e.g. -w /home/user/test.pcap
    tcp and port 80:截获端口为80的tcp请求,也可添加udp请求,和更改服务端口80,e.g. tcp and port 16001
    -s 0:默认的话,tcpdump只显示部分数据包,-s snaplen是控制包长度的,默认是68字节,-s 0 则为全部字节,在使用过程中,如果添加-s则回放时会出现错误。可不使用该参数

    三 回放

    1 whereis tcpcopy,可在/usr/local/tcpcopy/sbin下发现tcpcopy命令
    2 ./tcpcopy -x 16001-服务器ip:16001  -s 服务器ip -i /home/user/test.pcap
    3 服务端抓包测试:tcpdump -n port 16001
  • 相关阅读:
    Linux 切换用户
    Java之.jdk安装-Linux
    Java之.jdk安装-Windows
    java注解生成xml和包含CDATA问题
    Spring学习—生成图片验证码
    java学习——java按值传递和按址传递
    温水中被煮熟的程序员-人生的思考
    mysql操作sql的小技巧
    java的classLoader分析与jettty的WebAppClassLoader
    深入Spring:自定义事务管理
  • 原文地址:https://www.cnblogs.com/zhaoxd07/p/4891823.html
Copyright © 2020-2023  润新知