一般情況下使用"telnet ip port"判斷端口通不通,其實測試方法不止這一種,還有很多種方法,下面小編給大家分享了幾種方法,具體內容請往下看:
準備環境
啟動一個web服務器,提供端口.
[wyq@localhost ~]$ python -m SimpleHTTPServer 8080Serving 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 80Trying 10.0.250.3...telnet: connect to address 10.0.250.3: Connection refused #直接提示連接被拒絕
2)再連接存在的端口
[root@localhost ~]# telnet localhost 22Trying ::1...Connected to localhost. #看到Connected就連接成功了Escape character is '^]'.SSH-2.0-OpenSSH_5.3aProtocol 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 80ssh: connect to host 10.0.250.3 port 80: Connection refused[root@localhost ~]# ssh 10.0.250.3 -p 80 -vOpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013debug1: Reading configuration data /etc/ssh/ssh_configdebug1: 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 refusedssh: connect to host 10.0.250.3 port 80: Connection refused
2)連接存在的端口
[root@localhost ~]# ssh ... -p a^]^C[root@localhost ~]# ssh ... -p -vOpenSSH_.p, OpenSSL ..e-fips Feb debug: Reading configuration data /etc/ssh/ssh_configdebug: 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 -- : CSTNmap scan report for ...Host is up (.s latency).PORT STATE SERVICE/tcp closed httpMAC 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 -- : CSTNmap scan report for ...Host is up (.s latency).PORT STATE SERVICE/tcp open http-proxyMAC 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 -- : CSTNmap scan report for ...Host is up (.s latency).Not shown: closed portsPORT STATE SERVICE/tcp open ssh/tcp open rpcbind/tcp open http-proxy/tcp open unknownMAC 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.
新聞熱點
疑難解答