【发布时间】:2017-08-08 02:04:59
【问题描述】:
那里。我目前正在制作一个 python 网络聊天程序。目前它只能在本地网络上工作,并且由于路由器的防火墙阻止了正在发送给他们的消息,因此无法向连接到网络外的客户端发送消息。
所以,我的问题是:消息传递应用程序如何“绕过”防火墙向客户端发送消息?他们是否使用诸如从服务器“获取”信息并将消息通过隧道传回给他们之类的东西?但是,如果它每秒都在获取,那么即使这样也会消耗大量的电池。每分钟都获取是不切实际的。我在想他们使用更多的“推送”协议,就像我的 IMAP 服务器将我的电子邮件“推送”到我的手机一样。但是这些连接是如何通过防火墙的呢?
【问题讨论】:
-
他们在没有正常阻塞的端口 443 上连接他们的套接字
-
但是路由器如何知道将消息发送到哪个客户端?
标签: python messaging portforwarding instant-messaging tunneling