【问题标题】:HTTP Requests using a range of IP address on python在 python 上使用 IP 地址范围的 HTTP 请求
【发布时间】:2014-11-21 05:57:27
【问题描述】:

我有一台虚拟机作为服务器,IP 地址为 10.91.55.2。我有另一个虚拟机充当客户端,其 IP 地址在 10.91.56.2......10.91.56.10 范围内。我想编写一个脚本,使用客户端上的所有这些 IP 地址向服务器(10.91.55.2)发送 HTTP 请求。我编写了一个脚本,它仅使用物理 IP 地址发送 HTTP 请求。有没有办法从 IP 地址范围发送 HTTP 请求。 我的操作系统是 linux。

【问题讨论】:

  • 一台服务器充当主服务器并将任务 (URL) 发布到队列中。其他服务器充当客户端,轮询服务器队列以获取 URL,并发出实际请求。
  • 你能进一步解释一下吗?如果可能的话,你能分享一下脚本吗?

标签: python python-requests python-multithreading httplib httplib2


【解决方案1】:

这不是一个完整的答案,但应该为您提供一个起点。

您说“我有另一个充当客户端的 VM”,所以我假设您有一个具有多个 IP 地址的客户端 VM。在这种情况下,我相信您可以告诉 Python socket 模块在发送时绑定到特定的网络接口。详情见这个答案https://stackoverflow.com/a/335662/66349

这个答案明确展示了它的用途:https://stackoverflow.com/a/8437870/66349

# from socket.h
# define SO_BINDTODEVICE 25

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, 25, 'eth0')

下面是调用socket.setsockopt 和urllib2 的例子:https://stackoverflow.com/a/17882197/66349

您也许可以将它们拼凑成一个正常运行的程序。

【讨论】:

  • 你能帮我写剧本吗?我是python的初学者,不知道如何使用socket模块。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-31
  • 2010-11-13
  • 2012-06-23
  • 2018-07-04
  • 2022-07-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多