伪造HTTP请求的源IP地址

28 投票
5 回答
39737 浏览
提问于 2025-04-15 13:09

这个工具只需要在一个子网内工作,并不是为了恶意用途。

我有一个用Python写的负载测试工具,它基本上是对一个网址发出大量的HTTP请求。我需要对一个基于IP的负载均衡器进行性能测试,所以请求必须来自一系列不同的IP地址。大多数商业性能工具都提供这个功能,但我想把它做成自己的工具。

这个工具使用Python的urllib2来发送请求。请问,有没有办法发送带有伪造IP地址的HTTP请求呢?

5 个回答

5

你想要设置连接时使用的源地址。用谷歌搜索“urllib2 源地址”可以找到这个链接:http://bugs.python.org/file9988/urllib2_util.py。我还没有试过这个方法。

你所使用的系统需要配置好你正在测试的IP地址。

7

简单提醒一下,因为我昨天刚学到这个:

我觉得你可能已经知道了,但任何对HTTP请求的回复都会发送到头部显示的IP地址。所以,如果你想查看这些回复,你需要控制路由器,并设置好让那些伪造的IP地址都能回到你用来查看回复的那个IP地址。

51

这段话讲的是对HTTP的一个误解。HTTP协议是建立在TCP协议之上的。TCP协议在开始请求时需要进行一个三次握手的过程。

alt

简单来说,如果你伪造了你的源IP地址,你就永远无法通过同步阶段,也就无法发送任何HTTP信息(服务器无法把信息发送给一个合法的主机)。

如果你想测试一个IP负载均衡器,这可不是正确的方法。

撰写回答