我的 Web 应用程序中存在无法重现的错误。所有日志看起来都不错,或者至少我看不到任何异常。但它发生了。所以我想我可以记录所有进出我的网站的流量,等待错误发生,然后在我的测试环境中以某种方式重播。它确实发生了!所以我有这样捕获的数据:
tcpdump -s 1514 -X tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0) -Z root -C 20 -W 1000 -w capture.cap
Run Code Online (Sandbox Code Playgroud)
我不知道我能用它做什么。我有一台运行相同版本的 Web 应用程序的虚拟机,我想重放其中记录的数据。我应该如何处理这个问题?
[编辑]
我尝试按照此示例使用tcpreplay执行此操作,但我的 Web 服务器没有记录任何流量。
我的测试机 (Fedora 8) 在 VMWare Player 中运行。假设机器的 IP 是 192.168.41.128 并且它有一个网络接口:eth0(环回除外)-示例中的步骤 #2 和 #3 在我的情况下应该如何?我应该在同一台机器上还是在另一台机器上运行它?
这更像是一个测试台设置问题。
我想使用VMware在VM中调试linux内核中的一些网络代码。我的 VM 有两个网络接口。我想要做的是在主机中重放捕获文件并在VM中接收数据包。我的问题是我在 VM 中看不到重放的数据包。
一种。我首先从自定义网络开始,因为它提供了创建自己的虚拟网络名称的选项。我分别为这两个接口写了/dev/vmnet3和/dev/vmnet4。但是,在引导来宾之后,我没有看到在主机上创建的任何这些接口或设备文件(在 /dev 中)。
湾 然后我尝试了“仅主机”,但这并没有显示与接口关联的网桥/设备文件。
C。最后我尝试了桥接网络模式。
我在主机上看到 vmnet1、vmnet8 和 vboxnet0。对于以上三种情况,我已经在每个接口上播放了捕获文件。我尝试使用“tcpdump -i any”在虚拟机中捕获数据包。但是,我没有看到任何数据包。
任何想法/指示?
是否有免费软件 Windows/Linux GUI 数据包重放工具具有 tcpreplay ( http://tcpreplay.synfin.net/ ) 或 bittwist ( http://bittwist.sourceforge.net )的高级功能?我对以下功能特别感兴趣:
我已经扫描了几个潜在工具列表(这里和这里),但没有什么真正符合我的要求。最接近的工具可能是 Ostinato ( http://code.google.com/p/ostinato/ ),但它似乎无法打开数据包捕获文件。谢谢你的帮助!
我有一个需要使用 TCP 中继的场景。在我开始写一些自定义的东西之前,我想看看是否有人知道可以为我做这件事的现有软件。
我在不同的网络上有 2 台无法相互连接的设备。我们称它们为网络 A 和 B。这些设备需要通信,它们可以通过网络 C 上的“中间人”中继来实现。A 可以连接到 C,B 可以连接到 C。C 不能连接到 A 或 B .
A -> C <- B
Run Code Online (Sandbox Code Playgroud)
思路如下:
有没有现有的工具可以做到这一点?