钟二网络头像

钟二网络

探索SQL查询技巧、Linux系统运维以及Web开发前沿技术,提供一站式的学习体验

  • 文章92531
  • 阅读1232448
首页 Linux 正文内容

linux查看端口java

钟逸 Linux 2025-09-01 09:30:20 4

在Linux系统中,查看端口是系统管理和软件开发中的常见任务。Java提供了丰富的库来简化此任务,本文将介绍如何使用Java查看Linux系统上的端口。

Netstat命令

Netstat命令是查看网络连接和端口状态的强大工具。通过使用"-a"选项,可以列出所有端口,包括正在侦听和未使用的端口。以下命令将以简洁模式列出所有端口:

java

import java.io.IOException;

import java.net.InetAddress;

import java.net.NetworkInterface;

import java.net.SocketException;

import java.net.UnknownHostException;

import java.util.Enumeration;

public class Main {

public static void main(String[] args) throws SocketException, UnknownHostException {

Enumeration networkInterfaces = NetworkInterface.getNetworkInterfaces();

while (networkInterfaces.hasMoreElements()) {

NetworkInterface networkInterface = networkInterfaces.nextElement();

Enumeration inetAddresses = networkInterface.getInetAddresses();

while (inetAddresses.hasMoreElements()) {

InetAddress inetAddress = inetAddresses.nextElement();

System.out.println("Interface: " + networkInterface.getName() + ", Address: " + inetAddress.getHostAddress());

}

}

}

}

使用java.net.Socket类

java.net.Socket类可用于连接到服务器并检查端口是否正在侦听。如果成功连接,则端口正在侦听。以下示例使用Socket类检查端口是否打开:

java

import java.io.IOException;

import java.net.InetAddress;

import java.net.Socket;

public class Main {

public static void main(String[] args) throws IOException {

// 替换 "example.com" 和 80 为要检查的主机名和端口

String hostname = "example.com";

int port = 80;

try (Socket socket = new Socket(hostname, port)) {

System.out.println("Port " + port + " is open on " + hostname);

} catch (IOException e) {

System.out.println("Port " + port + " is not open on " + hostname);

}

}

}

使用Java在Linux中查看端口相对简单。Netstat命令和java.net.Socket类都提供了有效的手段来检查端口状态。选择哪种 取决于应用程序的特定需求和可用资源。

文章目录
    搜索