2011-01-25 49 views
1

我正在使用Java在LAN网络中开发一个非常简单的文件共享程序。该软件使用Socket ans ServerSocket类来发送和接收来自用户知道其IP地址的机器。 我想改进软件的方式是用户可以输入对方的机器用户名而不是IP,例如,如果试图连接到本机的其他机器的用户是特定的用户名,则允许连接。在远程机器上的Java登录用户名

+0

只是一个想法:当我说我的服务器为基础的应用程序,我看着插座,发现这是一个繁重的工作相比,RMI。另外我认为RMI也可能支持机器名称。 – 2011-01-25 12:28:44

+1

你是什么意思的用户名? NetBIOS名称下的Windows,主机名,域名或其他? – Dutow 2011-01-25 12:30:19

回答

0

解决方案将保持某种形式的username -> IP (or hostname)映射。这可以通过DHCP服务器来完成,但是这有点矫枉过正(如果你无法设置DHCP服务器,那么这是不可能的),所以我建议你的程序自己维护一个映射。

要构建映射,您可以尝试以下方法:当主机启动时,它可以使用其用户名发送LAN​​广播消息以通知其存在。收到通知后,其他主机将注册发件人主机的IP和用户名,然后回答各自的用户名和IP地址。

0

您必须制作单独的应用程序,该应用程序将在始终打开的计算机上运行,​​并将保留与用户名关联的IP列表。您的文件共享应用程序将连接到要求用户名的“服务器”,并返回它将返回您的文件共享应用程序用来连接到其他计算机的IP。

相关问题