3、路由交換范圍
路由器通過交換信息建立路由表,當(dāng)網(wǎng)絡(luò)結(jié)構(gòu)變化時,路由表能自動維護。
路由表跟隨網(wǎng)絡(luò)結(jié)構(gòu)變化過程稱為收儉。為了減少收儉過程引起的網(wǎng)絡(luò)動蕩,要考濾
路由交換范圍。
RIP協(xié)議通過network命令指定,例如:設(shè)置10.0.0.0網(wǎng)絡(luò)的接口參與路由信息交換
router(config-router)network 10.0.0.0
ospf協(xié)議通過network命令指定,例如:設(shè)置10.65.1.1 接口參與路由交換
router(config-router)network 10.65.1.1 0.0.0.0 area 0
area是網(wǎng)絡(luò)管理員在自治系統(tǒng)(國際機構(gòu)分配)AS(Autonomous System)內(nèi)部劃分的區(qū)域。
0.0.0.0是匹配碼,0表示要求匹配,1表示不關(guān)心。
4、路由表
路由表(Routing Table)是路由器中路由項的集合,是路由器進行路徑選擇的依據(jù),
每條路由項包括:目的網(wǎng)絡(luò)和下一跳,還有優(yōu)先級,花費等。
路由優(yōu)先匹配原則:
(1)直接路由:直連的網(wǎng)絡(luò)優(yōu)先級最高。
(2)靜態(tài)路由:優(yōu)先級可設(shè),一般高于動態(tài)路由。
(3)動態(tài)路由:相同花費時,長掩碼的子網(wǎng)優(yōu)先。
(4)默認(rèn)路由:最后有一條默認(rèn)路由,否則數(shù)據(jù)包丟棄。
二、RIP路由協(xié)議
1、RIP協(xié)議的認(rèn)識
RIP(Routing Information Protocol)協(xié)議是采用D-V(Distance-Vector)算法的距離矢量
協(xié)議;
根據(jù)跳數(shù)(Hop Count)來決定最佳路徑。最大跳數(shù)為16,限制了網(wǎng)絡(luò)的范圍。
單獨以跳數(shù)作為距離或花費,在有些情況下是不合理的,因為跳數(shù)少不一定是最佳路徑;
實際上帶寬和可靠性也是重要的因素。有時需要管理員修改花費值。
RIP有兩個版本,RIP-1 和RIP-2。
RIP-1:采用廣播方式發(fā)送報文。不支持子網(wǎng)路由。
RIP-2:支持多播方式、子網(wǎng)路由和路由的聚合。
2、路由表的維護
通過UDP協(xié)議每隔30秒發(fā)送路由交換信息,從而確定鄰居的存在。
若180秒還沒有收到某相鄰結(jié)點路由信息,標(biāo)記為此路不可達(dá)。
若再120秒后還沒有收到路由信息,則刪除該條路由。
當(dāng)網(wǎng)絡(luò)結(jié)構(gòu)變化時,要更新路由表,這個過程稱為收斂(Convergence)。
RIP標(biāo)記一條路由不可達(dá)要經(jīng)過3分鐘,收斂過程較慢。
路由表是在內(nèi)存當(dāng)中的,路由器上電時初始化路由表,對每個直接網(wǎng)絡(luò)生成一條路由。
同時復(fù)制相鄰路由器的路由表,復(fù)制過程中跳數(shù)加1,且下一跳指向該路由器。
若去往某網(wǎng)絡(luò)的下一跳是RouteA,若RouteA去該網(wǎng)絡(luò)的路由沒有了,則刪除這一路由。
跳數(shù)是到達(dá)目的網(wǎng)絡(luò)所經(jīng)過的路由器數(shù)目,直接網(wǎng)絡(luò)的跳數(shù)是0,且有最高的優(yōu)先級。
3、路由環(huán)路:
矢量路由的一個弱點就是可能產(chǎn)生路由環(huán)路,產(chǎn)生路由環(huán)路的原因有兩種,
一是靜態(tài)路由設(shè)置的不合理,再一是動態(tài)路由定時廣播產(chǎn)生的誤會。
先看靜態(tài)路由設(shè)置不合理的情況:
設(shè)兩個路由器RouterA和RouterB,其路由表中各有一條去往相同目的網(wǎng)絡(luò)的靜態(tài)路由,
但下一跳彼此指向?qū)Ψ?,形成環(huán)路。
再看動態(tài)路由造成的情況:
假設(shè)某路由器RouterA通過RouterB至網(wǎng)絡(luò)neta,
但RouteB到neta不可達(dá)了,且RouterB的廣播路由比RouterA先來到,
RouterB去neta不可達(dá),但RouterA中有去往neta路由,且下一跳是RouterB,
這時RouteB就會從RouterA那里學(xué)習(xí)該路由,將去往neta的指向RouterA,跳數(shù)加1。
去neta的路由原本是RouterB傳給RouterA的,現(xiàn)RouterB卻從RouterA學(xué)習(xí)該路由,
顯然是不對的,但這一現(xiàn)象還會繼續(xù),
RouterA去neta網(wǎng)絡(luò)的下一路是RouterB,當(dāng)RouterB的跳數(shù)加1的時候,RouterA將再加1。
周而復(fù)反形成環(huán)路,直至路由達(dá)到最大值16。
4、解決路由環(huán)路的辦法
(1) 規(guī)定最大跳數(shù)
RIP規(guī)定了最大跳數(shù)為16,跳數(shù)等于16時視為不可達(dá),從而阻止環(huán)跳進行。
(2) 水平分割
水平分割是過濾掉發(fā)送給原發(fā)者的路由信息。具體路由信息單向傳送。
(3) 毒性逆轉(zhuǎn)
水平分割的改進,收到原是自己發(fā)出的路由信息時,將這條信息跳數(shù)置成16,即毒化。
(4) 觸發(fā)方式
一旦發(fā)現(xiàn)網(wǎng)絡(luò)變化,不等呼叫,立即發(fā)送更新信息,迅速通知相鄰路由器,防止誤傳。
(5) 抑制時間
在收到路由變化信息后,啟動抑制時間,此時間內(nèi)變化項被凍結(jié),防止被錯誤地覆蓋。
三、OSPF路由協(xié)議
1、OSPF的特點
OSPF(Open Shortest Path First)開放式最短路徑優(yōu)先協(xié)議,
使用L-S(Link State)算法的鏈路狀態(tài)路由協(xié)議,路由算法復(fù)雜,適合大型網(wǎng)絡(luò),
網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)變化時,采用觸發(fā)方式,組播更新,收斂快,要求更高的內(nèi)存和CPU資源。
LSA(Link State Advertisement)鏈路狀態(tài)通告是以本路由器為根的最小路徑優(yōu)先樹。
LSDB(Link State DataBase)鏈路狀態(tài)數(shù)據(jù)庫,這是各個路由器的LSA的集合。
每個路由器的LSA是不同的,但他們的集合LSDB是相同的。
D-V算法只考慮下一跳,沒有全局的概念,交給下一跳就完成任務(wù),所以容易產(chǎn)生環(huán)路。
L-S算法每個路由器可以根據(jù)網(wǎng)絡(luò)整體結(jié)構(gòu)決定路徑,所以不會產(chǎn)生環(huán)。
2、指定路由器與路由器標(biāo)識
指定路由器DR(Dezignated Router)是ospf路由交換的中心,數(shù)據(jù)通過DR進行交換。
在路由器群組中優(yōu)先級(Router Priority)值最高的為DR,次高的為備份指定路由器BDR。
管理員可以通過設(shè)置優(yōu)先級指定DB和BDR。優(yōu)先級相同時,比較 router id。
如果沒有設(shè)置Router id,則以回環(huán)接口loopback ip值高的為DR,
如果loopback ip 沒有設(shè)置,取接口的IP地址中最高的為DR。
3、建立路由表
(1)Hello報文
Hello報文用于發(fā)現(xiàn)新鄰居問候老鄰居,選舉指定路由器DR和BDR。
(2)DD報文(Database Description Packet)
DD報文用LSA頭head信息表示LSA的變化情況,將其發(fā)送給DR,DR再發(fā)給其它路由器。
(3)LSR報文(Link State Request Packet)
LSR是請求更新包,當(dāng)LSDB需要更新時,將其發(fā)送給DR,點對點連接時直接同步LSDB。
(4)LSU報文(Link State Update Packet)
DR用多播Multicast地址224.0.0.6收,224.0.0.5發(fā),同步整個區(qū)域的LSDB。
(5)確認(rèn)后計算路由:
LSDB同步后,計算cost花費,考慮跳數(shù)、帶寬、可靠性等綜合因素求解最佳路徑。
4、單區(qū)域OSPF配置
單區(qū)域OSPF配置是指運行OSPF協(xié)議的路由器在同一個區(qū)域area n,
對于只有一個區(qū)域的網(wǎng)絡(luò),區(qū)域號是任意的,一般設(shè)置為0。
單區(qū)域OSPF有三種連接情況:
點對點的連接(Point to point)、
廣播方式的連接(Broadcast Multi Access Network)、
非廣播方式多點連接(Non Multi Access Network)。
點對點連接結(jié)構(gòu)最簡單,可靠性高,工作穩(wěn)定;
以太網(wǎng)連接是典型的廣播方式的連接;
幀中繼連接是屬于的非廣播方式多點連接類型。
5、多區(qū)域OSPF的設(shè)置
多區(qū)域中要求有一個是骨干區(qū)域area 0,邊界路由器跨接兩個區(qū)域。
多區(qū)域的區(qū)域內(nèi)部按單區(qū)域設(shè)置,多區(qū)域間通過邊界路由器的連接。
stub是末節(jié)區(qū)域,末節(jié)區(qū)域不接收ospf以外的路由信息,
如果路由器想去往區(qū)域以外網(wǎng)絡(luò),要使用默認(rèn)路由。
只有多區(qū)域中才存在末節(jié)區(qū)域。末節(jié)區(qū)域要設(shè)置在邊界路由器上。
作為企業(yè)可以將分支區(qū)域設(shè)置為末節(jié)區(qū)域,
分支區(qū)域不需要知道總部網(wǎng)絡(luò)的細(xì)節(jié),卻能夠通過缺省路由到達(dá)那里。
四、訪問控制列表
1、訪問控制列表類型與作用
訪問控制列表是對通過路由器的數(shù)據(jù)包進行過濾。
過濾是根據(jù)IP數(shù)據(jù)包的5個要素:
源IP地址、目的IP地址、協(xié)議號、源端口、目的進行的。
訪問控制列表有兩類,標(biāo)準(zhǔn)訪問控制例表和擴展的訪問控制列表。
標(biāo)準(zhǔn)訪問列表:
標(biāo)準(zhǔn)訪問列表的列表號為1~99,只對源IP地址進行訪問控制。
擴展訪問列表:
擴展訪問列表的列表號為100~199,可以對源和目的地址、協(xié)議、端口號進行訪問控制。
2、訪問控制列表的結(jié)構(gòu)
分三步:
定義一個ACL:access-list <number> <permit|deny> <sourceIP wild|any>
進入指定接口:interface <interface>
綁定指定ACL:ip access-group <number> [in|out]
3、訪問控制列表匹配原則
訪問控制列表默認(rèn)的是deny any。
一般是逐行匹配,也可以設(shè)置深度匹配。
所以寫訪問控制列表一般是從小的范圍向大的范圍,成為梯形結(jié)構(gòu)。
一般在訪問控制表的最后一行要寫permit any。
4、命名方式的訪問控制列表
命名方式是用名稱代替列表號,便于記憶,擴展了條目數(shù)量,可以是基本型或擴展型。
命令方式ACL語法有些變化,支持刪除一個列表中的某個語句。
命名語法格式:
router(config)#ip access-list {standard|extended} name
router(config std nacl)#{deny|permit}]<S_ip><S_Wild>
router(config ext nacl)#
{deny|permit}[protocol]<S_ip><S_Wild><D_ip><D_Wild>[op]
第一行是定義命名方式訪問控制列表類型:標(biāo)準(zhǔn)或擴展。
第二行是標(biāo)準(zhǔn)命名方式的訪問控制列表的語法格式。
第三行是擴展命令方式的訪問控制列表的語法格式。
五、地址轉(zhuǎn)換NAT
1、NAT的認(rèn)識
NAT(Network Address Translate)是地址轉(zhuǎn)換操作。
NAT可以將局網(wǎng)中的私有IP轉(zhuǎn)換成公有IP,解決了內(nèi)部網(wǎng)絡(luò)訪問internet的問題。
NAT可以做負(fù)載均衡,將內(nèi)部多個服務(wù)器對外映射成一臺服務(wù)器。
定義:
Inside local address: 內(nèi)部網(wǎng)的私有IP。
Inside global address: 內(nèi)部網(wǎng)的公有IP。
Outside global address: 互聯(lián)網(wǎng)中的公有IP。
Outside local address: 互聯(lián)網(wǎng)中的公有IP對應(yīng)的私有IP。
NAT可分為原地址變換SNAT和目的地址變換DNAT。
按工作方式劃分,可分為靜態(tài)NAT和動態(tài)NAT。
SNAT命令中使用source參數(shù),DNAT命令中使用destination參數(shù)。
(對已連接的返回包可自動對應(yīng))
2、靜態(tài)NAT
靜態(tài)NAT是在指定接口上,對數(shù)據(jù)包的原IP或目的IP進行一對一的轉(zhuǎn)換。
常用于將某個私有IP固定的映射成為一個公有IP。
語法:
Router(config)#ip nat inside source static <ipa> <ipb>
在指定接口inside中對數(shù)據(jù)包的原地址進行變換,一般ipa是私網(wǎng)IP,ipb是公網(wǎng)IP。
3、動態(tài)NAT
動態(tài)NAT一般用于將局域網(wǎng)中的多個私有IP從公有IP地址池中提取公有IP對外訪問。
設(shè)內(nèi)部局域網(wǎng)是:10.66.0.0,公網(wǎng)IP地址池為:60.1.1.1~60.1.1.8
當(dāng)內(nèi)部網(wǎng)絡(luò)要訪問internet時,從公網(wǎng)IP地址池中提取公網(wǎng)IP對外訪問。
語法:
定義地址池p1:
Router(config)#ip nat pool p1 60.1.1.1 60.1.1.8 netmask 255.255.255.0
定義訪問控制列表1:
Router(config)#access-list 1 permit 10.66.0.0 0.0.255.255
將訪問控制列表1的源地址,動態(tài)的從公網(wǎng)IP地址池p1的提取公網(wǎng)IP:
Router(config)#ip nat inside source list 1 pool p1
4、PAT
PAT(Port Address Translate)是端口地址轉(zhuǎn)換,將私有IP轉(zhuǎn)換到公網(wǎng)IP的不同端口上。
PAT是原將動態(tài)nat地址池pool改為用接口,并使用參數(shù)overload。屬于動態(tài)NAT。
語法:
Router(config)#access-list 2 permit 10.66.0.0 0.0.255.255
Router(config)#ip nat inside source list 2 interface s0/0 overload
5、基于NAT的負(fù)載均衡
NAT可以實現(xiàn)負(fù)載均衡。
一般的NAT都是將內(nèi)部私有IP轉(zhuǎn)換為公網(wǎng)IP,連接方向從內(nèi)部向外。
而對于負(fù)載均衡是將一個公網(wǎng)IP翻譯成多個內(nèi)部私有IP,連接訪問從外向內(nèi)。
例如:
內(nèi)部的www服務(wù)負(fù)載過重,可將多臺同樣的服務(wù)器,但對外映射成一個IP地址,
內(nèi)部的多臺服務(wù)器成為捆綁在一起構(gòu)成虛擬服務(wù)器,外部訪問這個虛擬服務(wù)器時,
路由器輪流指向各臺服務(wù)器,從而達(dá)到負(fù)載均衡。
語法:
定義地址池p2,使用rotary參數(shù)輪循。
ra(config)#ip nat pool p2 10.1.1.2 10.1.1.4 netmask 255.255.255.0 type rotary
ra(config)#access-list 1 permit 60.1.1.1
ra(config)#ip nat inside destination list 1 pool p2
在指定接口inside中建立list 2與pool p2的對應(yīng)關(guān)系。Destination表示轉(zhuǎn)換目的地址。
6、基于服務(wù)的NAT
基于服務(wù)的NAT配置,細(xì)化了NAT的應(yīng)用,轉(zhuǎn)換可以具體到協(xié)議和端口,即指定的服務(wù)上。
例如:
對內(nèi)網(wǎng)的虛擬服務(wù)器(使用一個公網(wǎng)IP)的訪問:
當(dāng)訪問TCP 20端口時就將它轉(zhuǎn)到內(nèi)部ftp服務(wù)上。
當(dāng)訪問TCP 21端口時也將它轉(zhuǎn)到內(nèi)部ftp服務(wù)上。
當(dāng)訪問TCP 80端口時就將它轉(zhuǎn)換到內(nèi)部的www服務(wù)器上。
語法:
Router(config)#ip nat inside source static tcp 10.65.1.2 20 60.1.1.1 20
Router(config)#ip nat inside source static tcp 10.65.1.2 21 60.1.1.1 21
Router(config)#ip nat inside source static tcp 10.65.1.3 80 60.1.1.1 80