解析telnet程序的數(shù)字信息內(nèi)容
telnet程序是網(wǎng)絡(luò)中非常重要的一種操控手段。它可以完成遠(yuǎn)程的一些控制。想必,很多管理員都會(huì)使用telnet程序。但是,有些時(shí)候,我們需要分析一些信息,來判斷一下目前Telnet的狀態(tài)。
連接特定的數(shù)字
在Internet中,有許多主機(jī)能為telnet提供公用服務(wù).事實(shí)上,若你查一下目錄,你會(huì)發(fā)現(xiàn)大量的項(xiàng)目是通過telnet訪問的.
許多遠(yuǎn)程主機(jī)要求你在連接時(shí)指定一特別的"接口數(shù)字",用來標(biāo)識(shí)你需要的服務(wù)類型.這里有一個(gè)例子:
密執(zhí)根大學(xué)有一臺(tái)計(jì)算機(jī)可提供美國和加拿大的天氣預(yù)報(bào) . 該機(jī)名為downwind.sprl.umich.edu.當(dāng)你與該機(jī)連接時(shí), 你必須指定一接口數(shù)字3000,即告訴該機(jī)你想使用天氣預(yù)報(bào)服務(wù).
你所要做的只是在telnet命令后加上該接口數(shù)字:
telnetdownwind.sprl.umich.edu 3000
(注意在地址與接口數(shù)字之間留一空格.)若你是在telnet> 提示符之后使用open命令連接,也用同樣方式錄入接口數(shù)字:
open downwind.sprl.umich.edu 3000
當(dāng)你使用接口數(shù)字連接遠(yuǎn)程機(jī)時(shí),你所需的程序就會(huì)開始運(yùn)行, 程序運(yùn)行完后,連接斷開,telnet程序自動(dòng)退出.
在本章我們是以大多數(shù)Unix系統(tǒng)為基礎(chǔ)來講述telnet命令的.而在其他一些系統(tǒng)中,格式可能有所不同.例如,在使用VMS操作系統(tǒng)的VAX計(jì)算機(jī)上, 你必須在接口數(shù)字前加上"/port=":
telnetdownwind.sprl.umich.edu /port=3000
若你對自己的計(jì)算機(jī)有任何不清楚的地方,***的辦法是查閱telnet的地方資料.進(jìn)一步探討接口數(shù)字
在計(jì)算機(jī)術(shù)語中,"接口"這一術(shù)語是指兩臺(tái)設(shè)備或兩個(gè)系統(tǒng)之間的連接處.例如,你可以把一臺(tái)打印機(jī)接到計(jì)算機(jī)背后的接口上,在Unix系統(tǒng)中我們說每個(gè)終端都被接到主機(jī)上各自的接口中.
Internet 術(shù)語中也使用同樣的概念.在第二章我們提到Internet 使用一種叫TCP(傳輸控制)的協(xié)議將數(shù)據(jù)從一臺(tái)主機(jī)傳到另一主機(jī). 任何時(shí)候使用TCP 來連接一臺(tái)Internet主機(jī)和另一臺(tái)主機(jī)都必須用接口數(shù)字來標(biāo)識(shí)連接類型.事實(shí)上, 有一個(gè)Internet的正式組織, 即數(shù)字管理局制訂出一套公認(rèn)的接口數(shù)字,并確保是唯一的數(shù)字.
當(dāng)缺省時(shí),telnet連接通常使用接口數(shù)字23,也就是說, 當(dāng)你未指明接口數(shù)字時(shí),telnet程序自動(dòng)連接到23號(hào)接口.因此,以下兩條指令的連接結(jié)果相同:
telnetfuzzball.ucsb.edu
telnetfuzzball.ucsb.edu 23
為了使你能與遠(yuǎn)程機(jī)連接,遠(yuǎn)程機(jī)必須運(yùn)行一個(gè)能與你使用的接口進(jìn)行通信的程序.當(dāng)該程序在等待連接時(shí),我們稱它在該接口上"接收".
因此,任何一臺(tái)能支持telnet連接的主機(jī)內(nèi)部,都必須有一個(gè)在23號(hào)接口上接收的程序.也就是說,當(dāng)你使用telnet程序與一臺(tái)遠(yuǎn)程機(jī)進(jìn)行常規(guī)連接時(shí), 它與遠(yuǎn)程機(jī)聯(lián)系并檢查在23號(hào)接口上是否有程序"接收".
只有當(dāng)你想用telnet與其它的接口連接時(shí)才需要指定一個(gè)實(shí)際的接口數(shù)字.許多Internet系統(tǒng)采用不同的接口數(shù)字來提供一些特別服務(wù).
在前一節(jié),我們用接口數(shù)字3000與一臺(tái)叫downwind.sprl.umich. edu 的遠(yuǎn)程主機(jī)連接.我們這樣做是為了使用一個(gè)特殊的程序來顯示天氣預(yù)報(bào).為了讓連接成功, 必須在遠(yuǎn)程機(jī)內(nèi)運(yùn)行該天氣預(yù)報(bào)程序, 且該程序應(yīng)在 3000號(hào)接口上接收.在許多情況下, 一臺(tái)主機(jī)可同時(shí)在一個(gè)特定接口支持一個(gè)以上的連接.例如,上述特殊的天氣預(yù)報(bào)服務(wù)器就可以同時(shí)支持100 個(gè)用戶.
telnet換碼符:CTRL-]
當(dāng)你與一臺(tái)遠(yuǎn)程機(jī)對話時(shí), 有一種方法可使你中斷工作, 直接向 telnet錄入另外的指令.例如,如果你與遠(yuǎn)程機(jī)交流有困難,你可以中斷自己的工作對話而轉(zhuǎn)回到telnet狀態(tài),再錄入quit命令.
辦法就是按一特殊的組合鍵CTRL-].即按住CTRL 鍵后再按下]鍵.當(dāng)按下該組合鍵后,它將送一信號(hào)給telnet,暫停遠(yuǎn)程連接并顯示提示符:
telnet>
現(xiàn)在你可以隨意錄入任何telnet指令(后面我們會(huì)介紹幾條重要的指令). 有些指令運(yùn)行后可命令telnet自動(dòng)恢復(fù)遠(yuǎn)程連接, 另外, 在 telnet>提示符之后,你還可隨時(shí)按回車鍵來恢復(fù)連接.
象CTRL-]這樣的鍵在技術(shù)術(shù)語中稱為"換碼符". 許多程序都允許使用一個(gè)換碼符來請求特殊服務(wù).
在Unix世界中,有一慣例是用"^"字符來表示CTRL鍵.例如 CTRL-C 就寫作^C.
現(xiàn)在我們可以理解當(dāng)telnet確定遠(yuǎn)程連接后屏幕顯示的信息: Escape character is'^]'
該顯示提醒你telnet程序的換碼符是CTRL-]. 當(dāng)然我們也可以將它改為其它字符,但通常沒有這個(gè)必要.