你是不是也遇到过这种情况:想给某个程序开端口,却不知道它用的是哪个端口号?想查电脑上哪些端口在被使用,却对着复杂的设置一脸懵?服务端口号这东西,看着好像挺专业,其实找起来没那么难。今天小编就把 Windows、Linux、macOS 三个系统的查询方法掰开揉碎了讲,还整理了常见服务的默认端口表,保证新手也能看明白,一起往下看吧!
Windows 系统:两种方法,新手也能轻松上手
Windows 系统查端口号,有两种简单方法,新手可以根据自己的情况选。
第一种,用命令提示符(CMD)。步骤很简单:
- 按下 Win+R,输入 “cmd”,回车打开命令提示符
- 输入netstat -ano,回车。这时候会列出所有正在使用的端口,最后一列是进程 ID(PID)
- 要是想找某个程序的端口,记下任务管理器里该程序的 PID,再在命令结果里找对应的行就行
有人可能会问,这串字母数字看得头晕咋办?可以加个筛选,比如想找 80 端口,输入netstat -ano | findstr “80”,就能只显示包含 80 的端口信息,是不是方便多了?
第二种,用任务管理器。这种更直观:
- 右键任务栏,打开 “任务管理器”,切换到 “详细信息” 标签
- 点击 “查看”→“选择列”,勾选 “PID(进程标识符)”,确定
- 回到命令提示符用 netstat -ano 查到端口对应的 PID,再在任务管理器里找这个 PID,就能知道是哪个程序在占用端口了
小编自己试的时候,觉得任务管理器更直观,适合新手;命令提示符信息更全,适合想深入了解的人。
Linux 系统:命令行是主力,记这两个就够
Linux 系统大多没有图形界面,靠命令行查端口,其实也不复杂,记两个命令就行。
第一个,netstat -tunlp。输入这个命令,能看到所有正在监听的端口,还有对应的程序名称和 PID。比如想找 SSH 服务的端口,会显示 “sshd” 和对应的端口号(默认 22)。
第二个,lsof -i。这个命令能列出所有网络连接相关的端口,包括正在连接的和监听的。要是想查某个具体端口,比如 8080,输入lsof -i :8080,就能看到哪个程序在占用它。
可能有新手会问,这些命令记不住咋办?其实不用死记,用的时候搜一下就行,多试两次就熟了。小编刚开始用 Linux 的时候,也是每次都要查命令,用得多了自然就记住了。
macOS 系统:和 Linux 有点像,这两个方法好用
macOS 基于 Unix,查端口的方法和 Linux 有相似的地方,但也有自己的小技巧。
第一种,用终端命令。打开 “应用程序→实用工具→终端”,输入netstat -an | grep LISTEN,能看到所有正在监听的端口。想查具体端口的话,比如 3306,输入netstat -an | grep 3306就行。
第二种,用活动监视器。和 Windows 的任务管理器类似:
- 打开 “应用程序→实用工具→活动监视器”
- 点击 “网络” 标签,能看到每个进程的网络连接情况,包括端口信息
小编问过用 mac 的朋友,他们大多觉得终端命令更快,尤其是查特定端口的时候,一行命令就能搞定,比在图形界面里找方便多了。
常见服务默认端口表,新手必备
很多服务都有默认的端口号,记不住没关系,存下这个表就行:
服务名称 | 默认端口号 | 用途 | 注意事项 |
---|---|---|---|
HTTP | 80 | 网页浏览 | 一般网站默认用这个端口 |
HTTPS | 443 | 加密网页浏览 | 带 SSL 的网站会用这个 |
SSH | 22 | 远程登录 Linux/macOS | 服务器管理常用 |
FTP | 21 | 文件传输 | 现在用得少了,安全系数较低 |
MySQL | 3306 | 数据库服务 | 建站常用,最好改默认端口 |
Redis | 6379 | 缓存数据库 | 默认没有密码,要及时设置 |
为啥 MySQL 最好改默认端口?因为很多黑客会扫描 3306 端口尝试攻击,改个不常用的端口(比如 33060),安全多了。小编之前帮人维护网站,就遇到过因为没改端口被攻击的情况,所以这点得注意。
查端口号这事儿,看着复杂,其实多试两次就会了。新手可以先从自己常用的系统开始练,比如 Windows 用户先试试任务管理器,Linux 用户先记牢 netstat 命令。遇到不懂的地方,别着急,多搜搜教程,或者问问身边懂的人。其实啊,端口号就像房间的门牌号,找到它才能更好地管理程序和网络,希望这些方法能帮到你。