最近一段时间居家办公,使用 Java Swing 编写 IpChat, 基于 IP Messenger 协议,支持 IPv4/IPv6。可实现简单的文本信息传输,点对点直接通讯,无需中间服务器。
上图为 Windows 10 下运行截图。
目前实现了初步文本聊天功能。
此软件开发的初衷,是因为 原版 IP Messenger(日文/英文)的机制, 是先通过广播,了解局域网内哪些电脑使用了 IP Messenger 且在运行中,基于 IPv4/IPv6 + 用户网名, 组织成一个"当前活动的朋友列表"。然后在此基础上,进行文本通讯。
在 IPv6 的情况下,这种广播包,有可能被路由器阻断,发不出去。
IP Messenger 对于向离线用户发文本消息,采取 "等待检测到对方上线状态后,再发送"的策略。导致在 IPv6 网络下,工作不太正常(一直检测不到对方上线的状态)。
此次开发的 IpChat 软件,主要设计思路是:
a)基于 IP Messenger 的通讯协议;