在telnet里面可以做些什么?
Telnet簡介
Telnet用于Internet的遠程登錄.它可以使用戶坐在已上網(wǎng)的電腦鍵盤前通過網(wǎng)絡(luò)進入的另一臺電腦已上網(wǎng)的電腦,使它們互相連通.這種連通可以發(fā)生在同一房間里面的電腦或是在世界各范圍內(nèi)已上網(wǎng)的電腦.習(xí)慣上來說,被連通計算機,并且為網(wǎng)絡(luò)上所有用戶提供服務(wù)的計算機稱之為服務(wù)器(Servers),而自己在使用的機器稱之為客戶機(Customer).一旦連通后,客戶機可以享有服務(wù)器所提供的一切服務(wù).用戶可以運行通常的交互過程(注冊進入,執(zhí)行命令),也可以進入很多的特殊的服務(wù)器如尋找圖書索引.網(wǎng)上不同的主機提供的各種服務(wù)都可以被使用.
使用telnet的最簡單的方法是在命令行鍵入:
%telnet remote-computer-name(or IP)
這里使用的是UNIX系統(tǒng)的C shell,因為命令的選擇是百分號"%".如果使用的是其他的計算機系統(tǒng)(比如os,VAX/VMS,Macintosh)命令,只在細節(jié)上有些差異,而在本質(zhì)上是大同小異的,下面舉一個基本的Telnet使用例子:
telnet porky.math.ukans.edu
Trying 129.237.128.11...
Connected to porky.math.ukans.edu.
escape character is '^]'.
SunOS UNIX(porky)
login:wl
passwordxxxxxx
Last Login: Tue Mar 28 05:35 from ns.bta.net.cn
SunOS Release 4.1.3_U1(SLIPPERY1) #3: Sun Nov 20 23:47:23 CST 1999
No match.
if:Expression syntax.
porky/serv/wl%ls
hello
porky/serv/wl%
porky/serv/wlí/
porky/%ls
Mail/ dev/ home/ mnt/ sbin/
usr/
News/ domain/ home1/ net/ serv/
var/
Record/ etc/ kadb* pcfs/ sys@
vmunix*
bin@ export/ lib@ print tmp/
boot gofer/ lost+found/ record tmp_mnt/
porky/%
上述的例子是用Telnet尋找一個叫做porky.math.ukans.edu的遠程計算機.在找到這臺計算機以后,已上網(wǎng)的擁護的計算機就成為它的一個終端.這時屏幕出現(xiàn)的對話與用戶在host上連接的終端一樣。用戶必須注冊進入(login)和注銷推出(logout).在login后,可給出任何適合遠程系統(tǒng)的命令,因為"porky.math.ukans.edu"面向的是UNIX系統(tǒng),所有標準的UNIX命令(想ls和pwd)都可以使用.當用戶從遠程系統(tǒng)退出時,也就從Telnet退出,便可以運行自己的本地系統(tǒng).實際上,Telnet是一個可以注冊進入遠程計算機系統(tǒng)的工具.
Telnet的工作方法
當開始運行Telnet時,情況如何呢?一個應(yīng)用系統(tǒng)由兩部分組成:“client”——這就是Telnet簡介所說的客戶機,另一部分是“Server”——這是運行于網(wǎng)絡(luò)計算機上提供服務(wù)的系統(tǒng),稱之為服務(wù)器。而網(wǎng)絡(luò)(即使用TCP也使用UDP的服務(wù)器)則是提供兩者(Clinet與Server)通信的工具。
這里要求客戶機必須做到:
(1)建立一個網(wǎng)絡(luò)與服務(wù)器間的TCP連接
(2)以方便的方式接收輸入
(3)對某些標準的格式化輸入作重新格式化并作重新格式化并傳送給服務(wù)器。
(4)以某些標準的格式化從服務(wù)器中接受輸出
(5)重新格式化顯示給自己的輸出
服務(wù)器軟件是運行于主機上提供服務(wù)的系統(tǒng),如果沒有運行服務(wù)系統(tǒng),也就不能提供相應(yīng)的服務(wù)。
某一類服務(wù)被調(diào)用,它就可以:
(1)通知網(wǎng)絡(luò)軟件,讓它準備連接;
(2)等待一個標準的格式化要求的產(chǎn)生;
(3)服務(wù)請求;
(4)傳送一個標準格式的結(jié)果給客戶;
(5)重新等待
一個服務(wù)器應(yīng)該能夠處理各種客戶,有的是運行在同類的電腦上的,而有的是運行在 IBM / PCs , Macintoshes , Amigas等各種不同的機器上。為了做到這一點,服務(wù)器必須具有一套通信規(guī)則,這種規(guī)則通常叫做協(xié)議。由于Telnet協(xié)議用于兩個應(yīng)用層之間所以叫做應(yīng)用層協(xié)議。任何人都可以在任何類型的電腦上編制一個客戶機。只要這個客戶機可以上網(wǎng)通訊并遵守協(xié)議,他就可以進入服務(wù)器。實際上也就是說,用戶的 Macintosh可以使用Telnet和其他的的Internet的工具,從而能讓很多不同的系統(tǒng)為其工作。
就使用來說,一個應(yīng)用層協(xié)議通常允許客戶機和服務(wù)器有不同的數(shù)據(jù)設(shè)定,并通告客戶機和服務(wù)器使用相互的通信方式。這些經(jīng)常是有每行在開始的幾個字節(jié)的文本程序來完成的。如果服務(wù)器發(fā)送一個以“TXT”字符開頭的行命令給客戶, “TXT” 后邊其他的數(shù)據(jù)就被送入屏幕顯示。如果一行的開始是以“CMD”開始,則表明這些信息是從服那么這行務(wù)軟件到客戶軟件。使用者是看不到這些的,這是因為在信息傳送到時這些控制信號已去掉了。
Telnet的命令模式
除了在Telnet是如何工作的例子介紹的以外,Telnet還有很多的特點。Telnet可發(fā)送除了"escape"的任何字符到遠程主機上。因為"escape"字符在Telnet中是客戶機的一個特殊的命令模式,它的默認值是"Ctrl-]"。但要注意不要與鍵盤上的Esc鍵混淆,我們可以設(shè)定"escape"為任意某個字符,只是對Telnet來說以為著該字符不可能再被傳送到遠程主機上,而Esc鍵是一非打印字符,Telnet用它來刪除遠程系統(tǒng)中的命令。而且還應(yīng)記住,"escape"字符并不總以"Ctrl-]"來表示。
可以僅僅鍵入Telnet,后面不帶機器字句。這種情況下所看到的是Telnet>,這是告知Telnet在等待鍵入命令,比如鍵入問號"?"那么就得到一個有用的命令表:
telnet: ?
Commands may be abbreviated, Command are:
open connect to a site
close close currect connection
quit exit telnet
display display operating parameters
send transmit special characters ('send ?' for more)
set set operating parameters('set ?' for more)
status print status information
toggle toggle operating parameters('toggle ?' for more)
mode try to enter line-by-line or character-at-a-time mode
? print help information
雖然命令很多,甚至還有子命令,但只有一些是常用的。現(xiàn)在介紹以下的幾個:
Close:
該命令用語終止連接。它自動切斷與遠程系統(tǒng)的連接,也可以用它退出Telnet,在冒失的進入一個網(wǎng)絡(luò)主機時,想退出的話,就可以用到這個命令。
open:
用它來與一個命名機器連接,要求給出目標機器的名字或IP地址。如果未給出機器名,Telnet就將要你選擇一個機器名。必須注意,在使用"Open"命令之前應(yīng)該先用"close"來關(guān)閉任何已經(jīng)存在的連接。
Set ECHO:
用于本地的響應(yīng)是On或是Off。作用是是否把輸出的內(nèi)容顯示在屏幕上。和DOS的ECHO基本上是一樣。如果機器是處于ECHO ON的話,想改變?yōu)镺FF,那么就可以輸入SET ECHO,想再改變回ECHO OFF,那么就再鍵入SET ECHO就可以了。(這兒說的比較簡短,如果有不明白的,可以與我聯(lián)系)
Set escape char:
建立"escape"字符到某個特殊的符號,若想用某種控制符號來代替,可以用"asis"或者鍵入符號"^"加字母b(如:^b)。在正常工作時,是不需要用"escape"這個字符的,并且這個被用作"escape"的符號不應(yīng)該再被使用。這類似于許多程序中對鍵盤上的每一個鍵設(shè)定其真正的涵義。但如果正在運行一個 daisy-chained 應(yīng)用系統(tǒng),那么可以重新議定"escape"字符的特征便是很有用的。例如:用Telnet從系統(tǒng)A到系統(tǒng)B,接著又用Telnet注冊進入系統(tǒng)C。如果正在系統(tǒng)C上工作時出了故障,那么當"escape"代表符是相同時,就沒法中斷系統(tǒng)B到系統(tǒng)C的連接。鍵入"escape"代表符,將總是處于系統(tǒng)A的命令模式。如果在每個Telnet部分使用不同的"escape"代表符,便可以通過鍵入適當?shù)姆枺瑏磉x擇其中一個命令模式,這也可以用于其他的應(yīng)用中(像終端仿真)。
Quit:
用它可順利地推出Telnet程序。
Z:
用語保留Telnet但暫時回到本地系統(tǒng)執(zhí)行其他命令。并且在Telnet中的連接以及其他的選擇在Telnet恢復(fù)時仍被保留。
Carriage Return:
用于不具體的一個命令從命令模式返回到所連接的遠程機器上。另外,還有許多其他的命令可以推出命令模式。下面舉一個例子,是從注冊進入到porky.math.ukans.edu ,然后進入命令模式,然后返回porky::
telnet porky.math.ukans.edu
Trying 129.237.128.11...
Connected to porky.math.ukans.edu.
Escape character is '^]'.
SunOS UNIX(porky)
login:wl
password:
Last Login: Tue Mar 28 05:35 from ns.bta.net.cn
SunOS Release 4.1.3_U1(SLIPPERY1) #3: Sun Nov 20 23:47:23 CST 1999
No match.
if:Expression syntax.
porky/serv/wlí/
porky/%CTRL-]
telnet
Commands may be abbreviated, Command are:
open connect to a site
close close currect connection
quit exit telnet
display display operating parameters
send transmit special characters ('send ?' for more)
set set operating parameters('set ?' for more)
status print status information
toggle toggle operating parameters('toggle ?' for more)
mode try to enter line-by-line or character-at-a-time mode
? print help information
telnet:set escape ^b
escape character is ’^b’
porky/%logout
ns.bta.net.cn%
注意:set命令也可以退出命令模式。當然,如果不行,可以回車輸入一空行,也能回到porky
Telnet是進行遠程登錄的標準協(xié)議和主要方式它為用戶提供了在本地計算機上完成遠程主機工作的能力。通過使用Telnet,Internet用戶可以與全世界許多信息中心圖書館及其它信息資源聯(lián)系。Telnet遠程登錄的使用主要有兩種情況。第一種是用戶在遠程主祝上有自己的帳號(Account),即用戶擁有注冊的用戶名和口令;第二種是許多Internet主機為用戶提供了某種形式的公共Telnet信息資源,這種資源對于每一個Telnet用戶都是開放的。Telnet是使用最為簡單的Internet工具之一。在Unix系統(tǒng)中,要建立一個到遠程主機的對話,只需在系統(tǒng)提示符下輸人命令:
Telnet 遠程主機名
用戶就會看到遠程主機的歡迎信息或登錄標志。在Windows系統(tǒng)中,用戶將以具有圖形界面的Telnet客戶端程序與遠程主機建立Telnet連接。