看服务器端口号,先分清两件事:本机有没有程序在监听,外部能不能连进来,Windows常用netstat -ano和Get-NetTCPConnection,Linux常用ss -tulnp和lsof,云服务器还要对照安全组。
端口号不是孤立数字,它一头连着进程,一头连着网络规则,你只看到“端口没开”,可能服务根本没监听,也可能监听了但只绑在0.0.1,还可能被系统防火墙或云安全组挡住,下面按实际排障顺序拆开讲。
服务器端口号怎么查看:先分清本机监听和远程连通
查看端口号,先问自己一句:你要看的是服务器内部“谁在听”,还是从外面“能不能连”,这两个动作命令不同,结论也不同。
本机监听:用命令看谁在听
Linux下优先用ss,老系统再用netstat,常见命令如下:
ss -tulnp:查看TCP/UDP监听端口和对应进程,-p通常需要sudo。netstat -tulnp:老牌写法,部分精简系统要装net-tools。lsof -i :8080:只看某个端口被哪个进程占用。fuser 8080/tcp:快速定位占用该端口的PID。
看输出时重点看Local Address:Port。0.0.0:80表示所有网卡都在听,外部有机会连进来;0.0.1:80表示只允许本机访问,远程连不上很正常。
Windows下常用:
netstat -ano | findstr :80:查80端口和PID。Get-NetTCPConnection -LocalPort 80:PowerShell里查看监听状态。tasklist /fi "PID eq 1234":用PID反查进程名。- 图形路径:
Win+R输入resmon,打开资源监视器,进入“网络”里的“侦听端口”。
远程连通:用连通性测试代替猜
在本地电脑测服务器端口,常用三种方式:
telnet 1.2.3.4 80:能连上通常返回空白或欢迎信息,拒绝或超时要继续查。nc -zv 1.2.3.4 80:Linux/macOS常用,直接看端口是否可达。Test-NetConnection -ComputerName 1.2.3.4 -Port 80:Windows PowerShell写法,结果看TcpTestSucceeded。
连接被拒绝,多半是服务没监听或绑错地址,连接超时,优先查防火墙、安全组和网络路径,两者不要混着判断。
Windows和Linux查看端口号命令有什么区别
两个系统思路一样,都是“先看监听,再查PID,再测远程”,差别在命令和权限。
| 需求 | Windows | Linux | 说明 |
|---|---|---|---|
| 查看监听端口 | netstat -ano、Get-NetTCPConnection |
ss -tulnp、netstat -tulnp |
Linux优先用ss |
| 查端口对应进程 | tasklist /fi "PID eq PID" |
ps -fp PID、lsof -i:端口 |
Windows更依赖PID |
| 查端口占用 | netstat -ano | findstr :端口 |
lsof -i:端口、fuser 端口/tcp |
先确认再处理 |
| 测远程连通 | Test-NetConnection |
nc -zv、telnet |
结果分拒绝和超时 |
| 权限要求 | 管理员命令行 | sudo |
否则进程名可能不显示 |
业内专家指出,排障时先看监听地址,再查防火墙,比反复重启服务更有效,Windows容易忽略PID对应的是系统服务还是普通程序;Linux容易忽略ss没加sudo时看不到进程名,命令只是入口,读懂监听地址才是关键。
云服务器安全组端口怎么查看:控制台和系统内要对照
买了云服务器,部署完Web服务,本机curl通,公网打不开,这是典型场景,别只盯着服务日志,按层查:
- 进云控制台,找到实例对应的安全组或防火墙。
- 看入方向规则:协议、端口范围、源IP是否放行。
- 登录服务器,查系统防火墙:
firewall-cmd --list-ports、ufw status、iptables -L -n,Windows看高级安全防火墙入站规则。 - 用
ss -tulnp确认服务监听在0.0.0还是0.0.1。 - 如果前面有负载均衡、NAT网关或网络ACL,继续查监听和回源规则。
行业共识认为,云上端口不通,较大比例卡在安全组或监听地址,不是服务没启动,数据库端口如3306、6379不要对0.0.0/0开放,据工信部公开的网络安全提示,数据库端口直接暴露公网会放大风险,能走内网和白名单就不要图省事。
端口被占用怎么查看:先定位PID再处理
Linux下查占用:
ss -tulnp | grep :8080lsof -i:8080fuser 8080/tcpps -fp PIDsystemctl status 服务名
Windows下查占用:
netstat -ano | findstr :8080tasklist /fi "PID eq 1234"Get-Process -Id 1234
确认是旧进程、计划任务还是系统服务后,再决定改端口、停服务还是重启,不要上来就kill -9,数据库和网关进程被强杀,恢复成本更高。
北京服务器端口号怎么查看:地域不改变命令,只改变网络路径
不管服务器在北京、上海还是海外,查看端口号的命令都一样,地域影响的是网络路径和访问策略,不是ss或netstat的用法,北京服务器远程连不上时,可以按这个顺序查:
- 本地网络出口是否限制
22、3389等管理端口。 - 云安全组是否只放行了公司固定公网IP。
- 服务器系统防火墙是否放行。
- 跨地域链路是否有专线、运营商或白名单策略。
- 用
Test-NetConnection看是拒绝还是超时,别只看浏览器报错。
本地电脑查看服务器端口号需要收费吗
不需要,系统自带的netstat、ss、lsof、Test-NetConnection都免费,第三方端口扫描器有免费版,也有按设备数或年费计价的商业版;云监控里的端口拨测可能单独收费,日常排障用系统命令和免费工具足够,涉及商业扫描器时注意授权范围,别对不属于自己的IP做扫描。
把查看端口号变成固定动作,可以少绕弯:
- 先确认目标IP和端口。
- 登录服务器看监听:
ss -tulnp或netstat -ano。 - 在本地测远程连通:
nc或Test-NetConnection。 - 查系统防火墙。
- 查云安全组和网络ACL。
- 最后回到进程、配置文件和日志。
端口号不是背出来的,是查出来的,按“本机监听远程连通云上规则”三层走,基本能定位大多数问题。
服务器端口号怎么看Q&A
服务器端口号怎么看,不知道端口号怎么办?
先看服务配置:Nginx/Apache看listen,MySQL看my.cnf里的port,Redis看redis.conf的port,Docker用docker ps看端口映射,再用ss -tulnp列出全部监听端口,Windows用netstat -ano,不要一上来就全网扫描,先查已有配置更稳。
Linux下netstat提示command not found怎么办?
说明系统没装net-tools,可以安装后使用,也可以直接用ss -tulnp替代,生产环境更推荐ss,它读取内核信息,速度更快,字段也够用。
云服务器安全组开了还是连不上,问题在哪?
先看服务监听地址是不是0.0.1,再看系统防火墙是否放行,然后查负载均衡、网络ACL和服务是否只绑了IPv6,用ss -tulnp和本机curl交叉验证,端口连通是监听地址、系统防火墙、云安全组、网络路径四者同时满足的结果。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/776466.html


