如何测试端口通不通(四种方法)
程序员文章站
2022-05-12 08:40:14
一般情况下使用"telnet ip port"判断端口通不通,其实测试方法不止这一种,还有很多种方法,下面小编给大家分享了几种方法,具体内容请往下看:
准备环境
启动一...
一般情况下使用"telnet ip port"判断端口通不通,其实测试方法不止这一种,还有很多种方法,下面小编给大家分享了几种方法,具体内容请往下看:
准备环境
启动一个web服务器,提供端口.
[wyq@localhost ~]$ python -m simplehttpserver 8080 serving http on 0.0.0.0 port 8080 ...
用其它web服务器提供端口也一样,由于python比较方便,这里就用它
1、使用telnet判断
telnet是windows标准服务,可以直接用;如果是linux机器,需要安装telnet.
用法: telnet ip port
1)先用telnet连接不存在的端口
[root@localhost ~]# telnet 10.0.250.3 80 trying 10.0.250.3... telnet: connect to address 10.0.250.3: connection refused #直接提示连接被拒绝
2)再连接存在的端口
[root@localhost ~]# telnet localhost 22 trying ::1... connected to localhost. #看到connected就连接成功了 escape character is '^]'. ssh-2.0-openssh_5.3 a protocol mismatch. connection closed by foreign host.
2、使用ssh判断
ssh是linux的标准配置并且最常用,可以用来判断端口吗?
用法: ssh -v -p port username@ip
-v 调试模式(会打印日志).
-p 指定端口
username可以随意
1)连接不存在端口
[root@localhost ~]# ssh 10.0.250.3 -p 80 ssh: connect to host 10.0.250.3 port 80: connection refused [root@localhost ~]# ssh 10.0.250.3 -p 80 -v openssh_5.3p1, openssl 1.0.1e-fips 11 feb 2013 debug1: reading configuration data /etc/ssh/ssh_config debug1: applying options for * debug1: connecting to 10.0.250.3 [10.0.250.3] port 80. debug1: connect to address 10.0.250.3 port 80: connection refused ssh: connect to host 10.0.250.3 port 80: connection refused
2)连接存在的端口
[root@localhost ~]# ssh ... -p a ^] ^c [root@localhost ~]# ssh ... -p -v openssh_.p, openssl ..e-fips feb debug: reading configuration data /etc/ssh/ssh_config debug: applying options for * debug: connecting to ... [...] port . debug: connection established. debug: permanently_set_uid: / debug: identity file /root/.ssh/identity type - debug: identity file /root/.ssh/identity-cert type - debug: identity file /root/.ssh/id_rsa type - debug: identity file /root/.ssh/id_rsa-cert type - debug: identity file /root/.ssh/id_dsa type - debug: identity file /root/.ssh/id_dsa-cert type - a ^c
不用-v选项也可以咯
3、使用wget判断
wget是linux下的下载工具,需要先安装.
用法: wget ip:port
1)连接不存在的端口
[root@localhost ~]# wget ...: ---- ::-- http://.../ connecting to ...:... failed: connection refused.
2)连接存在的端口
[root@localhost ~]# wget ...: ---- ::-- http://...:/ connecting to ...:... connected. http request sent, awaiting response...
4、使用端口扫描工具
[root@localhost ~]# nmap ... -p starting nmap . ( http://nmap.org ) at -- : cst nmap scan report for ... host is up (.s latency). port state service /tcp closed http mac address: b:a::cf:fd:d (unknown) nmap done: ip address ( host up) scanned in . seconds [root@localhost ~]# nmap ... -p starting nmap . ( http://nmap.org ) at -- : cst nmap scan report for ... host is up (.s latency). port state service /tcp open http-proxy mac address: b:a::cf:fd:d (unknown) nmap done: ip address ( host up) scanned in . seconds [root@localhost ~]# nmap ... starting nmap . ( http://nmap.org ) at -- : cst nmap scan report for ... host is up (.s latency). not shown: closed ports port state service /tcp open ssh /tcp open rpcbind /tcp open http-proxy /tcp open unknown mac address: b:a::cf:fd:d (unknown) nmap done: ip address ( host up) scanned in . seconds
总结
提供端口服务,则使用了tcp协议,上面是以web服务器为例。如果服务器是更简单的tcp服务器,三个工具同样适用.
三个工具的共同点是:1.以tcp协议为基础;2.能访问指定端口. 遵循这两点可以找到很多工具.
一般在windows下使用telnet比较方便,linux下个人就比较喜欢用wget.