从云服务器向局域网上的设备发送通知
Sending notification from cloud server to devices on LAN
我正在尝试执行以下操作:
- 我在局域网外有自己的服务器
- 我的 LAN 上有多个客户端(在我的路由器后面)
我希望服务器在客户端 "registers" 与服务器联系后通知特定客户端一些事件。例如,客户端可以指示打开哪个端口,并发送 IP 地址。
我看到的所有问题都与 google 云等云服务相关,但我对此不感兴趣。
我面临的问题是:
- 服务器将看到路由器的 IP 而不是设备的 IP。假设我在客户端上打开端口 5555,并且服务器在端口 5555 向路由器的 IP 发送消息,路由器会将该消息转发给所有设备/设备的 none 还是仅转发给带有端口转发的 IP?
我很困惑,因为:
- 如果无法发送到特定设备,多台设备如何浏览互联网并使用 telnet/ ftp ...?数据包以某种方式找到了到达正确设备的路径。
我知道我遗漏了一些东西,但我不知道它是什么以便提出正确的技术问题。
问题是:
在客户端向服务器注册后,如何将特定消息从服务器发送到 LAN 上的众多客户端之一的任何想法?
您的局域网连接到外网,很可能是做NAT,所以内网IP地址和外网IP地址不一样。
一种广泛使用的 NAT 形式不仅可以转换 IP 地址,还可以转换端口号。这允许许多内部 LAN 设备在外部网络上共享同一个 IP。家用路由器通常采用这种方式。
当内部网络上的设备连接时。路由器会记住使用了哪个外部端口,并将任何返回的流量定向到正确的内部设备。这就是多个设备 运行 telnet / ftp 等可以访问互联网的方式,以回答您的第一个问题。
但是,进入您的 LAN 的新连接无法在没有帮助的情况下路由到特定的内部设备。路由器不知道将它以前没有记住的请求发送到哪里。
然而,大多数路由器都有一项称为端口转发的功能,您可以在其中指定如何处理来自外部网络的特定端口请求。如果您设置端口转发并以某种方式将该信息提供给 LAN 外部的服务器。它将能够向这些端口发送请求,路由器会将其传递给您预先配置的匹配内部 IP 和端口号。
如果您认为您没有使用带端口转换的 NAT(它有许多不同的名称),请告知。然后其他人将能够提供进一步的建议
我正在尝试执行以下操作:
- 我在局域网外有自己的服务器
- 我的 LAN 上有多个客户端(在我的路由器后面)
我希望服务器在客户端 "registers" 与服务器联系后通知特定客户端一些事件。例如,客户端可以指示打开哪个端口,并发送 IP 地址。
我看到的所有问题都与 google 云等云服务相关,但我对此不感兴趣。
我面临的问题是:
- 服务器将看到路由器的 IP 而不是设备的 IP。假设我在客户端上打开端口 5555,并且服务器在端口 5555 向路由器的 IP 发送消息,路由器会将该消息转发给所有设备/设备的 none 还是仅转发给带有端口转发的 IP?
我很困惑,因为: - 如果无法发送到特定设备,多台设备如何浏览互联网并使用 telnet/ ftp ...?数据包以某种方式找到了到达正确设备的路径。
我知道我遗漏了一些东西,但我不知道它是什么以便提出正确的技术问题。
问题是:
在客户端向服务器注册后,如何将特定消息从服务器发送到 LAN 上的众多客户端之一的任何想法?
您的局域网连接到外网,很可能是做NAT,所以内网IP地址和外网IP地址不一样。
一种广泛使用的 NAT 形式不仅可以转换 IP 地址,还可以转换端口号。这允许许多内部 LAN 设备在外部网络上共享同一个 IP。家用路由器通常采用这种方式。
当内部网络上的设备连接时。路由器会记住使用了哪个外部端口,并将任何返回的流量定向到正确的内部设备。这就是多个设备 运行 telnet / ftp 等可以访问互联网的方式,以回答您的第一个问题。
但是,进入您的 LAN 的新连接无法在没有帮助的情况下路由到特定的内部设备。路由器不知道将它以前没有记住的请求发送到哪里。
然而,大多数路由器都有一项称为端口转发的功能,您可以在其中指定如何处理来自外部网络的特定端口请求。如果您设置端口转发并以某种方式将该信息提供给 LAN 外部的服务器。它将能够向这些端口发送请求,路由器会将其传递给您预先配置的匹配内部 IP 和端口号。
如果您认为您没有使用带端口转换的 NAT(它有许多不同的名称),请告知。然后其他人将能够提供进一步的建议