【问题标题】:socket programming through proxy server通过代理服务器进行套接字编程
【发布时间】:2015-04-24 05:45:21
【问题描述】:

我的 server.py 和 client.py 在同一台计算机和与 wifi 调制解调器直接连接的计算机中工作正常。但是如果我想在通过代理连接的计算机之间使用它,它们就无法工作。 ping 在这些计算机之间工作正常。是否需要修改我的程序或代理设置?防火墙已停用。

我写了简单的服务器程序

import socket
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
host=socket.gethostname()
port=12345
s.bind((host, port))
s.listen(5)
while True:
    c, addr = s.accept()
    print 'got connection from',addr
    c.send('Thank you for connecting')

    c.close()

客户端程序是

import socket               

s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)        
host = 'server-ip-address' 
port = 12345               
s.connect((host, port))
print s.recv(1024)
s.close                    

错误是没有建立连接,因为目标机器主动拒绝它。我的错误是什么?

我的网络是这样的。我想连接 PC2 和 PC3 或 PC1 和 PC3。 PC1、PC2 和 PC3 的防火墙被禁用。仍然拒绝连接。为什么?

【问题讨论】:

  • 您使用什么代理以及如何配置?
  • 是否配置为转发12345端口?
  • 如何配置转发端口。配置页面有以下选项 HTTP ,FTP, SCOCKET/MMS , TELNET。我必须设置哪一个
  • 如何解决这个问题@Andrey Sabitov

标签: python sockets proxy socket.io raspberry-pi


【解决方案1】:

如果您使用自定义端口(例如默认不支持的非协议标准端口),则必须在 ccProxy 中配置自定义端口映射。

ccProxy 调用这些端口映射规则。你可以在这里阅读它们:http://www.youngzsoft.net/ccproxy/faq_6.htm

【讨论】:

    最近更新 更多