日常工作中,我们经常会碰到这种问题,某个系统管理员问你,防火墙里端口是不是没给我开啊?为什么我的系统还是访问不了啊?最后,一查发现是自己系统端口没起来。今天,我们站在系统管理员的角度,讲一讲业务系统端口无法正常访问的排查步骤。

一、检查业务系统端口是否正常启用

首先,作为业务系统管理员,你得确认自己的系统端口是不是正常启用了。

1)在windows系统里,可以单击“开始→程序→附件→命令提示符”,或者快捷键“WINDOWS+R”,进入DOS窗口,输入命令 netstat -na 回车,就会显示本机连接情况及打开的端口。

C:\Documents andSettings\administrator>netstat –na

resourcemanager 8032端口启动失败 端口无法启动_nmap

2)在linux系统中,使用netstat -aptn命令行,查看所有开启的端口号。 

resourcemanager 8032端口启动失败 端口无法启动_软件测试_02

有人可能会问,如果端口没启用,怎么启用了?

每个端口都对应一个应用程序,如果端口没启用,肯定是你的应用没起来。这个时候检查下你的应用是不是正常吧,只要你的应用正常启用了,端口自然就会起来的。

但是,需要注意一种特殊情况,此端口被其他应用程序占用了,这时你需要停掉其他应用,或者更换你自己应用的端口号。

 

二、检查端口开放申请的需求是否报错

如果系统端口已经正常启用了。那第二步,检查你提交的端口开放申请是否有问题,比如源地址、目的地址、端口号是否写错,TPC和UDP协议是否弄错了。

 

三、TELNET测试

前面如果没有问题,那你可以在有权限访问系统的终端上,执行telnet命令,测试端口是否正常,当然,此方法仅限于TCP协议的端口。具体方法如下:

在windows系统里,可以单击“开始→程序→附件→命令提示符”,或者快捷键“WINDOWS+R”,进入DOS窗口,输入命令“telnet  系统IP地址  端口号”,然后回车,例如。

测试端口是否开放: 
C:\Documents and Settings\administrator>telnet 10.0.0.247 8383

resourcemanager 8032端口启动失败 端口无法启动_linux_03

如上图所示,8383端口没有开放。 

再测试8080端口:

C:\Documents andSettings\administrator>telnet 10.0.0.247 8080

resourcemanager 8032端口启动失败 端口无法启动_软件测试_04

resourcemanager 8032端口启动失败 端口无法启动_linux_05

如上图所示,8080端口是开放的。

这里注意一种特殊情况,telnet端口通过后,过几秒钟,提示端口连接失败,系统自动踢出telnet用户。一般正常情况,是系统自带防火墙配置问题,可以关闭防火墙后再测试。

四、找防火墙管理员

如果一和二测试通过,但是telnet测试系统端口不好使,那你可以找防火墙管理员,让他们帮忙排查是不是防火墙策略问题。