【问题标题】:Host server on RaspberryRaspberry 上的主机服务器
【发布时间】:2018-12-11 20:15:44
【问题描述】:

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

提前致谢!

【问题讨论】:

  • 我现在有一台服务器,每月大约 3 欧元,并且可以正常工作。感谢您的帮助!

标签: c# tcp raspberry-pi3 dyndns


【解决方案1】:

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

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

【讨论】:

  • 如果我这样做,服务器将可以通过公共静态 IP 地址访问?
  • (如果我像你说的那样得到服务器)
  • 是的,各种供应商(Digital Ocean、微软、谷歌、aws...)都有这样的优惠。我不想宣传任何东西,但我可以推荐aws lightsail
【解决方案2】:

简单地说,如果您没有公共 IP,则无法连接到您的 RPi。如果 IP 地址以 192.168、172.16 到 32 或 10 开头。那么按照惯例(或定义取决于您如何看待它),它是一个不可路由的地址,这意味着您无法通过 Internet 访问它。

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

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

【讨论】:

  • 哦,真可惜,我在三个不同的网站上读过它,你可以这样做。但至少我现在知道了。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-02-26
  • 2013-04-19
  • 1970-01-01
  • 2013-08-02
  • 1970-01-01
  • 2013-03-16
  • 1970-01-01
相关资源
最近更新 更多