Python - 使用Python请求时使用Windows主机文件/使用预定义的IP地址而不发出DNS请求

时间:2016-04-30 10:11:32

标签: python dns

我正在尝试使用Python请求向域发出HTTP GET请求,而不使用urllib3 / httplib.HTTPConnection来执行域的DNS请求。我在Windows hosts文件中设置了域,但是Python请求似乎会覆盖它,所以我需要在脚本中定义域的DNS解析。

我想脚本绕过dns请求,以便我可以设置IP地址。在下面的示例中,我将其设置为45.22.67.8,稍后我将其更改为我的公共IP地址。

我尝试过使用这种猴子补丁'技术,但它不起作用。请求不会在Wireshark中生成DNS请求,但它也不会连接到HTTP服务器。

    import socket
    import requests
    from requests.packages.urllib3.connection import HTTPConnection

    socket.getaddrinfo = '45.22.67.8'       

     url = "http://www.randomdomain.com"
     requests.get(url, timeout=10)

错误

' STR'对象不可调用

谢谢!

编辑:刚刚更新了我的示例中的代码。我想做的就是覆盖未来的http连接,以欺骗http数据包转到不同的目标IP。

0 个答案:

没有答案