Linux开放端口后不通
今日看BIO时,试用CentOS7作为服务端,Windows10作为客户端,但是连接不上。
- 首先查看网络
ping 服务端IP
两机网络是通的
- 查看端口是否相通
telnet 服务端IP 端口号
发现端口不通
- 开放Linux端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload
- 重复2还是不通,百度后发现没有监听该端口
- 监听该端口
nc -lp 8080
- 此时重复2是通的
- 编写客户端程序
public static void main(String[] args) throws IOException {
// 1.创建socket将对象请求服务端的链接
Socket socket = new Socket("192.168.164.128",8080);
// 2.从socket对象中获取一个字符输出流
OutputStream os = socket.getOutputStream();
PrintStream ps = new PrintStream(os);
Scanner scanner = new Scanner(System.in);
while(true){
System.out.print("请说:");
String msg = scanner.nextLine();
ps.println(msg);
ps.flush();
}
}
- Linux出现输入字符