Telnet簡介
Telnet用於Internet的遠端登入.它可以使使用者坐在已上網的電腦鍵盤前透過網路進入的另一臺電腦已上網的電腦,使它們互相連通.這種連通可以發生在同一房間裡面的電腦或是在世界各範圍內已上網的電腦.習慣上來說,被連通計算機,並且為網路上所有使用者提供服務的計算機稱之為伺服器(Servers),而自己在使用的機器稱之為客戶機(Customer).一旦連通後,客戶機可以享有伺服器所提供的一切服務.使用者可以執行通常的互動過程(註冊進入,執行命令),也可以進入很多的特殊的伺服器如尋找圖書索引.網上不同的主機提供的各種服務都可以被使用.
使用Telnet的最簡單的方法是在命令列鍵入:
%telnet remote-computer-name(or IP)
這裡使用的是UNIX系統的C shell,因為命令的選擇是百分號"%".如果使用的是其他的計算機系統(比如os,VAX/VMS,Macintosh)命令,只在細節上有些差異,而在本質上是大同小異的,下面舉一個基本的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的遠端計算機.在找到這臺計算機以後,已上網的擁護的計算機就成為它的一個終端.這時螢幕出現的對話與使用者在host上連線的終端一樣。使用者必須註冊進入(login)和登出推出(logout).在login後,可給出任何適合遠端系統的命令,因為"porky.math.ukans.edu"面向的是UNIX系統,所有標準的UNIX命令(想ls和pwd)都可以使用.當用戶從遠端系統退出時,也就從Telnet退出,便可以執行自己的本地系統.實際上,Telnet是一個可以註冊進入遠端計算機系統的工具.
Telnet的工作方法
當開始執行Telnet時,情況如何呢?一個應用系統由兩部分組成:“client”——這就是Telnet簡介所說的客戶機,另一部分是“server”——這是運行於網路計算機上提供服務的系統,稱之為伺服器。而網路(即使用TCP也使用UDP的伺服器)則是提供兩者(Clinet與Server)通訊的工具。
這裡要求客戶機必須做到:
(1)建立一個網路與伺服器間的TCP連線
(2)以方便的方式接收輸入
(3)對某些標準的格式化輸入作重新格式化並作重新格式化並傳送給伺服器。
(4)以某些標準的格式化從伺服器中接受輸出
(5)重新格式化顯示給自己的輸出
伺服器軟體是運行於主機上提供服務的系統,如果沒有執行服務系統,也就不能提供相應的服務。
某一類服務被呼叫,它就可以:
(1)通知網路軟體,讓它準備連線;
(2)等待一個標準的格式化要求的產生;
(3)服務請求;
(4)傳送一個標準格式的結果給客戶;
(5)重新等待
一個伺服器應該能夠處理各種客戶,有的是執行在同類的電腦上的,而有的是執行在 IBM / PCs , Macintoshes , Amigas等各種不同的機器上。為了做到這一點,伺服器必須具有一套通訊規則,這種規則通常叫做協議。由於Telnet協議用於兩個應用層之間所以叫做應用層協議。任何人都可以在任何型別的電腦上編制一個客戶機。只要這個客戶機可以上網通訊並遵守協議,他就可以進入伺服器。實際上也就是說,使用者的 Macintosh可以使用Telnet和其他的的Internet的工具,從而能讓很多不同的系統為其工作。
就使用來說,一個應用層協議通常允許客戶機和伺服器有不同的資料設定,並通告客戶機和伺服器使用相互的通訊方式。這些經常是有每行在開始的幾個位元組的文字程式來完成的。如果伺服器傳送一個以“TXT”字元開頭的行命令給客戶, “TXT” 後邊其他的資料就被送入螢幕顯示。如果一行的開始是以“CMD”開始,則表明這些資訊是從服那麼這行務軟體到客戶軟體。使用者是看不到這些的,這是因為在資訊傳送到時這些控制訊號已去掉了。
Telnet的命令模式
除了在Telnet是如何工作的例子介紹的以外,Telnet還有很多的特點。Telnet可傳送除了"escape"的任何字元到遠端主機上。因為"escape"字元在Telnet中是客戶機的一個特殊的命令模式,它的預設值是"Ctrl-]"。但要注意不要與鍵盤上的Esc鍵混淆,我們可以設定"escape"為任意某個字元,只是對Telnet來說以為著該字元不可能再被傳送到遠端主機上,而Esc鍵是一非列印字元,Telnet用它來刪除遠端系統中的命令。而且還應記住,"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
雖然命令很多,甚至還有子命令,但只有一些是常用的。現在介紹以下的幾個:
Close:
該命令用語終止連線。它自動切斷與遠端系統的連線,也可以用它退出Telnet,在冒失的進入一個網路主機時,想退出的話,就可以用到這個命令。
open:
用它來與一個命名機器連線,要求給出目標機器的名字或IP地址。如果未給出機器名,Telnet就將要你選擇一個機器名。必須注意,在使用"Open"命令之前應該先用"close"來關閉任何已經存在的連線。
Set ECHO:
用於本地的響應是On或是Off。作用是是否把輸出的內容顯示在螢幕上。和DOS的ECHO基本上是一樣。如果機器是處於ECHO ON的話,想改變為OFF,那麼就可以輸入SET ECHO,想再改變回ECHO OFF,那麼就再鍵入SET ECHO就可以了。(這兒說的比較簡短,如果有不明白的,可以與我聯絡)
Set escape char:
建立"escape"字元到某個特殊的符號,若想用某種控制符號來代替,可以用"asis"或者鍵入符號"^"加字母b(如:^b)。在正常工作時,是不需要用"escape"這個字元的,並且這個被用作"escape"的符號不應該再被使用。這類似於許多程式中對鍵盤上的每一個鍵設定其真正的涵義。但如果正在執行一個 daisy-chained 應用系統,那麼可以重新議定"escape"字元的特徵便是很有用的。例如:用Telnet從系統A到系統B,接著又用Telnet註冊進入系統C。如果正在系統C上工作時出了故障,那麼當"escape"代表符是相同時,就沒法中斷系統B到系統C的連線。鍵入"escape"代表符,將總是處於系統A的命令模式。如果在每個Telnet部分使用不同的"escape"代表符,便可以透過鍵入適當的符號,來選擇其中一個命令模式,這也可以用於其他的應用中(像終端模擬)。
Quit:
用它可順利地推出Telnet程式。
Z:
用語保留Telnet但暫時回到本地系統執行其他命令。並且在Telnet中的連線以及其他的選擇在Telnet恢復時仍被保留。
Carriage Return:
用於不具體的一個命令從命令模式返回到所連線的遠端機器上。另外,還有許多其他的命令可以推出命令模式。下面舉一個例子,是從註冊進入到porky.math.ukans.edu ,然後進入命令模式,然後返回porky::
password:
porky/%CTRL-]
telnet
telnet:set escape ^b
escape character is ’^b’
porky/%logout
ns.bta.net.cn%
注意:set命令也可以退出命令模式。當然,如果不行,可以回車輸入一空行,也能回到porky
Telnet是進行遠端登入的標準協議和主要方式它為使用者提供了在本地計算機上完成遠端主機工作的能力。透過使用Telnet,Internet使用者可以與全世界許多資訊中心圖書館及其它資訊資源聯絡。Telnet遠端登入的使用主要有兩種情況。第一種是使用者在遠端主祝上有自己的帳號(Account),即使用者擁有註冊的使用者名稱和口令;第二種是許多Internet主機為使用者提供了某種形式的公共Telnet資訊資源,這種資源對於每一個Telnet使用者都是開放的。Telnet是使用最為簡單的Internet工具之一。在Unix系統中,要建立一個到遠端主機的對話,只需在系統提示符下輸人命令:
Telnet 遠端主機名
Telnet簡介
Telnet用於Internet的遠端登入.它可以使使用者坐在已上網的電腦鍵盤前透過網路進入的另一臺電腦已上網的電腦,使它們互相連通.這種連通可以發生在同一房間裡面的電腦或是在世界各範圍內已上網的電腦.習慣上來說,被連通計算機,並且為網路上所有使用者提供服務的計算機稱之為伺服器(Servers),而自己在使用的機器稱之為客戶機(Customer).一旦連通後,客戶機可以享有伺服器所提供的一切服務.使用者可以執行通常的互動過程(註冊進入,執行命令),也可以進入很多的特殊的伺服器如尋找圖書索引.網上不同的主機提供的各種服務都可以被使用.
使用Telnet的最簡單的方法是在命令列鍵入:
%telnet remote-computer-name(or IP)
這裡使用的是UNIX系統的C shell,因為命令的選擇是百分號"%".如果使用的是其他的計算機系統(比如os,VAX/VMS,Macintosh)命令,只在細節上有些差異,而在本質上是大同小異的,下面舉一個基本的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的遠端計算機.在找到這臺計算機以後,已上網的擁護的計算機就成為它的一個終端.這時螢幕出現的對話與使用者在host上連線的終端一樣。使用者必須註冊進入(login)和登出推出(logout).在login後,可給出任何適合遠端系統的命令,因為"porky.math.ukans.edu"面向的是UNIX系統,所有標準的UNIX命令(想ls和pwd)都可以使用.當用戶從遠端系統退出時,也就從Telnet退出,便可以執行自己的本地系統.實際上,Telnet是一個可以註冊進入遠端計算機系統的工具.
Telnet的工作方法
當開始執行Telnet時,情況如何呢?一個應用系統由兩部分組成:“client”——這就是Telnet簡介所說的客戶機,另一部分是“server”——這是運行於網路計算機上提供服務的系統,稱之為伺服器。而網路(即使用TCP也使用UDP的伺服器)則是提供兩者(Clinet與Server)通訊的工具。
這裡要求客戶機必須做到:
(1)建立一個網路與伺服器間的TCP連線
(2)以方便的方式接收輸入
(3)對某些標準的格式化輸入作重新格式化並作重新格式化並傳送給伺服器。
(4)以某些標準的格式化從伺服器中接受輸出
(5)重新格式化顯示給自己的輸出
伺服器軟體是運行於主機上提供服務的系統,如果沒有執行服務系統,也就不能提供相應的服務。
某一類服務被呼叫,它就可以:
(1)通知網路軟體,讓它準備連線;
(2)等待一個標準的格式化要求的產生;
(3)服務請求;
(4)傳送一個標準格式的結果給客戶;
(5)重新等待
一個伺服器應該能夠處理各種客戶,有的是執行在同類的電腦上的,而有的是執行在 IBM / PCs , Macintoshes , Amigas等各種不同的機器上。為了做到這一點,伺服器必須具有一套通訊規則,這種規則通常叫做協議。由於Telnet協議用於兩個應用層之間所以叫做應用層協議。任何人都可以在任何型別的電腦上編制一個客戶機。只要這個客戶機可以上網通訊並遵守協議,他就可以進入伺服器。實際上也就是說,使用者的 Macintosh可以使用Telnet和其他的的Internet的工具,從而能讓很多不同的系統為其工作。
就使用來說,一個應用層協議通常允許客戶機和伺服器有不同的資料設定,並通告客戶機和伺服器使用相互的通訊方式。這些經常是有每行在開始的幾個位元組的文字程式來完成的。如果伺服器傳送一個以“TXT”字元開頭的行命令給客戶, “TXT” 後邊其他的資料就被送入螢幕顯示。如果一行的開始是以“CMD”開始,則表明這些資訊是從服那麼這行務軟體到客戶軟體。使用者是看不到這些的,這是因為在資訊傳送到時這些控制訊號已去掉了。
Telnet的命令模式
除了在Telnet是如何工作的例子介紹的以外,Telnet還有很多的特點。Telnet可傳送除了"escape"的任何字元到遠端主機上。因為"escape"字元在Telnet中是客戶機的一個特殊的命令模式,它的預設值是"Ctrl-]"。但要注意不要與鍵盤上的Esc鍵混淆,我們可以設定"escape"為任意某個字元,只是對Telnet來說以為著該字元不可能再被傳送到遠端主機上,而Esc鍵是一非列印字元,Telnet用它來刪除遠端系統中的命令。而且還應記住,"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
雖然命令很多,甚至還有子命令,但只有一些是常用的。現在介紹以下的幾個:
Close:
該命令用語終止連線。它自動切斷與遠端系統的連線,也可以用它退出Telnet,在冒失的進入一個網路主機時,想退出的話,就可以用到這個命令。
open:
用它來與一個命名機器連線,要求給出目標機器的名字或IP地址。如果未給出機器名,Telnet就將要你選擇一個機器名。必須注意,在使用"Open"命令之前應該先用"close"來關閉任何已經存在的連線。
Set ECHO:
用於本地的響應是On或是Off。作用是是否把輸出的內容顯示在螢幕上。和DOS的ECHO基本上是一樣。如果機器是處於ECHO ON的話,想改變為OFF,那麼就可以輸入SET ECHO,想再改變回ECHO OFF,那麼就再鍵入SET ECHO就可以了。(這兒說的比較簡短,如果有不明白的,可以與我聯絡)
Set escape char:
建立"escape"字元到某個特殊的符號,若想用某種控制符號來代替,可以用"asis"或者鍵入符號"^"加字母b(如:^b)。在正常工作時,是不需要用"escape"這個字元的,並且這個被用作"escape"的符號不應該再被使用。這類似於許多程式中對鍵盤上的每一個鍵設定其真正的涵義。但如果正在執行一個 daisy-chained 應用系統,那麼可以重新議定"escape"字元的特徵便是很有用的。例如:用Telnet從系統A到系統B,接著又用Telnet註冊進入系統C。如果正在系統C上工作時出了故障,那麼當"escape"代表符是相同時,就沒法中斷系統B到系統C的連線。鍵入"escape"代表符,將總是處於系統A的命令模式。如果在每個Telnet部分使用不同的"escape"代表符,便可以透過鍵入適當的符號,來選擇其中一個命令模式,這也可以用於其他的應用中(像終端模擬)。
Quit:
用它可順利地推出Telnet程式。
Z:
用語保留Telnet但暫時回到本地系統執行其他命令。並且在Telnet中的連線以及其他的選擇在Telnet恢復時仍被保留。
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是進行遠端登入的標準協議和主要方式它為使用者提供了在本地計算機上完成遠端主機工作的能力。透過使用Telnet,Internet使用者可以與全世界許多資訊中心圖書館及其它資訊資源聯絡。Telnet遠端登入的使用主要有兩種情況。第一種是使用者在遠端主祝上有自己的帳號(Account),即使用者擁有註冊的使用者名稱和口令;第二種是許多Internet主機為使用者提供了某種形式的公共Telnet資訊資源,這種資源對於每一個Telnet使用者都是開放的。Telnet是使用最為簡單的Internet工具之一。在Unix系統中,要建立一個到遠端主機的對話,只需在系統提示符下輸人命令:
Telnet 遠端主機名