DOS下常用網絡命令技巧

DOS,即使對於許多自稱瞭解計算機的人而言,也是一個比較陌生的詞彙。然而,在網絡管理過程中,DOS命令卻是一個不可逾越的障礙,幾乎所有的網絡命令都運行在DOS界面。對初級用戶而言,掌握一些常用網絡命令在網絡測試和配置操作中非常實用;對高級用戶而言,瞭解網絡命令的常用參數和使用技巧,可以獲取更多的配置和故障信息,從而更好地、有針對性地解決問題。

 

一、顯示和修改本地ARP列表——ARP

ARPAddress Resolution Protocol)是負責將IP地址解析成MAC地址的協議,對於網絡中的高層應用程序,網絡主機之間的通訊是靠IP地址來完成,但在TCP/IP協議的最低層,主機之間的信息交換則是通過MAC地址來定位的。每臺裝有網卡的主機中都有一個ARP表,保存着同一網絡中IPMAC之間的映射記錄。ARP表並不是一成不變的,大約每2分鐘更新一`次,這種紀錄稱爲動態式(Dyanmi)記錄。還有一種稱爲靜態記錄,也就是表中的記錄不變,直到TCP/IP協議重啓後纔會消失。

ARP命令用於顯示和修改“地址解析協議(ARP)”緩存中的項目。ARP緩存中包含一個或多個表,它們用於存儲IP地址及其經過解析的以太網或令牌環網絡適配器的物理地址。計算機上安裝的每一個以太網或令牌環網絡適配器都有自己單獨的表。ARP命令可以對這個表中的記錄進行添加和修改,實現對ARP表的維護。如果使用ARP命令時不帶參數,則顯示幫助信息。
實例1 要查看本機的ARP表,可以在命令提示符下鍵入如下命令:
ARP –a
回車,命令運行結果顯示如圖1所示。
1
這就是當前本機的ARP表中的記錄,也就是近一段時間內與本機通訊的主機。如圖中所示,Internet Address顯示的是IP地址,而Physical Address顯示的是該IP地址所對應的MAC地址。Type說明該記錄是動態記錄。
實例2:添加將IP地址192.168.0.9解析成物理地址00-50-BA-25-96-00的靜態ARP緩存項。在命令提示符下,鍵入如下命令:
arp -s 192.168.0.9 00-50-BA-25-96-00
回車執行該命令,該靜態項即添加完畢。然後執行arp -a命令查詢ARP表,顯示如圖14所示的記錄。
動態記錄

靜態記錄

2
ARP在添加靜態記錄之前,必須有一個MAC尋址的過程。當一個TCP/IP的包要發出時,會先查看本機ARP表中的記錄是否有該IP的記錄。如果有,則直接轉換成該IP對應的MAC,如果沒有,則將發一個ARP Request廣播封包向對方查詢MAC地址,這個廣播包會被同一子網內的所有主機收到,但只有與該IP相同的主機接收,並回答一個ARP APPLY封包,該包有相應IPMAC的信息,這樣就可以找到相應的主機的MAC地址。

ARP表中的記錄一般是動態的,大約每2分鐘刷新一次。如果本地主機有頻繁的IP要訪問時,比如網關、代理服務器、路由器等,爲了減少發ARP Request廣播包,可以在ARP表中創建靜態記錄。

 

二、查看網絡配置信息命令——IpconfigWinipcfg

Ipconfig命令用於顯示本地網卡的IP地址,使用該命令,可以查看當前所有的TCP/IP網絡配置值、刷新動態主機配置協議(DHCP)和域名系統(DNS)設置。該命令只能在Windows 98/Me/2000/XP的命令行窗口中運行,而不能在實模式DOS環境、或者Windows 2000/XP的故障恢復控制檯下運行。而且Windows 98/MeWindows 2000/XP系統下的Ipconfig命令之間也存在着一定的區別,下面分別以Windows XPWindows 98爲例進行比較和介紹。
通常,用戶需要查看的僅僅是IP地址信息,使用不帶參數的Ipconfig就可以顯示所有適配器的 IP 地址、子網掩碼和默認網關。在命令提示符下鍵入如下命令:
Ipconfig
回車,會顯示如圖3所示運行結果。
3
該命令還可以查看主機的相關配置信息,如主機名、DNS服務器、節點類型、網絡適配置器的物理地址等。其中網絡適配器的物理地址在檢測網絡錯誤時非常有用,而且在遠程喚醒網絡上的某臺計算機時,也必須先知道該計算機網卡的物理地址,即網卡的Mac地址。由於每個網卡的Mac地址是全球唯一的,這樣就能很準確的定位到要喚醒的計算機。Windows XP的命令提示符下,鍵入如下命令:

ipconfig /all

然後回車,運行結果顯示如圖4所示。
4
Windows98下執行Ipconfig /all命令的結果和Windows XP下略有不同。在Windows98下的執行結果顯示如圖5所示。
配置信息有效期

5
另外,在Windows 98/95操作系統中,查看網絡配置信息還可以使用Winipcfg命令,執行後提供圖形化界面。在Windows 98/95MS-DOS窗口中鍵入如下命令:

Winipcfg

回車運行,顯示如圖6所示“IP配置”對話框,可以看到本機的網絡配置信息。
單擊此處,可查看不同網絡適配器的配置信息

6
如果單擊“詳細信息”按鈕,還可以查看有關主機信息、DNS服務器信息等,顯示如圖7所示對話框。
7

 

三、顯示NetBIOS協議的統計資料命令——Nbtstat

Nbtstat命令是Windows下自帶的NetBIOS管理工具,用於顯示本地計算機和遠程計算機的基於TCP/IP協議的NetBIOS統計資料、NetBIOS名稱表和NetBIOS名稱緩存。Nbtstat可以刷新NetBIOS名稱緩存和註冊的Windows Internet名稱服務(WINS)名稱。如果使用不帶參數的Nbtstat命令,將會顯示有關該命令的幫助信息。

NetBIOSNetwork Basic Input Output System,網絡基本輸入輸出系統),是局域網 (LAN) 上的程序可以使用的應用程序編程接口(API),幾乎所有的局域網計算機都是在NetBIOS基礎上工作的。NetBIOS爲程序提供了請求低級服務的統一的命令集,這些服務是管理名稱、執行會話和在網絡節點之間發送數據報所要求的。

實例1:如果要顯示計算機名爲liusm的遠程計算機的NetBIOS名稱表,在命令提示符下鍵入下面命令:
nbtstat -a liusm
回車運行後的執行結果顯示如圖8所示。
8
由此可以知道,計算機名爲liusm的遠程計算機屬於MSHOME工作組,同時能獲得遠程計算機的網絡適配器的MAC地址(12-34-56-78-90-AB)。
實例2:顯示IP地址爲211.82.219.211的遠程計算機的MAC地址和NetBIOS名稱表,可以在命令提示符下鍵入如下命令行:
nbtstat -a 211.82.219.211
回車運行後的結果顯示如圖9所示。
9
該命令的作用和實例1中的命令作用相同,這裏不再贅述。

實例3:顯示本地計算機的NetBIOS名稱表,可以在命令提示符下鍵入如下命令:
nbtstat -n
回車,運行後的結果顯示如圖10所示。
10
從執行結果中可以得知該計算機的NetBIOS名、所在域(或工作組)以及當前登錄的用戶等信息。
實例4:顯示本地計算機NetBIOS名稱緩存的內容,在命令提示符下鍵入如下命令:
nbtstat -c
回車運行後的結果顯示如圖11所示。
11
從上面的運行結果中可以看出,本地計算機曾經與211.82.216.x211.82.219.x網段的計算機連接過。因爲NetBIOS的緩存裏儲存的IP是對方已經信任你的計算機IP,因而這也給網絡安全帶來了隱患。

 

四、顯示網絡連接信息——Netstat

在服務器與網絡的管理中,需要經常查看服務器所開放的端口、當前的所有連接,以便隨時瞭解網絡狀態。這時就要用Netstat命令。該命令可以讓管理員輕鬆查看計算機系統服務是否正常,是否被“***”留下後門、***等。Netstat同時也是一個實時的***檢測工具,可以隨時查看是否有不正常的連接
Netstat命令用於顯示活動的TCP連接、計算機偵聽的端口、以太網統計信息、IP路由表、IPv4統計信息(對於IPICMPTCPUDP協議)。使用時如果不帶任何參數,Netstat命令將顯示活動的TCP連接。

實例1:顯示本機所有活動的TCP連接以及計算機偵聽的TCPUDP端口。
在命令提示符下鍵入如下命令:
Netstat –a
回車,運行後的結果顯示如圖12所示:
12
從運行結果可以知道計算機當前開放的TCPUDP端口,並與蠕蟲病毒和***程序的端口相對照,確認是否感染病毒或被惡意***。
實例2:顯示當前活動的TCP/IP連接
在命令提示符下鍵入如下命令:
Netstat -n 或者 Netstat(不帶任何參數)
回車,運行後的結果顯示如圖13所示:
13
該圖中顯示計算機的當前連接情況,來訪者的IP與連接端口一覽無遺。該命令與使用-a參數不同的是,這裏只以IP的形式來表示當前的所有連接,而不解析對方的NetBIOS名字。
實例3:顯示以太網統計信息和所有協議的統計信息
在命令提示符下鍵入如下命令:
Netstat -s-e
回車,運行後的結果顯示如圖14所示。
14
實例4:檢查路由表確定路由配置情況
在命令提示符下鍵入如下命令,
Netstat -rn
回車,運行後的結果顯示如圖15所示。
15

 

五、洞悉網絡連通測試命令——Ping

在網絡中,經常會出現網絡不通等問題,這就需要網絡管理員來檢查並排除網絡故障,包括檢查網絡配置信息,檢查硬件連接,使用網絡命令測試等,而在命令檢測中,用得最多的就是Ping命令了。

Ping是使用最頻繁的網絡測試命令,主要用於確定網絡的連通性。Ping程序使用ICMP協議來簡單地發送一個網絡包並請求應答,接收請求的目標主機再次使用ICMP返回與接收的數據一樣的數據包,於是Ping便可根據每個包發送和接收報告的往返時間,報告無響應包的百分比,這可以判斷網絡是否正確連接,以及網絡連接的狀況(丟包率)。

1. Ping命令的應用

PingWindows操作系統集成的TCP/IP應用程序之一,通常在命令提示符下運行。利用Ping命令可以有效地測試網絡連通故障,並可確定網絡故障發生的大致原因,下面就來看看該命令的簡單應用。

1Ping本地地址或127.0.0.1
Ping本地計算機的IP地址或127.0.0.1,可以確認:
l         該計算機是否正確安裝了網卡。如果測試不成功,應當在“設備管理器”中查看網卡是否有×××的“!”。如果有,則刪除該網卡或重新正確安裝。如果沒有,說明網卡安裝正確。

l         該計算機是否正確安裝了TCP/IP協議。如果測試不成功,應打開控制面板的“網絡”屬性查看是否安裝TCP/IP協議。如果沒有,則需安裝TCP/IP協議並正確配置後,重新啓動計算機並再次測試。如果已經安裝,繼續向下檢查。
l         該計算機是否正確配置了IP地址和子網掩碼。如果測試不成功,應打開控制面板的“網絡”屬性查看IP地址和子網掩碼是否設置正確。如果不正確,需重新設置,重新啓動計算機並再次測試。
2Ping同一VLAN中其它計算機的地址
Ping同一VLAN中其他計算機的地址,可以確認:
l         IP地址、子網掩碼的設置是否正確。如果測試不成功,應打開控制面板的“網絡”屬性查看IP地址和子網掩碼是否設置正確。如果設置不正確,需重新設置,重新啓動計算機並再次測試。如果設置正確,繼續向下檢查。
l         網絡連接是否正常。如果測試不成功,應當對網絡設備和通訊介質逐段測試、檢查和排除。
3Ping Internet中遠程主機的地址
Ping Internet中遠程主機的地址,可以確認:
l         網關的設置是否正確。如果測試不成功,應打開控制面板的“網絡”屬性查看默認網關設置是否正確。如果不正確,需重新設置,然後重新啓動計算機並再次測試。如果設置正確,繼續向下檢查。
l         域名服務器設置是否正常。如果使用域名測試不成功,應打開控制面板的“網絡”屬性查看域名服務器(DNS)設置是否正確。如果正確,繼續向下檢查。
l         路由器的配置是否正確。如果該計算機被加入到禁止出站訪問的IP控制列表中,那麼,該用戶將無法訪問Internet
l         Internet連接是否正常。如果到任何一個主機的連接都超時,或丟包率都非常高,則應當與ISP共同檢查Internet連接,包括線路、Modem和路由器設置等諸多方面。

2. 常見的出錯信息

常見的出錯信息通常分爲四種情況:
● unknown host
unknown host(不知名主機)表示該遠程主機名不能被命名服務器轉換成IP地址。故障原因可能是命名服務器有故障,或者其名稱不正確,或者網絡管理員的系統與遠程主機之間的通信線路有故障。
● Network unreachable
Network unreachable(網絡不能到達)表示本地系統沒有到達遠程系統的路由,可用netstat –rn命令檢查路由表來確定路由配置情況。
● No answer
No answer(無響應),遠程系統沒有響應。這種說明本地系統有一條到達遠程主機的路由,但卻接受不到它發給該遠程主機的任何分組報文。故障原因可能是遠程主機沒有工作,或本地或遠程主機網絡配置不正確,或本地或遠程的路由器沒有工作,或通信線路有故障,或遠程主機存在路由選擇問題。
● timed out
timed out(超時),表示與遠程主機的鏈接超時,數據包全部丟失。故障原因可能是到路由器的連接問題、路由器不能通過、也可能是遠程主機已經當機。

3. 應用實例

在“Ping命令的應用”一節,詳細介紹了Ping命令的應用,當出現網絡故障時,通常就是使用所介紹的順序進行網絡故障診斷與排除;在出現的Ping的結果中,分析網絡的連通性,找出故障所在,從而在故障排除過程中做到有的放矢。下面就Ping命令的實際應用列舉幾個簡單的例子。
實例1:以下範例顯示Ping的輸出:
在命令提示符下鍵入如下命令:
Ping [url]www.coolpen.org[/url]
回車執行,如果顯示如圖16所示的運行結果,則表明連接正常,所有發送的包均被成功接收,丟包率爲0
16
這裏對測試結果中的一些數據作簡單解釋:
Pinging [url]www.coolpen.org[/url] [61.159.62.166] with 32 bytes of data
這裏的“32 bytes”中的“32指的是發送的消息,及迴響的消息數據字段值爲32字節。
Reply from 61.159.62.166: bytes=32 time=44ms TTL=113
這裏的“44ms”,指的是從發送數據到收到迴響所經歷的時間,該時間值一般有一定限制,當相應時間超過4000ms(即4s)時,將顯示連接超時。
TTL=113這裏的TTL值默認爲對方主機的TTL值,根據TTL值一般可以確定該計算機使用哪種操作系統。對於使用Windows XP/2000的計算機,該值一般爲128Windows 98計算機的TTL值一般爲64Unix計算機機的TTL值一般爲255。不過在註冊表中可以隨意改變TTL值,所以利用該值來確定主機的操作系統並不一定準確。
如果執行如下命令:
Ping [url]www.coolpen.com[/url]
顯示如圖17所示測試消息,則表明網絡連接不正常,或對方對ICMP包作了過濾,因此,所有發送的包均未被成功接收,丟包率爲100%,目的主機不可到達。
17
實例2:如果網絡Ping不通,在設備或線路調試期間,可以使用“-t”參數一直進行測試。只要按下“Ctrl-C”組合鍵中止該命令爲止。
Ping -t [url]www.coolpen.net[/url]
回車運行,命令執行結果顯示如圖18所示。
18
實例3
若欲測試代理服務器或路由器的性能,可以使用大字段的消息值,從而增加網絡流量。需要注意的是,“數據”字段長度(以字節表示)默認值爲 32,指定的數據包不能大於65527
19
實例3:驗證到某個IP地址或域名的的連通性,並記錄所經過的路由。該命令在使用上與tracert有類似之處,都可以追蹤路由。
在命令提示符下,執行如下命令:
Ping -r 4 [url]www.hengshui.com[/url]
可測試與[url]www.hengshui.com[/url]的連通性,並記錄所經過的4個路由。需要注意的是,最多可以記錄9個路由。

20

 

六、數據包跟蹤診斷——Tracert

當數據報從本地計算機經過多個網關傳送到目的地時,它會尋找一條具體路徑來傳送,每次傳送數據報,不能保證或認爲總遵循唯一的一條路經。那麼如何知道發送的數據報所經過的路徑呢?這時就要用到Tracert命令。Tracert命令同樣是內置於WindowsTCP/IP應用程序之一,可以對IP地址或URL進行相應的域名轉換。Tracert一般用來檢測故障的位置,通過追蹤路由,可以判斷髮生故障的路由設備或網關,以及發生故障的區段,從而便於查找和排除故障。

Tracert診斷實用程序將包含不同生存時間(TTL)值的Internet消息控制協議(ICMP)回顯數據包發送到目標,以決定到達目標使用的路由。要在轉發數據包上的TTL之前至少遞減1,必需路徑上的每個路由器,所以TTL是有效的躍點計數。數據包上的TTL達到0時,路由器應該將“ICMP已超時”的消息發送回源系統。Tracert先發送TTL1的回顯數據包,並在隨後的每次發送過程將TTL遞增1,直到目標響應或TTL達到最大值,從而確定路由。路由通過檢查中級路由器返回的“ICMP 已超時”的消息來確定路由。不過,有些路由器下傳包含過期TTL值的數據包,而Tracert看不到。
實例1:追蹤到[url]www.hengshui.com[/url]的路由,測試局域網絡和Internet連接是否正常,以及導致故障發生的路由器的位置。
在命令提示符下執行如下命令行:

Tracert [url]www.hengshui.com[/url]
命令執行結果顯示如圖21所示,從運行結果可知,局域網絡和Internet連接均正常。
21

 

七、顯示和修改本地路由表命令——Route

大多數主機都駐留在只連接一臺路由器的網段上,因此不存在使用哪一臺路由器將數據報發表到遠程計算機上的問題,該路由器的IP地址即是該網段上所有計算機的缺省網關。但是,當網絡上擁有兩個或多個路由器時,就不一定只依賴缺省網關了。可以讓某些遠程IP地址通過某個特定的路由器來傳遞,而其他的遠程IP通過另一個路由器來傳遞。這時,需要相應的路由信息,這些信息儲存在路由表中,每個主機和每個路由器都配有自己獨一無二的路由表。大多數路由器使用專門的路由協議來交換和動態更新路由器之間的路由表。但在有些情況下,必須手動將項目添加到路由器和主機上的路由表中。這時就要用到Route命令,它用來顯示、人工添加和修改路由表項目。

如果要查看Route命令的幫助信息,可在命令提示符下運行不帶任何參數的Route命令。
下面就通過幾個簡單的實例,來具體看一看Route命令的簡單應用。
實例1:顯示路由表中的當前項目
在命令提示符下,鍵入如下命令行:
Route print
回車,命令的執行結果顯示如圖22所示。
22
由於用IP地址配置了網卡,因此所有的這些項目都是自動添加的。
實例2:顯示IP路由表中以211開始的路由
在命令提示符下鍵入如下命令:
Route print 211.*
回車,運行結果顯示如圖23所示。
23
實例3:利用route可以在計算機中設置多個默認網關。例如,對192.168.0.0網段的訪問使用192.168.0.1網關,對其他網段的訪問則使用192.168.1.1網關。那麼,可以執行以下命令:
route add 192.168.0.0 mask 255.255.255.0 192.168.0.1
route add 0.0.0.0 mask 0.0.0.0 192.168.1.1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章