java - 如何在Java中连接到受密码保护的系统上运行的服务器?

标签 java sockets

我是这个网站的新手。我在使用 Java 进行套接字编程时遇到了问题。我已经编写了一个处理客户端的服务器。一切都很好并且工作正常。

如果我要运行服务器的网络受密码保护,我该怎么办?这意味着我们必须提供我们要登录的系统的用户名和密码?

如果我在这种 protected 网络上运行服务器并尝试通过客户端连接,则不会创建客户端套接字,因为服务器拒绝连接。

最佳答案

If I am running the server on this kind of protected network and trying to connect via client, the client socket is not getting created, because the server is refusing the connection.

服务器拒绝连接的原因有很多。如果当客户端和服务器在同一台计算机上运行时可以连接,但当客户端在不同计算机上运行时则无法连接,则问题可能是服务器正在运行防火墙并且不允许来自“外部”的连接。

如果客户端位于完全不同的网段,即客户端位于互联网上“很远”的某个位置,则两个系统之间可能存在多个防火墙,其中任何一个都可能拒绝连接。

另一种可能性是,当服务器打开其 ServerSocket 时,您将其绑定(bind)到 127.0.0.1 而不是 0.0.0.0。在这种情况下,服务器只能接受来自 localhost 的连接,即源自同一台计算机的连接。它完全不知道源自其他任何地方的连接。

如果没有更好地解释客户端和服务器的位置,就不可能给出更好的答案。但有一件事是肯定的:您需要身份验证才能“登录”系统这一事实与您的情况无关。

关于java - 如何在Java中连接到受密码保护的系统上运行的服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13256861/

相关文章:

java - JsonProperty 会序列化但不会反序列化

java - 将 assertArrayEquals() 与通配符一起使用?

java - Android 使用 Java 套接字崩溃

c# - 如何在 C# 中通过基于 TCP 协议(protocol)的套接字发送文件?

java - 如何使用socket向服务器发送和接收消息?

java - 使用 javax.crypto 时出现 ClassCastException

java - 我需要帮助破译这个错误,我正在尝试填充 ListView

PHP 设置 MySQL 套接字位置

android - 使用计算机名称的套接字连接有问题吗?

java - 将 docx 转换为 pdf