Raspberry上的主机服务器

时间:2018-12-11 20:15:44

标签: c# tcp raspberry-pi3 dyndns

我已经用c#编写了一个简单的聊天程序。它使用tcp。我可以启动服务器,如果每个人都在同一网络中,则 客户端可以连接并聊天。 我现在想将服务器放在安装了raspbian的raspberry pi上。 到目前为止一切正常,如果每个人都在同一个网络中,我可以再次连接,但是现在我想通过互联网访问服务器,因为一个人不能把手放在公共静态IP地址上,我读过我可以使用ddns。 我在no-ip上有一个主机名,并在树莓派上安装了noip2,并按照说明进行操作。 他们在他们的网站上写道,您可以使用sudo noip2 -S命令对其进行测试。它表明它已与我的帐户关联,并将更新我的主机名。 理论上,一切都应该正常工作,但是我无法连接到服务器,也无法连接到树莓派。 你们谁都知道我可以做些什么,还是完全错误的方式?

谢谢!

2 个答案:

答案 0 :(得分:0)

简而言之,如果您没有公共IP,就无法连接到RPi。如果IP地址以192.168、172.16到32或10开头,则按照惯例(或定义,取决于您的外观),它是不可路由的地址,这意味着您无法通过Internet来访问它。

DDNS只是一种从名称转换为IP地址的方式,并不意味着可以被公众访问。 Noip只是将名称与动态IP地址相关联的一种方式,这再次并不意味着公众可以访问任何内容。换句话说,例如,如果www.yourdomain.com解析为192.168.1.2,则谁可以解析名称都没有关系,他们仍然无法访问您的服务器。

如果路由器具有公共IP(您说没有),则可以进行NAT转换,但是根据您的说,这也是不可能的。

答案 1 :(得分:0)

您可以将dyndns与cname一起使用。 您将需要在路由器上打开端口80、443。 这意味着您网络中其他设备的风险。

您可以在AWS / Google上以每月约3美元的价格获得小型虚拟托管服务器,而不必在本地使用rpi。