首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python语言中通过SOCKS5代理代理UDP

在Python语言中通过SOCKS5代理代理UDP
EN

Stack Overflow用户
提问于 2012-06-14 00:21:56
回答 2查看 2.7K关注 0票数 7

是否可以使用任何SOCKS客户端库在Python中通过SOCKS5代理发送UDP数据报?SocksiPy似乎不起作用,或者我用错了。以下代码不起作用,它尝试直接连接到目的地:

代码语言:javascript
复制
s = socks.socksocket ( socket.AF_INET, socket.SOCK_DGRAM )
s.setproxy(socks.PROXY_TYPE_SOCKS5,"socks.proxy.lan")
s.sendto ( payload, ( ip, port ) )

如果我将SOCK_DGRAM更改为SOCK_STREAM,代码也不会工作,它也不会尝试连接到任何地方。

EN

回答 2

Stack Overflow用户

发布于 2012-06-15 23:01:49

您是否尝试过使用connect()和send()而不是sendto()?从SocksiPy源代码来看,没有实现无连接模式。

编辑

代码语言:javascript
复制
req = struct.pack('BBB', 0x05, 0x01, 0x00)

TCP流连接(0x01)在这里似乎是硬编码的。SocksiPy是不会工作的。

票数 2
EN

Stack Overflow用户

发布于 2014-02-23 01:55:45

你有没有试过这个:

代码语言:javascript
复制
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, "socks.proxy.lan", 8080, True)

将8080替换为端口,如果您希望启用rdns,则" True“为True。

如果您使用的是Python3或更高版本,我建议您使用PySocks,它将是

代码语言:javascript
复制
socks.set_default_proxy(socks.PROXY_TYPE_SOCKS5, "socks.proxy.lan", 8080, True)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11019179

复制
相关文章

相似问题

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