- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我用java编写了一个简单的客户端-服务器程序。当我创建一个像
这样的套接字时Socket socket = new Socket("localhost",7000);
我能够连接到服务器并将数据(任何控制台输入)传输到服务器,但是当我在套接字中传递本地主机 Ip(127.0.0.1) 时,就像
Socket socket = new Socket("127.0.0.1",7000);
我收到以下错误错误:
java.net.ConnectException: Connection refused: connect
为什么我会得到这个。
这是我的服务器端代码
public class SocketServer {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
new SocketServer();
// TODO code application logic here
}
public SocketServer(){
try {
ServerSocket sSocket = new ServerSocket(7000);
System.out.println("Server started at: " + new Date());
//Wait for a client to connect
Socket socket = sSocket.accept();
//Create the streams
PrintWriter output = new PrintWriter(socket.getOutputStream(), true);
BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
//Tell the client that he/she has connected
output.println("You have connected at: " + new Date());
//Loop that runs server functions
while(true) {
//This will wait until a line of text has been sent
String chatInput = input.readLine();
System.out.println(chatInput);
}
} catch(IOException exception) {
System.out.println("Error: " + exception);
}
}
这是我的客户端代码
public class ClientSocket {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws UnknownHostException {
// TODO code application logic here
new ClientSocket();
}
public ClientSocket() throws UnknownHostException
{
//We set up the scanner to receive user input
Scanner scanner = new Scanner(System.in);
try {
//Socket socket = new Socket("localHost",7000);//works Fine
Socket socket = new Socket("127.0.0.1",7000);//Gives error
PrintWriter output = new PrintWriter(socket.getOutputStream(), true);
BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
//This will wait for the server to send the string to the client saying a connection
//has been made.
String inputString = input.readLine();
System.out.println(inputString);
//Again, here is the code that will run the client, this will continue looking for
//input from the user then it will send that info to the server.
while(true) {
//Here we look for input from the user
String userInput = scanner.nextLine();
//Now we write it to the server
output.println(userInput);
}
} catch (IOException exception) {
System.out.println("Error: " + exception);
}
}
}
这是我的/etc/hosts 文件
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
127.0.0.1 localhost
127.0.0.1 localhost
最佳答案
当您创建Socket
时,您将其绑定(bind)到某个地址。在您的情况下,您将其绑定(bind)到 localhost
,它与 127.0.0.1
相同,但地址不同(而 localhost
应始终解析到127.0.0.1
)。您的应用程序看到连接尝试,但它也看到它不应该监听该地址,因此它拒绝连接。
尝试将您的服务器套接字绑定(bind)到 127.0.0.1
甚至 0.0.0.0
(使用 0.0.0.0
,您告诉它监听所有传入连接(127.0.0.1
、localhost
和您的 LAN IP 地址/主机名)。
Here's some more information about this.
查看服务器和客户端后,您可以在服务器端尝试以下操作:
ServerSocket serverSocket = new ServerSocket();
serverSocket.bind(new InetSocketAddress("127.0.0.1", 7000));
关于java - 在Java中通过IP连接到服务器时出现ConnectException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29840451/
给定的输入是192.168.3.78/27 输入可以是任意C类ip地址,以上ip为例进行尝试 预期输出应显示从 192.168.3.65 到 192.168.3.94 的所有 IP如下 192.168
您好,我是一名 javascript 菜鸟,正在为 IP 范围编写验证器。例如,1.1.1.1-2.2.2.2 是一个有效范围,但我想确保第一个 IP 不大于第二个 IP。 2.2.2.2-1.1.1
在 MySQL 数据库中存储多种 IP 类型的最佳方式是什么: - 单一 IP (123.123.123.123) - IP 范围 (123.123.123.1 - 123.123.123.121)
所以我有一个带有子网的 IP:8.8.8.0/24 我如何将其转换为 8.8.8.0 和 8.8.8.255(实际上是它们的 ip2long 结果) 在 PHP 和 JavaScript 中 最佳答案
我有 Windows7 作为我的基本操作系统。最重要的是,我在 Ubuntu 上安装了 Virtual Box。我希望 ubuntu 获得与我的基本操作系统(Win7)相同的 IP 地址。我如何实现这
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 9年前关闭。 Improve this q
阅读后List of IP Space used by Facebook : “真实”列表是最后一个答案,但我想知道 Igy(答案标记为解决方案)如何通过将连续的类添加到更大的类中来大幅缩小列表(通过
我正在开发一个 web 应用程序,我已经在我的本地主机中创建了这个项目,但是网络用户需要访问我的项目,我不想给他们一个不友好的 ip 地址,所以我想用户访问一个名称例子 http://myprojec
有人可以向我解释 Azure 在逻辑应用程序的出站 IP 地址之间不同的新方式之间的区别。 我认为文档在对该问题的正确解释方面非常精简。读起来听起来好像 IP 地址在逻辑应用程序中具有完全相同的作用。
我正在尝试熟悉一个项目中java中的数据报系统,目前,我们只使用UDP包。 为了发送消息,我们在 DatagramPacket 上设置目标 IP。 /* * The fields o
我有一个 Java 服务器,当我获得连接时,我需要检查 IP 是本地 IP 还是公共(public) IP。当它是我自己的本地 IP 时,我可以检测到它,但我在使用其他本地 IP 时遇到了一些问题。J
所以我在网上看到了很多例子,这些例子展示了如果你知道起始 IP 和结束 IP 如何获得完整的 IP,但我需要的是在提供后告诉我完整的 IP 范围带有起始 IP 和所需 IP 地址数的代码。 因此,例如
我创建了一个 python 项目,用于扫描 IP 范围(即 x.y.z.0/24)并返回在线主机列表。它将在线主机列表保存到仅包含 IP 的文件中(即 ['192.168.0.1'、'192.168.
如果用户的 ip 在某个 IP 范围之间,我正在使用重定向。但是,我正在使用多个 ip 范围,所以我想知道执行此操作的最佳方法。我目前正在使用它来重定向, 但是如果 IP 范围是 72.122.166
好的,现在是星期五下午,我度过了漫长的一周,希望能得到一些帮助!目前,我有一个 IP 范围列表,如下所示: List ipRanges = new List(); ipRanges.Add(new I
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
下面是我的 CloudFormation 模板的片段,用于将弹性 IP 地址与网络接口(interface)的主 IP 相关联: "MyInterfaceSelfEipAssociat
我在 Azure 上创建了 Python 函数,该函数调用外部 API 服务,该服务仅允许访问白名单 IP。 根据 Microsoft 文档 ( https://learn.microsoft.com
我在 Azure 上创建了 Python 函数,该函数调用外部 API 服务,该服务仅允许访问白名单 IP。 根据 Microsoft 文档 ( https://learn.microsoft.com
我在我的 CentOS 5 x86_64 中使用 IP 别名。为简化此示例:IP 地址 A 是 eth0 地址,IP 地址 B 是 eth0:0地址。我有 2 个 Apache 实例(版本 2.2.3
我是一名优秀的程序员,十分优秀!