3

我有一个 Linode 帐户,我正在尝试使用 telnet 与用 Python(Twisted)编写的基本 TCP/IP 服务器进行通信,该服务器安装在带有 ubuntu lts 的 linode 中:

import os
from twisted.internet import protocol, reactor

class Echo(protocol.Protocol):
    def dataReceived(self, data):
        self.transport.write(data)

class EchoFactory(protocol.Factory):
    def buildProtocol(self, addr):
        return Echo()

port = 5000
reactor.listenTCP(port, EchoFactory(), interface="<my linode's ip>")
reactor.run()

我以为我可以做telnet <my linode's ip> 5000并且能够从服务器发送和接收消息,例如当我在本地测试应用程序时,telnet localhost <some port> 您能否将我转发给某种指南或参考来帮助我完成此操作?我认为我需要在安装服务器应用程序的 linode 上配置一些东西?很难吗?谢谢。

4

2 回答 2

0

这段代码是正确的。可能是您在防火墙中的问题,您可以通过连接到本地主机来测试此代码吗?telnet localhost 5000 你能改成 0.0.0.0 吗?

于 2013-01-27T22:15:56.593 回答
0

我对linode不熟悉,但我猜你需要在防火墙上打开5000端口才能连接。您可以通过在 linode 实例上的 ssh 会话中尝试相同的 telnet 命令来验证这一点。如果它从那里工作,那肯定是防火墙。

于 2013-01-27T22:08:32.420 回答