計算機三級網絡技術(7)
路由器的結構
- 路由器的基本概念
路由器是工作在網絡層的設備,負責將數據分組從源端主機經最佳路徑傳送到目的端主機實現在網絡層的互聯。
- 路由器的結構
路由器有硬件和軟件組成,路由器軟件主要由路由器的操作系統(互聯網操作系統組成)用於控制和實現路由器的全部功能。
路由器硬件組成部分有:中央處理器(CPU)、內存( Memory)、存儲器( Storage)、接口(Interface)。
(1)中央處理器
CPU是路由器的心臟,是路由器的處理中心,負責實現路由協議、路徑選擇計算、交換路由信息、查找路由表、分發路由表和維護各種表格,以及轉發數據包等功能。CPU的能力直接影響路由器的路由表查找時間、吞吐量和路由器的性能。
(2)內存
路由器內存用於保存路由器配置、路由器操作系統、路由協議軟件等。主要的類型有:只讀內存(ROM)、閃存(Flash)、隨機存儲器(RAM)和非易失性隨機存儲器( NVRAM)。
只讀內存(ROM)用來永久保存路由器的開機診斷程序、引導程序和操作系統軟件。
ROM的主要任務是完成路由器的初始化進程,具體包括路由器啟動時硬件診斷、裝入路由器操作系統IOS等。
ROM是只讀存儲器,不能修改其中保存的內容。
隨機存儲器(RAM)是可讀可寫存儲器。
在路由器操作系統運行期間,RAM主要存儲路由表、快速交換緩存、ARP緩存、教據分組緩沖區和緩沖隊列、運行配置文件,以及正在執行的代碼和一些臨時數據信息等。
在關機和重啟路由器之后,RAM里的數據會自動丟失。
非易失性隨機存儲器( NVRAM)也是一個可讀可寫存儲器,主要用於存儲啟動配置文件(startup-config)或備份配置文件。
NVRAM容量較小,通常存儲量只有32KB-128KB,但是存取速度非常快,而且保存的數據不會丟失。
閃存( Flash)是可擦寫的ROM,主要用於存儲路由器當前使用的操作系統映像文件和一些微代碼。
閃存的容量比較大,可以用來保存備份的配置文件,也不會丟失保存數據。
路由器的工作原理
- 路由選擇
路由選擇就是路由器根據目的地址的網絡地址部分,通過路由選擇算法確定一條從源節點到目的節點的最佳路徑。
- 分組轉發
分組轉發即沿找好的最佳路徑傳送信息分組。路由器在接收到—個數據分組時,首先査看數據分組頭中的目的P地址字段,根據目的IP地址的網絡地址部分去查詢路由表。
注意:在數據分組通過每一個路由器轉發時,分組中的目的MAC地址是變化的,但是它的目的網絡地址始終不變。在轉發過程中,MAC地址為路由器MAC地址,會不斷變化。
- 路由表
路由表中記錄着所有路由信息,路由表的內容主要包括目的網絡地址及其所對應的目的端口或下一跳路由器地址或缺省路由的信息。
第1列表示路由表項的來源,標識這個路由表項是通過什么方式或者通過何種路由選擇協議建立的。
“C"表示直連路由( conected),表示目的網絡直接與路由器端口相連;(0)
“S"表示為靜態( static)路由;(1)
"T"表示使用IGRP內部網關路由協議學習到的路由信息;(100)
“O"表示使用OSPF開放最短路徑優先協議學習到的路由信息;(110)
第2列表示的是目標網絡的地址和掩碼長度;
第3列表示目的端口或者下一跳路由器的地址;
第4列“[]“中的前半部分為管理距離,后半部分為權值;(P163-164)
【解題技巧】 Gateway of last resort is 192.168.1.254 to network 0.0.0.0
C 192.168.2.0/24 is directly connected,Fast Ethernet 0/1(端口名)
192.168.3.0/30 issubnetted ,1subnets
S* 0.0.0.0/0 [1/0] via 192.168.1.254
S 210.202.60.0/20 [1/0] via 192.168.1.254
S 211.210.16.0/21 [1/6] via 192.168.2.254
S 202.76.0.0/20 [10] via 192.168.3.254
出題點:connected+端口名(如果是三層交換機, connected+虛擬局域網號)
via+目的網絡(IP地址)
管理距離值
路由器的工作模式
- 用戶模式: Router>( User EXEC)
在該模式下,用戶只能運行少數的命令(如ping、 show version、 telnet等),有限度地查看路由器的相關信息,但不能對路由器的配置做任何修改,也不能查看路由器的配置信息,只能對路由器做一些簡單的操作,因而它是一個只讀模式。
- 特權模式: Router#( Privileged EXEC)
在用戶模式下,輸入“enable"命令后按回車鍵,即可進入超級權限模式(如果設置了口令,還需要在回車后按提示輸入口令)。該模式下,最常用的操作包括管理系統時鍾、進行錯誤檢測、查看和保存配置文件、清除閃存、處理並完成路由器的冷啟動等操作。
- 全局配置模式:Router( config)#(Global Configuration)
在特權模式下,輸入“config terminal"命令后回車,即可以進入全局配置模式。在全局配置模式下,可以配置子模式、接口配置子模式等其他配置模式。
- RXBOOT橫式:>
當密碼丟失時,可以從該模式下恢復,因此該模式是路由器的維護模式。
- 設置( SETUP)模式
在任何時候,要進入設置模式,在特權橫式下,輸入setup即可。新路由器第一次進行配置時,系統會自動進入設置模式,並詢問是否采用該方式進行配置。
路由器的基本配置及常用命令
- 路由器的配置方式
-
通過控制端口( Console)進行配置管理
-
使用 telnet遠程登錄配置,即使用telnet遠程登錄到路由器上進行配置管理。
-
使用TFTP服務,以復制配置文件、修改配置文件的形式配置路由器。
-
在AUX端口連接一台 Modem,在遠端撥號配置路由器。
-
使用網絡管理協議SNMP修改路由器配置文件的方式,對路由器進行配置。
- 路由器的基本配置
路由器的基本配置一般都是通過使用 Console端口配置方式完成,配置的內容主要包括配置路由器的主機名、超級用戶口令和遠程登錄口令等,包括網絡的基本檢測命令和配置文件的保存命令。
(1)配置路由器的主機名
在全局配置模式下
Router(config)#hostname Router-test
Router-test(config)#
(2)配置超級用戶口令
Router-test# configure terminal
Router-test(config)#enable secret 111111(設置超級用戶明碼密碼)
Router-test(config)#enable password 7111111(設置超級用戶加密密碼)
Router-test(config)#
(3)設置系統時鍾
命令格式: calendar set hh:mm:ss <1-31> MONTH <1993-2035>
Router-test# calendar set 20:26:00 3 may 2013
3路由器常用命令
(1)退出命令
無論是從端口模式退岀,返回全局配置模式,還是從全局配置模式退岀返回特權用戶模式,都可以使用exit命令—級一級地退出,也可以使用end命令,直接退回到特權用戶模式。
Router-test(config-if)# exit
Router-test(config)# exit
Router-test #
或
Router-test(config-if)# end
Router-test #
(2)保存配置
當完成路由器配置,需要保存配置時,可以在特權用戶模式下,使用 write命令。
Router-test>enable(進入特權用戶模式)
Router-test# write memory(保存路由器配置到 NVRAM中)
Router-test #write network tftp(保存到TFTP服務器中)
若要刪除路由器的全部配置,也可以在特權用戶模式下,使用 write命令。
Router -test #write erase(清除配置文件)
(3)網絡的基本檢測命令
-
ping命令使用echo協議,通過向目標主機發送數據包,根據目標主機的應答情況,來了解路徑的可靠性、鏈路的延遲時間和目的主機是否可以到達,從而判別到目標網絡的連通情況。
-
trace命令是—個實用的網絡診斷工具,它不僅能診斷到目的網絡的連通性,還能跟蹤到目標網絡轉發路徑上每一級路由器的工作狀況、延遲時間(最多30跳,超過則視為不可達)等。
-
telnet命令在進行網絡診斷時,需要經常登錄到不同路由器上迸行査看。一般路由器可支持5個telnet同時連接。該命令可在用戶模式或特權用戶模式下使用。
-
show命令可以査看到路由器的配置情況、接口的工作狀態、路由表信息、路由器軟硬件版本、路由器資源的利用情況和各種協議工作信息等。該命令可以在用戶模式下或特權用戶模式下運行,但不同模式下可以查看的信息不同。在用戶模式下可以査看路由器系統的軟硬件版本、系統時鍾、flash的使用情等。在特權用戶模式下,則能夠査看路由器配置、路由表信息、I的相關信息以及IP協議的統計信息等。
路由器的接口配置
- 路由器接口的基本配置
(1)配置接口描述信息
進入端口配置模式,使用 description命令:
Router-test(config)# interface f0/1
Router-test(config-if)#description To-websever
Router-test(config-if)#
(2)配置接口帶寬
進入接口配置模式,使用 bandwidth命令設置接口帶寬,帶寬單位是 kbit/s。
Router-test(config)#interface f0/1
Router-test(config-if)#bandwidth 100000
Router-test(config-if)#
(3)配置接口地址。
進入接口配置模式,使用 ip address$命令配置接口的IP地址。
命令格式:ip address<IP地址><子網掩碼>
Router-test(config)#interface f0/1
Router-test(config-if) #ip address 192.168.1.254 255.255.255.0
Router-test(config-if)#
(4)接口的開啟與關閉
進入接口配置模式,使用 shutdown、 no shutdown命令關閉和開啟接口。
Router-test(config-if)#shutdown(關閉接口)
Router-test(config-if) #no shutdown(打開接口)
Router-test(config- if)
- 配置POS接口
POS( Packet over SONET/SDH)是一種利用 SONET/SDH提供的高速傳輸通道直接傳送數據包的技術,同時它也是一種高速、先進的廣域網連接技術。
POS使用的鏈路層協議主要有PPP和HDLC。目前POS可以提供155 Mbit/s、622 Mbit/s、2.5 Gbit/s和10 Gbit/s等多種傳輸速率的接口。
POS接口的配置任務包括:接口帶寬、接口地址、接口的鏈路層協議、接口的幀格式、接口的CRC校驗和flag(幀頭中凈負荷類型的標志位)等。
POS可選的幀格式是sdh和 sonet,s1s0=00表示是 sonet幀的數據,s1s0=10(十進制2)表示是sdh幀的數據。
POS可選的crc校驗位是16和32。
在全局配置模式下,配置操作如下:
Router-test(config)#interface POS0/1
Router-test(config-if) #description To-lab5
Router-test(config-if)#bandwidth 10000000
Router-test(config-if) #ip address 192.168.5.1 255.255.255.252
Router-test(config-if)#crc16
Router-test(config- lf)pos framing sonet
Router-test(config-if) #no ip directed-broadcast
Router-test(config-if) #pos flag s1s0 0
Router-test(config-if) #no shutdown
Router-test(config-if) #exit
Router-test(config)# exit
Router -test #
- Loopback接口的配置
環回( loopback)接口是一種應用最為廣泛的虛接口, loopback接口號有效值為0-2147483647,主要用於網絡管理。網絡管理員為 loopback接口分配一個IP地址最為管理地址,其掩碼應為255.255.255.255。loopback接口不會關閉,總是處於激活的狀態loopback接口的參數配置比較簡單,主要配置IP地址。
在全局配置模式下:
Router-test(config )#interface loopback 0
Router -test( config-if# ip address192.168.100.1 255.255.255.255(配置接口IP地址和掩碼,注意環回接口地址的掩碼一般為4個255)
Router-test(config-if)# no ip route-cache(禁用 groute-cache功能)
Router-test(config-if)#no ip mroute-cache
Router-test(config-if)#exit
Router-test(config) #exit
Router#
路由器的靜態路由配置
- 靜態路由概念
靜態路由是指由網絡管理員手工配置的路由信息,使用靜態路由協議時,路由器不能根據網絡的實際情況動態地進行路由選擇。當網絡的拓撲結構或鏈路的狀態發生變化時,也無法動態地更新路由表,必須由網絡管理員手動去修改路由表中相關的靜態路由信息。因此它適合規模較小,網絡拓撲結構沒有變化的局域網和采用點到點方式連接的較為簡單的網絡互連環境。
- 靜態路由配置命令
靜態路由由“ip route”命令在全局配置模式下配置,使用“ no ip route“命令可刪除靜態路由配置。靜態路由配置的命令格式如下:
命令格式:ip route<目的網絡地址><子網掩碼><下一跳路由器的IP地址>
Router-test(config)# ip route 10.0.0.0 255.0.0.0 192.168. 1.1
其中,默認路由的靜態配置方式為:
ip route 0.0.0.0 0.0.0.0下—跳路由器的IP地址
動態路由協議配置
- OSPF的基本配置
① Router ospf:該命令用來啟動OSPF進程,命令格式為“ Router ospf< Process ID>“,其中Process ID(PID)是OSPF的進程號,它的范圍是1-65535,Process ID可以在指定范圍內隨意設置,它只對本地路由器內部有意義,不同的路由器PID可以相同,也可以不同。
② network ip:該命令用來定義參與OSPF的子網地址,它的命令的格式為“network <子網號><子網掩碼的反碼><area區域號>“,在單個IP地址參與OSPF時也使用此命令。
其中,子網掩碼的反碼的計算方法為,將子網掩碼表示成二進制,然后各位取反,再轉換成10進制即可。如子網掩碼255.0.0.0的反碼為0.255.255.255。
③ range:該命令用於定義某一特定范圍子網的聚合,它的命令格式為“area <區域號> range <子網地址><子網掩碼>“
(1)配置參與OSPF的網絡地址
Router-test(config) #router ospf 10
Router-test(config-router)#network 192.168.1.0.0 0.0.255 area 0
Router-test(config-router)#exit
Router-test(config)# exit
Router -test#
(2)配置單個IP地址參與OSPF
Router-test(config ) router ospf 10
Router-test(config-router)#network 192.168.1.1.0 0.0.0.0 area 0
Router-test(config-router)#exit
Router-test(config)# exit
Router-test#
(3)使用 area range命令定義參與OSPF的子網地址
Router-test(config )# router ospf 10
Router-test(config-router)# area 0 range 212.37.123.0 255. 255. 255. 0
Router-test(config-router)#exit
Router-test(config)# exit
Router -test#
路由器DHCP的配置
- DHCP服務器的配置
設置為DHCP服務器,在路由器上需要完成的配置任務主要是建立IP地址池(Pool)和配置IP地址池的相關參數。首先需要配置的是IP地址池的名稱,再進入DHCP地址池配置模式,在該配置模式下對DHCP進行配置,主要任務包括:IP地址池的子網地址和子網掩碼、默認網關、域名和域名服務器地址、IP地址租用時間等配置。
(1)IP地址池的建立
配置方法為在全局配置模式下使用“ip dhcp pool < name>“命令為地址池賦予一個名稱,其中< name>是為所建的地址池提供的名稱,可以是一組字符串或數字。
Router-test(config)ip dhcp pool 123(建立名為123的地址池)
Router-test(dhcp-config)
(2)IP地址池的子網地址與子網掩碼的配置
IP地址池建立后,便進入地址池配置模式,在該模式下可進行IP子網地址和子網掩碼的配置,用於設定DHCP服務器可以分配的IP地址的范圍。配置的方法是在IP地址池配置模式下,執行“network<網絡地址><子網掩碼>”命令,其中,<子網掩碼>可采用標准的子網掩碼表示(如255.255.255.0)或使用掩碼前綴長度表示(如/24)。
Router-test(dhcp-config)#network 192.168.1.0 255.255.255.0
Router-test(dhcp-config)#
上述命令也可以表示如下:
Router-test( dhcp-config) network 192.168.1.0/24
Router-test( dhcp-config)#
(3)排除不用於動態分配的IP地址
配置方法為在全局配置模式下,使用“ ip dhcp excluded- address low-address [high-address]"命令,其中“low- address [high- address]”表示要排除的IP地址的范圍。
①排除從192.168.1.1到192.168.1.10的一段IP地址
router-test(config)#ip dhcp excluded-address 192.168.1.1 192.168.1.10
router-test(config)#
②排除單個IP地址192.168.1.11。
router-test(config)ip dhcp excluded-address 192.168.1.11
router-test(config)#
(4)配置默認網關。
動態分配IP地址時,還需要同時為客戶端指定默認網關,以便客戶端TCP/IP協議正常工作。
配置方法為在地址池配置模式下,執行“default- router address [address2 ... address8]″命令,其中默認網關的地址,最多可以設置8個。
router-test(dhcp-config)#default-router 192.168.1.254
router-test(dhcp-config)#
(5)配置P地址池的域名系統。
①配置DNS
域名服務器的配置方法為在地址池配置模式下使用“dns-server address”命令,該命令允許最多配置8個域名服務器地址,但是在實際應用中,域名服務器一般只有兩個或三個。
router -test( dhcp-config)#dns-server 202.102.192.68(在地址池配置模式下)
router-test(dhcp-config)#
②配置DHCP客戶端域名
IP地址池中客戶端域名的配置方法為在DHCP地址池配置模式下,使用“ domain-name< name>”命令,其中< name>為指定的域名名稱。
router-test(dhcp-config)#domain-name aaa.com.cn
router-test(dhcp-config)#
(6)IP地址租用時間
在DHCP地址池配置模式下,使用“lease {day [hours] [minutes] | infinite}“命令,其中參數可以包含天數、小時數以及分秒數,還可以設置為永不過期(infinite)。
router-test( dhcp-config) #lease 0 3(設置租用的間為小時)
router-test(dhcp-config)lease infinite
router-test(dhcp-config)#
路由器IP訪問控制列表的配置
- IP訪問控制列表功能
訪問控制列表( Access Control list,ACL)通過在路由器接口處控制路由數據包是被轉發還是被阻塞來過濾網絡通信流量。路由器根據ACL中指定的條件來檢測通過路由器的毎個數據包,從而決定是轉發還是丟棄該數據包。
- IP訪問控制列表的分類
標准訪問控制列表只能檢查數據包的源地址,根據源網絡、子網或者主機的P地址來決定對數據包的過濾。
標准訪問控制列表的表號范圍是1-99。后來又進行擴展,擴展的表號是1300-1999。
擴展訪問控制列表可以檢査教據包的源地址和目的地址,根據源網絡或者目的網絡、子網主機的IP地址決定數據包的過濾操作。
擴展訪問控制列表除了檢査源地址和目的地址外,還可以檢査指定的協議,根據數據包頭中的協議類型進行過濾,比如P協議、ICMP協議、TCP協議和UDP協議等。
擴展訪問控制列表的麥號范圍是100-199,后來又進行了擴展,擴展的表號是2000-2699。
- 配置IP訪問控制列表
-
IP訪問控制列表是一個連續的列表,至少由一個“ permit(允許)”語句和一個或多個“deny(拒絕)”語句組成。
-
IP訪問控制列表用名字(name)或表號( number)標識和引用。
-
在配置IP訪問控制列表的首要任務就是使用“aces-lis‘“或“ ip access-list“命令,定義一個訪問控制列表。
-
access-list命令要求只能使用表號標識列表,而 ip access-list命令可以使用表號或者名字標識列。
-
在配置過濾規則時,ACL語句順序很重要。
-
路由器執行ACL是按照配置的問控制列表中條件語句來決定的。
-
數據包只有在跟第一個判斷條件不匹配時才能被交給ACL中下—個條件語句迸行比較。
-
若要允許“202.204.4.2″以外的所有源地址通過路由器,這時就需要先配置“deny 202.204.4.2″再配置“ permit any any。
-
通配符掩碼(訪問控制列表掩碼位配置過程)是一個32位的數字字符串,它被用點號分成4個8位組,每組包含8位。
注意通配符掩碼即為子網掩碼的反碼。
-
在通配符掩碼位中,0表示“檢查教據包的IP地址相對應的比特位”,1表示“不檢查(忽略)數據包的IP地址相對應的比特位”。
-
可以使用縮寫字“any“代替0.0.0.0 255.255.255.255,代表所有主機。
-
通配符host
例如: Router(config)#access-list 1 deny 172.33.160.29 0.0.0.0
等於: Router( config)#access-list 1 deny host 172.33.160.29
與整個主機地址的所有位相匹配,可以使用縮寫字“host“
(1)使用 ip access-list命令
①定義訪問控制列表。
命令格式:access-list<表號> {permit | deny}<協議類型><IP源地址/目的地址><子網掩碼的反碼> [operator] [operand]
其中, operator(操作)有It(小於)、gt(大於)、eq(等於)、neq(不等於)幾種;operand指的是端口號。
例:拒絕轉發所有IP地址進出的、端口號為1433的UDP協議數據包。
在全局配置模式下:
Router(config)#access-list 130 deny udp any eq 1433
Router(config)#access-list 130 permit ip any any
Router(config)#
配置應用接口:
Router(config)#interface g0/1
Router(config-if) #ip access-group 130 in
Router(config-if) #ip access-group 130 out
Router(config-if)#
(2)使用 ip access-list命令
命令格式:ip access-list extended | standard access-list-number | name
其中,== extended | standard分別表示訪問控制列表的類別,access-list-number | name表示可以選擇標號或名稱方式對訪問控制列表進行標識==
在擴展或標准訪問控制模式下(如:Router( config-ext-nacl)#),配置過濾規則,
命令格式:permitideny protocol<IP源地址 | IP目的地址><子網掩碼的反碼> [operator] [operand]
②應用到接口。
命令格式: ip access-group<表號>{in | out}
其中 access-list-number指出連接到這個接口的訪問控制列表表號;in | out指示該ACL是應用到入站接口還是出站接口。
如果in和out都沒有指定,那么默認認為是out。
例:拒絕轉發所有IP地址進與出方向的、端口號為1437的UDP協議數據包
在全局配置模式下:
Router( config)# access-list extended130(進入擴展訪問控制列表配置模式)
Router(config-ext-nacl)#
Router(config-ext-nacl)#demmy udp any anmy eq 1437
Router(config-ext-nacl) #permit ip any any
Router(config-ext-nacl)#
配置到應用接口:
Router(config)#interface g0/1
Router(config-if)#ip access-group 130 in
Router(config-if)#ip access-group 130 out
Router(config-if)#