• 包回放介绍


    本文主要介绍Linux下三种包回放的适用场景:tomahawk、tcpreplay

    tomahawk是一款基于Linux系统,用于测试入侵防御系统(IPS)的工具,工作在OSI模型的第二层,只能测试网桥型网络设备。
    tomahawk工作在有三个网卡的机器上:一个用来管理,另外两个用来测试。我们可以使用tomahawk回放各种数据包,产生背景流量、大量的连接、模块稳定性、系统稳定性与模拟客户的数据流环境。

    回放数据包
    不改变数据包中IP地址
    /root/tomahawk -i eth4 -j eth5 -l 1 -A 0 –f /root/a.pcap
    改变数据包中IP地址(源地址、目的地址均改变)
    /root/tomahawk -l 1 -i eth4 -j eth5 –A 1 –f /root/b.pcap
    改变数据包中IP地址(源ip改为100.1.1.1,目的ip改为100.1.1.2)
    /root/tomahawk -l 1 -a 100.1.1.1 -i eth4 -j eth5 –f /root/c.pcap
    改变数据包中IP地址,并循环发送(源改为100.1.1.1-100.10.1.1 ,目的ip改为100.1.1.2-100.10.1.2)
    /root/tomahawk -l 10 -a 100.1.1.1 -i eth4 -j eth5 –f /root/d.pcap

    Tcpreplay是一个基于Linux系统的工具套件,用来测试各种网络设备,包括:交换机、路由器、防火墙和IPS等。tcpreplay允许你拆分客户端和服务端流量,重写2、3、4层头信息,最终将流量回放到网络中。3.4 版本包括以下部分:
    tcpprep:将流量拆分为客户端和服务端两个方向,并存放为缓存文件
    tcprewrite:重写pcap文件的TCP/IP层和数据链路层的头信息(即,MAC地址、IP地址、PORT)
    tcpreplay:以可控的速度将pcap文件回放到网络中

    使用tcpprep将pcap分成客户端和服务器,默认客户端
    tcpprep -a client -i /root/test.pcap -o test.cache
    使用tcpwrite修改数据包IP地址、MAC地址
    tcprewrite -e 2.2.2.1:1.1.1.1 --enet-dmac=00:90:0b:2b:b1:92,00:90:0b:2b:b1:93 --enet-smac=00:90:FB:28:2D:84,00:90:FB:28:2D:85 -c /root/test.cache -i /root/test.pcap -o /root/test.pcap
    使用tcpreplay发送数据包
    tcpreplay -i eth0 -I eth1 -l 1000 -t -c /dev/shm/test.cache /dev/shm/1.pcap
    -i 主网卡/服务器网卡 -t 以最快速率发送
    -I 次网卡/客户端网卡
    -l 循环次数

    或者直接使用 tcpreplay --intf1=eth0 /root/a.pcap  从eth0口发出去包

  • 相关阅读:
    存在和本质
    数据库的日志机制
    【msql】关于redo 和 undo log
    乐观锁是基于比较的无锁并发控制机制
    两段锁协议和防止死锁的一次封锁法
    并发编程沉思录
    什么是B-Tree
    二叉树与b树的性能区别:计算、层级与io
    认知模型
    复杂性、认知与心理学
  • 原文地址:https://www.cnblogs.com/joangaga/p/6594579.html
Copyright © 2020-2023  润新知