首頁  >  文章  >  運維  >  linux nc和telnet的差別是什麼

linux nc和telnet的差別是什麼

青灯夜游
青灯夜游原創
2023-02-07 11:53:503290瀏覽

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

linux nc和telnet的差別是什麼

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

Telnet簡介

telnet程式可以直接與網頁伺服器對話。

透過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的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn