linux nc和telnet的區別是什麼

2023-02-07 18:00:49

nc和telnet實現的功能不同:1、telnet可以連線伺服器埠,並進行通訊;而nc可以監聽伺服器埠,並與使用者端通訊(最多隻能接收一個使用者端)。2、telnet可以登入遠端telnet伺服器,使用命令列對其進行控制;而nc是對指定伺服器進行埠掃描,它作為使用者端連線到遠端伺服器進行通訊。

本教學操作環境:linux7.3系統、Dell G3電腦。

Telnet簡介

telnet程式可以直接與web伺服器進行對話。

通過telnet可以開啟一條到某臺機器上某個埠的TCP連線,然後直接向那個埠輸入一些字元。web伺服器會將telnet程式作為一個web使用者端來處理,所有回送給TCP連線的資料都會顯示在螢幕上。

telnet www.xxx.com 80
GET /tools.html HTTP/1.1
Host: www.xxx.com
登入後複製

response:

HTTP/1.1 200 OK
DATE: Sun, 01 Oct 2000 23:25:17 GMT
Server: Apache/1.3.11 BSafe-SSL/1.38 (Unix) FrontPage/4.0.4.3
Last-Modified: Tue, 04 Jul 2000 09:46:21 GMT
ETag: "373979-193-3961b26d"
Accept-Ranges: bytes
Content-length: 403
Connection: close
Content-Type: text/html

<html>
<head><title>xxxx</title></head>
<body>
<h1>Tools page</h1>
...
</body>
</html>
Connection closed by foreign host.
登入後複製

Telnet 會查詢主機名並開啟一條連線,連線到在www.xxx.com的埠80上監聽的web伺服器。

Telnet可以很好的模擬HTTP使用者端,但是不能作為伺服器使用。而且對telnet做指令碼自動化非常麻煩。如果想要更靈活的工具,可以看看下面的netcat。通過nc可以很方便滴操縱基於UDP和TCP的流量(包括HTTP),還可以為其編寫指令碼。

Netcat(NC)簡介

Netcat在網路工具中有「瑞士軍刀」美譽。它是一個非常簡單的Unix工具,可以讀、寫TCP或UDP網路連線(network connection)。它被設計成一個可靠的後端(back-end) 工具,通過與其他工具結合和重定向,你可以在指令碼中以多種方式使用它。同時,它又是一個功能豐富的網路偵錯和開發工具,因為它可以建立你可能用到的幾乎任何型別的連線,以及一些非常有意思的內建功能。Netcat,它的實際可執行的名字叫nc,是一個很早就被提供,但沒有公開的事實標準的Unix工具。使用NC命令所能完成的事情令人驚訝。

Netcat還可以當伺服器使用,監聽任意指定埠的連線請求(inbound connection),並可做同樣的讀寫操作。除了較小限制外,它實際並不關心自己以「使用者端」模式還是「伺服器」模式執行,它都會來回運送全部資料。在任何一種模式下,都可以設定一個非活動時間來強行關閉連線。  它還可以通過UDP來完成這些功能,因此它就象一個telnet那樣的UDP程式,用來測試你的UDP伺服器。正如它的「U」所指的,UDP跟TCP相比是一種不可靠的資料傳輸,一些系統在使用UDP 傳送大量資料時會遇到麻煩,但它還有一些用途。

NC所做的就是在兩臺電腦之間建立連結並返回兩個資料流,在這之後所能做的事就看你的想像力了。你能建立一個伺服器,傳輸檔案,與朋友聊天,傳輸串流媒體或者用它作為其它協定的獨立使用者端。

主要用途

一般我們使用netcat做的最多的事情為以下三種:

1、掃描指定IP埠情況

2、埠轉發資料(重點)

3、提交自定義封包

nc和telnet的區別

telnet可以實現的功能:

  • 連線伺服器埠,並進行通訊

  • 登入遠端telnet伺服器,使用命令列對其進行控制

nc可以實現的功能:

  • 監聽伺服器埠,並與使用者端通訊(最多隻能接收一個使用者端)

  • 對指定伺服器進行埠掃描

  • 作為使用者端連線到遠端伺服器進行通訊

擴充套件知識:

Telnet不通的原因

1、telnet服務本身的問題:服務是否啟用

2、防火牆策略問題:telnet服務所在的系統防火牆是否做了限制,從源主機到提供telnet服務的主機之間的防火牆是否做了限制

3、服務是否限制ip,服務是否達到最大連線數

ping不通的原因

1、伺服器沒啟動/ip不存在

2、網段不同,通過路由也無法找到

3 、防火牆設定,過濾了ping發出的ICMP封包,導致無反饋,time out

4、Ip地址設定錯誤,對於多個網路卡的伺服器來說,每個網口的ip設定必須不能在同一個網段,否則會造成路由不知選擇哪一個出口

5、 網線故障

6)、未設定閘道器,這個對於小網128網段,走路由器的,如果未設定將無法路由

相關推薦:《Linux視訊教學

以上就是linux nc和telnet的區別是什麼的詳細內容,更多請關注TW511.COM其它相關文章!