我想在不在同一网络上的两台计算机之间进行通信,我尝试使用套接字,但是我只找到用于在相同网络中进行通信的教程和示例网络。
我试图在stackoverflow上搜索,但我没有清楚知道要搜索什么。
我想发送文本双向(聊天)。与不在同一网络上的计算机进行通信
-edit-事情是,这对我来说模糊了我必须使用或做的事情,所以我不能更清楚地说我想为chatapp发送双向文本(可能是日期)只是为了学习。 -edit-
我想在不在同一网络上的两台计算机之间进行通信,我尝试使用套接字,但是我只找到用于在相同网络中进行通信的教程和示例网络。
我试图在stackoverflow上搜索,但我没有清楚知道要搜索什么。
我想发送文本双向(聊天)。与不在同一网络上的计算机进行通信
-edit-事情是,这对我来说模糊了我必须使用或做的事情,所以我不能更清楚地说我想为chatapp发送双向文本(可能是日期)只是为了学习。 -edit-
要在两台机器之间进行通信,它们必须位于相同的扩展网络中。唯一的另一种选择是将数据保存到外部驱动器,例如USB驱动器,您可以连接到第二台机器并上传。
您可以使用套接字与具有Internet连接的任何其他计算机进行通信,并提供您的防火墙并将其配置为允许连接。防火墙的重点在于防止未经授权的访问。我怀疑这是你真正的问题。如果你的防火墙阻止访问,你不应该能够绕过这个使用Java(谷歌网络黑客的替代品;)
另一种选择是使用服务,如电子邮件,如果两台计算机不能直接相互对话他们仍然必须连接到同一网络)这比使用直接连接要复杂得多,但可以完成。
我建议您改为正确配置防火墙,您将可以使用普通套接字。
你必须得到外部IP(有访问时给你这个IP的站点),并希望防火墙允许通信。通常应该使用1000以上的端口。 应该有对等的库。
另一种方式是通过一台计算机上的SSH(JSch是一个用于SSH的Java库)。
最简单的方法是电子邮件交换:javax.mail API是紧凑的,但不是最简单的。 (特别是您可以轻松删除所有邮件,就像我曾经做过的那样)。
请提供详细信息,否则问题将以模糊的方式关闭。你的意思是“不在同一个网络上?你为什么要使用套接字?什么样的沟通方式 - 一种方式,可靠的,安全等等?你的目标是什么?详情请咨询 – 2012-01-02 10:44:25
请提供更具体的问题以及您遇到的问题的更多详情。 – 2012-01-02 10:49:08