首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用sharppcap packetdotnet发送http post数据包

使用sharppcap packetdotnet发送http post数据包
EN

Stack Overflow用户
提问于 2012-12-18 16:03:27
回答 2查看 2.5K关注 0票数 2

出于测试的原因,我试图生成一个具有不同源IP地址的http数据包,并将其发送到目的地。

我将使用或packetdotnet

在这里发现了很好的样本:

http://www.tamirgal.com/blog/post/SendTcpSynExamplecs.aspx

在这里:

http://pcapdotnet.codeplex.com/wikipage?title=Pcap.Net%20Tutorial%20-%20Sending%20Packets

但我是这方面的菜鸟我需要帮助:

  1. 在发送http数据包之前,我应该做什么?做tcp握手,还是什么?您是否可以通过发送http数据包,使用 post 谓词发布有关调用url的示例?
  2. 对于做一些压力测试,我需要改变源ip地址和目的地响应对我来说并不重要。所以改变 源地址是否足够?那么校验和其他属性呢?

任何示例或链接都会有帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-18 21:07:09

在能够发送将要接收的http数据包之前,您必须建立与服务器的tcp连接。要从ip级别构建您可能需要进行这种测试的内容,这需要做一些工作。

不过,有些工具将为您生成http会话。它们通常也可以配置为打开特定数量的同步http会话,如果这是您在提到更改源ip时要做的事情。像http://code.google.com/p/httperf/http://httpd.apache.org/docs/2.2/programs/ab.html之类的东西可能会这样做。

票数 1
EN

Stack Overflow用户

发布于 2012-12-24 08:17:34

正如克里斯·摩根在他的回答中指出的那样,做你所描述的事情是不可能的。原因如下:

  • HTTP协议(出于实际目的-始终如此)在TCP连接上工作。
  • 在实际数据开始流动之前,TCP连接必须执行握手(3包相互交换->server->client->server)。
  • 由于握手,无法替换HTTP源IP地址--就建立连接而言,您需要提供有效的IP (否则您将无法接收到第二个数据包,也无法发送第三个所需的数据包)
  • 源IP地址将从已建立的连接属性中提取,因此在建立连接之后也无法伪造它。

有一些特殊情况是部分可能的( HTTP请求中的X转发和类似的报头),但这必须在每个应用程序的基础上进行研究。

因此,简而言之:您所要求的是不可能的(除了一些非常特殊的情况),您可以阅读更多关于建立在这篇Wiki文章上的TCP连接的信息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13936882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档