在Linux系统中,查看所有端口号是一个常见的操作,尤其是在开发过程中需要查看正在使用的端口号以及监听的端口号。通过查看端口号,我们可以了解系统中哪些服务正在运行、哪些应用程序在监听哪些端口,以及是否有不必要的端口被打开等信息。下面我将向你介绍如何在Linux系统中查看所有端口号。

整个过程我将分为几个步骤,并列出所需的操作和代码,让你可以清晰地理解每一步的操作流程。

| 步骤 | 操作 |
| ------ | ------ |
| 1 | 打开终端(Terminal) |
| 2 | 使用netstat命令查看当前侦听端口 |
| 3 | 使用lsof命令查看当前所有打开的端口 |
| 4 | 使用ss命令查看当前所有的端口 |

**步骤 1:打开终端**

首先,我们需要打开终端来执行命令。使用快捷键 `Ctrl + Alt + T`(在大多数Linux发行版中使用)或者在应用程序菜单中找到终端程序并打开。

**步骤 2:使用netstat命令查看当前侦听端口**

在终端中输入以下命令并运行:

```bash
netstat -tuln
```

解释:
- `netstat` 是一个用于显示网络连接、路由表、接口状态等网络系统的工具。
- `-t` 参数表示显示TCP连接
- `-u` 参数表示显示UDP连接
- `-l` 参数表示仅显示监听状态的端口
- `-n` 参数表示以数字形式显示端口号

执行上述命令后,你将看到系统中所有正在侦听的TCP和UDP端口号。

**步骤 3:使用lsof命令查看当前所有打开的端口**

继续在终端中输入以下命令并运行:

```bash
sudo lsof -i -P -n | grep LISTEN
```

解释:
- `lsof` 是一个用于查看打开文件(包括网络连接)的工具。
- `-i` 参数表示仅显示网络连接
- `-P` 参数表示不将端口名称解析为服务名
- `-n` 参数表示以数字形式显示端口号
- `grep LISTEN` 表示只显示处于监听状态的端口

执行上述命令后,你将看到系统中所有当前打开的端口信息,包括进程ID、进程名称等。

**步骤 4:使用ss命令查看当前所有的端口**

最后,在终端中输入以下命令并运行:

```bash
ss -tuln
```

解释:
- `ss` 是一个用于显示网络套接字状态的工具。
- `-t` 参数表示显示TCP连接
- `-u` 参数表示显示UDP连接
- `-l` 参数表示仅显示监听状态的端口
- `-n` 参数表示以数字形式显示端口号

执行上述命令后,你将看到系统中所有正在侦听的TCP和UDP端口号。

通过上述步骤,你已经学会了如何在Linux系统中查看所有端口号。这个技能在开发过程中非常有用,帮助你了解系统中正在使用的端口和进程信息,同时也有助于排查端口冲突等问题。希望以上内容能对你有所帮助!