• tcpprep 对IPV6的支持


    在采用tcpreplay对包实施回放前,需要对包执行预处理,tcpprep就是完成这个任务的。
    tcpprep要做的处理就是生成一个cache文件,根据tcpprep wiki的介绍http://tcpreplay.synfin.net/wiki/tcpprep
    其作用是将数据包两部分,通俗点讲就是区分下数据包中的服务端和客户端。当tcpreplay采用多网卡进行发送时,也可以采用tcpprep对包进行处理,
    以决定回放包时,数据包走那一块网卡。同时,预处理过的数据包在进行发送时,采用tcpprep处理过后,可以以更高的速度回放。

    这里主要介绍下回放IPv6数据包时,如何区分实施数据包的tcpprep工作。基本的tcpprep这部分就不具体介绍了。
    通过tcpprep的wiki了解到,目前采用tcpprep进行包处理的模式有8种,包括Auto/Bridge、Auto/Router、Auto/Client、Auto/Server、IPv4/v6 matching CIDR、IPv4/v6 matching Regex、TCP/UDP Port、MAC address。

    依照wiki上的文档介绍,目前新版本的tcpprep 3.4.2以上才支持IPv6数据包的处理。并且,auto模式(Bridge、Router、Client、Server)还不能够支持IPv6处理。
    按照该说明,就依次验证测试下在对IPv6数据包下的处理过程。

    1、IPv4/v6 matching CIDR
    通过CIDR(无类别域间路由)的方式,通过手工的方式对数据包中的ip地址进行划分。
    只要IPv6的CIDR书写的没有问题,tcppre可以按照设定好的路由规则进行数据包分类。
    对于IPv6,其CIDR与IPv4比较相似:
    比如:tcpprep --cidr=2001:da8:215:833:bce9:8592:cb2f:56be/128 --pcap=pure6-1.pcap --cachefile=pure6-1.cache
    数据包就能够以这个IP为标示分成两部分了。
    CIDR的IPv6规则条数还是可以有多条的,比如:
    tcpprep --cidr=2001:da8:215:833:bce9:8592:cb2f:56be/128 --pcap=pure6-1.pcap --cachefile=pure6-1.cache

    2、IPv4/v6 matching Regex
    通过IPv6的地址的正则表达式将需要实施IP分类的地址,以正则表达式进行区分。不过在这里,正则表达式只可以有一条。

    tcpprep --regex="(2001:da8:215:833:bce9:8592):*" --pcap=pure6-1.pcap --cachefile=pure6-1.cache
    将以2001:da8:215:833:bce9:8592开头的IP地址作为一类。这里只是比较简单的IP分类,可以按照自己的需要斟酌下正则表达式了。

    3、TCP/UDP Port
    这里依据的是IP层以上的部分了。只要能够正常解析数据包就可以。

    tcpprep  --port --pcap=pure6-1.pcap --cachefile=pure6-1.cache
    依照端口划分的依据是一些常用的服务端口是确定的,比如常用的80端口,443端口。1024一下的端口都可以认为是服务端口。依据端口特征就可以区分服务端和客户端了。
    在linux上,可以参考下/etc/services中服务端口一些介绍。

    4、MAC address
    依照MAC的地址进行数据包的分类。因为这是链路层的,与IP层的关系就比较小了,IPv4与IPv6在这种方式下,也就没有什么分别了。
    这里示例一个简单的小例子:
    tcpprep --mac=c4:ca:d9:a1:22:1f --pcap=pure6-1.pcap --cachefile=pure6-1.cache
    这样就可以依照MAC地址的不同,实施数据包回放时的分类了。这里的MAC地址可以指定多个,多个之间以逗号分类就行。

    总结下,对与IPv6数据包进行数据包预处理,自动模式是不能够用了。不过可以采用4中方式进行服务、客户端的区分。
    具体采用哪一种处理方式,可以依据回放包的特征来选择。从而为tcpreplay的实施做好前期的准备。

  • 相关阅读:
    Adobe Illustrator CS6 界面文字按钮太小,高分屏win10PS/AI等软件界面字太小解决方法
    暗网,又称深网。据估计,暗网比表面网站大几个数量级。
    HexDump.java解析,android 16进制转换
    excel第一次打开报错 向程序发送命令时出错 多种解决办法含终极解决方法
    小黄人IP营销的四种玩法思维导图
    Window下PHP三种运行方式图文详解,window下的php是不是单进程的?
    全球海底光缆分布图
    redis删除单个key和多个key,ssdb会落地导致重启redis无法清除缓存
    图解人工智能机器学习深度学习的关系和区别
    B轮公司技术问题列表
  • 原文地址:https://www.cnblogs.com/hanxiangduo/p/3164948.html
Copyright © 2020-2023  润新知