怎么看页面服务器ip与端口号?答案很简单:浏览器里看域名解析结果,命令行里用netstat看本地端口,远程服务器则用在线工具和系统命令配合查询。
先分清你要查的是哪种服务器
很多人一上来就问“怎么看服务器ip与端口号”,其实这个问题的答案取决于你的场景,日常工作中,你大概率会遇到三种情况:
- 查看自己电脑上跑的本地服务:比如本地开发的网站,需要确认IP和端口
- 查看线上页面部署在哪台服务器:比如一个网站挂在哪个IP、哪个端口上响应
- 排查对方服务器的端口开放情况:比如测试某个服务是不是活着
这三种场景用的方法完全不同,下面逐一拆开说清楚。
查看本机服务器IP与端口号的方法
如果你的网站或服务跑在自己电脑或自己管理的服务器上,查询方式最直接。
Windows系统操作步骤
第一步:按下 Win + R,输入 cmd,回车打开命令提示符。
第二步:输入 ipconfig,回车后找到“IPv4 地址”,这就是本机服务器IP,如果服务器在局域网里,通常显示为 168.x.x 这样的内网IP;如果是有公网IP的服务器,用 curl ifconfig.me 可以查到底层出口的公网IP。
第三步:输入 netstat -ano,回车后能看到所有正在监听的端口号,列表最后一列的PID(进程标识符)就是占用这个端口号的程序编号。
第四步:如果你想知道某个端口号对应哪个程序,输入 tasklist | findstr "PID",把上一步看到的PID填进去,就知道是哪个软件在服务了。
实操提示:
netstat -ano输出内容很长,建议配合findstr过滤,比如你想查8080端口,直接输入netstat -ano | findstr 8080,结果更清爽。
Linux服务器操作步骤
第一步:SSH连接到服务器,输入 ip addr 或 hostname -I,显示的就是本机IP地址。
第二步:输入 netstat -tlnp 或 ss -tlnp,回车后能列出所有TCP监听端口,最后一列会直接显示进程名和PID。ss 是 netstat 的现代替代品,大多数新系统自带。
第三步
:如果是宝塔面板或类似可视化面板用户,直接在面板首页就能看到服务器IP,在“安全”或“防火墙”模块里能看到所有放行的端口号列表。
第四步:查公网IP时用 curl ifconfig.me 或 curl ip.sb,这在服务器有NAT转发时特别重要内网IP和公网IP可能完全不一样。
查看线上页面部署的服务器IP与端口号的方法
用户访问一个网页时,浏览器本质上就是在向某台服务器的某个端口号发起请求,默认情况下网页走80端口,HTTPS网页走443端口,但服务端也可能配置成别的端口,把“页面背后的真实服务器IP”挖出来,是运维排查问题的基本动作。
用Ping命令看域名解析结果
在命令行输入 ping 你的域名,返回结果中出现的IP地址,就是该域名解析到的服务器IP,注意,有CDN(内容分发网络)的情况除外你看到的会是CDN边缘节点的IP,而不是源站的真实IP。
用Nslookup查DNS记录
输入 nslookup 你的域名,能看到DNS服务器返回的A记录或CNAME记录,CNAME记录会告诉你这个域名最终指向了哪个域名,再嵌套查询一次,才能看到真正的服务器IP。
浏览器开发者工具看端口号
打开Chrome浏览器,按F12打开开发者工具,切到Network(网络)标签页,刷新页面,点任意一个请求记录(index.html),在Headers(标头)里能看到:
- Remote Address:服务器IP和端口号,格式是
168.1.100:443这样的组合 - Host:请求的域名和端口号
这个方法能看到页面实际请求的完整地址,包括端口号是多少,如果你在Host里看到 xxx.com:8080,说明这个页面跑在8080端口上。
在线工具查服务器IP归属
如果你记不住命令行,直接搜“域名解析ip地址查询”,找任意一个在线站长工具网站,输入域名就能看到IP归属地和运营商信息,这个方法适合快速判断服务器所在机房位置,但不适合做精细排查。
端口号测通情况的验证方法
拿到IP和端口号后,你还得确认这个端口号外部能不能访问通,很多新人在这里卡住IP和端口号都看得到,但浏览器就是打不开页面,原因多半是防火墙拦了端口,或者服务没监听在外部接口上。
看端口通不通的思路很简单:向那个IP的对应端口号发起一个TCP连接请求,对方回应就是通的,没回应就是不通
。
最常用的有以下几个做法:
- Telnet命令:输入
telnet 192.168.1.100 8080,如果弹出一个空白窗口或者提示连接成功,说明端口是通的;如果提示“无法打开到主机的连接”,说明端口被防火墙拦截或者服务没启动,新版Windows可能没装Telnet客户端,在“启用或关闭Windows功能”里勾选Telnet客户端即可。 - PowerShell的Test-NetConnection:这是Windows上的高级替代方案,输入
Test-NetConnection 192.168.1.100 -Port 8080,返回结果里TcpTestSucceeded : True就表示端口是通的,用这个比自己记命令要直观不少。 - 在线端口扫描工具:这类工具很多,输入IP和端口号就能测试公网侧通不通,但需要注意,部分安全软件检测到扫描行为可能会触发告警,非必要不频繁使用。
查服务器IP与端口号时最常见的几个坑
按上面的方法操作后还是查不到预期结果,大概率是下面几个原因导致的:
第一个坑:找错了IP层级
服务器所在物理机的IP、云厂商内网IP、绑定到弹性网卡的弹性IP、负载均衡(SLB)的对外IP,这四种IP其实不是一个东西,你在云控制台看到的公网IP,未必是服务器内部 ifconfig 就能直接看到的,因为NAT和弹性IP的存在,服务器内部可能看不到自己的公网IP,查的时候务必要分清:
- 服务器内侧网IP,演示为
ip addr - 云平台公网IP,以控制台展示为准
- 代理层(Nginx、SLB)IP,查
xx.xx.xx.xx的监听逻辑
第二个坑:服务监听在127.0.0.1上
这是新人和老手都会遇到的情况,如果你的服务启动时绑定了 0.0.1(本机回环地址),那只有自己这台机器能访问,外部网络一概不通,正确的监听地址是 0.0.0 或具体的网卡IP,用 netstat -tlnp 能看到服务实际监听的地址,如果显示 0.0.1:8080,那外部必然连不上。
第三个坑:云安全组和系统防火墙两层拦截
云服务器有安全组规则,系统本身还有防火墙(iptables/firewalld/ufw),两边都得放行端口才算数,查端口号是否开放时,建议先查系统的监听状态,再查防火墙规则,最后查云控制台的安全组规则,行业共识认为,生产环境的端口号放行应有明确的申请和复核流程,避免暴露无必要端口。
页面访问异常时的排查逻辑
大多数人查服务器IP和端口号,本质是为了解决“页面打不开”的问题,这里给出一套经过验证的排查路径,按顺序走一遍,多数问题都能定位到:
- 先访问
0.0.1加对应端口,确认本地服务本身是否还活着 - 再用
curl -I http://IP:端口号试试该IP下的端口是否响应HTTP头部 - 接着在另一台机器上用
telnet IP 端口号测TCP层连通性 - 然后检查域名解析是否指向正确的服务器IP
- 最后依次看系统防火墙、云安全组、服务配置文件三处是否一致
其中任何一步断了,问题就出在那一段上。
关于服务器IP与端口号的常见疑问解答
怎么看一个页面用的什么端口号并查出服务器IP?
打开浏览器F12开发者工具的Network面板,点击任意一个请求记录,在Headers里找Remote Address字段,格式为 IP:端口号,这就是该页面实际请求的服务器地址和端口,配合ping 域名和nslookup 域名能进一步确认域名解析情况。
服务器端口号查询命令有哪些?
Windows下常用netstat -ano配合tasklist定位对应进程;Linux下推荐使用ss -tlnp直接查看监听端口和对应服务进程,想验证某个特定IP的端口通不通,使用telnet IP 端口号或PowerShell的Test-NetConnection IP -Port 端口号都可以得到明确的通断结论。
服务器迁移或更换IP后,页面一直打不开怎么办?
先在本地命令行用nslookup确认域名解析是否已指向新服务器IP,如果解析还指向旧IP就会出现这个现象,确保DNS解析生效后再确认新IP的端口号是否已在安全组和服务器防火墙中对公网放行,同时注意服务本身监听的网卡地址要改为0.0.0而非回环地址,多数迁移后无法访问的情况,都发生在安全组未放行这一个环节。
服务器IP与端口号的查询方法并不复杂,难点在于分清场景和层级,本机服务用系统命令查,线上页面用浏览器开发者工具查,公网连通性用telnet验证,排查时始终遵循“从本地往远端、从物理层往应用层”的顺序推进功课,就不会绕路,掌握这些技能后,遇到页面访问异常,你就能直接定位到是哪一段网络链路出了问题。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/745622.html





