① SPF 和 DUAL 兩種演算法有什麼區別
SPF演算法是OSPF路由協議的基礎;DUAL(擴散更新)演算法被EIGRP路由協議採用。
介紹下:
四種最常見路由協議是RIP、IGRP、OSPF和EIGRP。
1.RIP(Routing Information Protocol,路由信息協議)是使用最廣泛的距離向量協議,它是由施樂(Xerox)在20世紀70年代開發的。最大的特點是,其實現原理和配置方法都非常簡單。RIP基於跳數計算路由,並且定期向鄰居路由器發送更新消息。
2.IGRP是Cisco專有的協議,只在Cisco路由器中實現。它也屬於距離向量類協議,所以在很多地方與RIP有共同點,比如廣播更新等。它和RIP最大的區別表現在度量方法、負載均衡等幾方面。IGRP支持多路徑上的加權負載均衡,這樣,網路的帶寬可以得到更加合理的利用。另外,與RIP僅使用跳數作為度量依據不同,IGRP使用了多種參數,構成復合的度量值,這其中可以包含的因素有:帶寬、延遲、負載、可靠性和MTU(最大傳輸單元)等。
3.OSPF協議是20世紀80年代後期開發的,20世紀90年代初成為工業標准,是一種典型的鏈路狀態協議。OSPF的主要特性包括:支持VLSM(變長的子網掩碼)、收斂迅速、帶寬佔用率低等。等。OSPF協議在鄰居之間交換鏈路狀態信息,以便路由器建立鏈路狀態資料庫(LSD)之後,路由器根據資料庫中的信息利用SPF(Shortest Path First,最短路徑優先)演算法計算路由表,選擇路徑的主要依據是帶寬。
4.EIGRP是IGRP的增強版,它也是Cisco專有的路由協議。EIGRP採用了擴散更新(DUAL)演算法,在某種程度上,它和距離向量演算法相似,但具有更短的收斂時間和更好的可操作性。作為對IGRP的擴展,EIGRP支持多種可路由的協議,如IP、IPX和AppleTalk等。運行在IP環境時,EIGRP還可以與IGRP進行平滑的連接,因為它們的度量方法是一致的。
以上4種路由協議都是域內路由協議,它們通常使用在自治系統的內部。當進行自治系統間的連接時,往往採用諸如BGP(Border Gateway Protocols,邊界網關協議)和EGP(External Gateway Protocols,外部網關協議)這樣的域間路由協議。目前在Internet上使用的域間路由協議是BGP第四版。
② 目前主流的OSPF協議是一種
更確切的說OSPF在area域內是鏈路狀態路由協議,使用spf演算法。而在area間其實是DV演算法。這點跟ISIS還是有區別的。
③ 鏈路狀態路由採用的演算法是:
b和c 例如ospf 區域內是最短路徑優先演算法,那麼區域間呢?區域間為距離矢量演算法。
④ 6,路由選擇有哪些演算法
關於路由器如何收集網路的結構信息以及對之進行分析來確定最佳路由,有兩種主要的路由演算法:
總體式路由演算法和分散式路由演算法。採用分散式路由演算法時,每個路由器只有與它直接相連的路由器的信息——而沒有網路中的每個路由器的信息。這些演算法也被稱為dv(距離向量)演算法。採用總體式路由演算法時,每個路由器都擁有網路中所有其他路由器的全部信息以及網路的流量狀態。這些演算法也被稱為ls(鏈路狀態)演算法。
⑤ 常用的路由協議分為哪幾類並簡述這些路由協議的特點及主要工作原理
常用的路由協議分為RIP、IGRP(Cisco私有協議)、EIGRP(Cisco私有協議)、OSPF、IS-IS、BGP等。
1、RIP
特點:是動態路由協議,基於距離矢量演算法,利用跳數來作為計量標准。在帶寬、配置和管理方面要求較低,主要適合於規模較小的網路中。
原理:路由器運行RIP後,會首先發送路由更新請求,收到請求的路由器會發送自己的RIP路由進行響應;網路穩定後,路由器會周期性發送路由更新信息。當一個RIP更新報文到達時,接收方路由器和自己的RIP路由表中的每一項進行比較,並按照距離矢量路由演算法對自己的RIP路由表進行修正。
2、EIGRP
特點:能實現快速收斂。運行EIGRP的路由器存儲了鄰居的路由表,能夠快速適應網路中的變化;EIGRP發送部分更新而不是定期更新,且僅在路由路徑或者度量值發生變化時才發送;支持多種網路層協議;使用多播和單播;支持變長子網掩碼;無縫連接數據鏈路層協議和拓撲結構。
原理:結合了鏈路狀態和距離矢量型路由選擇協議的Cisco專用協議,採用彌散修正演算法(DUAL)來實現快速收斂,可以不發送定期的路由更新信息以減少帶寬的佔用。
3、OSPF
特點:OSPF 適合在大范圍的網路;組播觸發式更新;收斂速度快;以開銷作為度量值;OSPF協議的設計是為了避免路由環路。在使用最短路徑的演算法下,收到路由中的鏈路狀態,然後生成路徑,這樣不會產生環路。
原理:OSPF是兩個相鄰的路由器通過發報文的形式成為鄰居關系,鄰居再相互發送鏈路狀態信息形成鄰接關系,之後各自根據最短路徑演算法算出路由,放在OSPF路由表,OSPF路由與其他路由比較後優的加入全局路由表。
(5)鏈路狀態路由演算法c擴展閱讀:
路由協議的作用
主要運行於路由器上,路由選擇協議主要是運行在路由器上的協議,主要用來進行路徑選擇。它起到一個地圖導航,負責找路的作用。工作在網路層。
路由協議作為TCP/IP協議族中重要成員之一,其選路過程實現的好壞會影響整個Internet網路的效率
⑥ 正常情況下,BDR比DR優先順序高,為什麼
OSPF路由協議基礎(一)
OSPF(Open Short Path First)最優路徑演算法路由協議。OSPF路由協議的Distance值為110,它擁有一個Metric值,此值是OSPF路由協議用來衡量鏈路好壞的,當一條鏈路的Metric值越小,則證明此條鏈路越好,反之此條鏈路越差。
路由協議按數據傳輸方式分,分為有類(Classfull)和無類(Classless)兩種,有類路由協議是指傳輸可達性路由信息(NLRI)時不帶子網掩碼;無類路由協議是指傳輸可達性路由信息(NLRI)時帶子網掩碼。路由協議按數據傳輸類型分,分為距離向量(Distance Vector)和鏈路狀態(Link State)兩種,距離向量(DV)路由協議沒有路由器ID(Router-ID),並且只傳遞可達性路由信息(NLRI);鏈路狀態(LS)路由協議限制每一台路由器必須要有一個未被使用過的路由器ID(Router-ID),而且它無條件轉發任何從鄰居傳來的可達性路由信息(NLRI)。
OSPF路由協議基礎(二)
距離向量路由協議:
此時,假如RouterA後面有一個1.0網段,RouterB後面有一個2.0網段,RouterA告訴RouterB通過我(RouterA)可以到達1.0網段,RouterB告訴RouterC通過我(RouterB)可以到達1.0網段,此時,RouterA到達1.0網段的路斷了,那麼,他會查找它的鄰居RouterB,而此時RouterC也要到1.0網段,他也會去查找它的鄰居RouterB,這時RouterB的路由表裡有1.0網段的路由,RouterA和RouterC都會將數據發到RouterB,可是,RouterB到不了1.0網段,這樣就形成了路由環路。各種距離向量路由協議都有它自己解決路由環路的方法,在此暫不討論。
鏈路狀態路由協議:
在這里,我們用上面的例子繼續討論,因為在之前我曾提到過鏈路狀態路由協議無條件轉發任何從鄰居傳來的可達性路由信息(NLRI),所以,RouterA告訴RouterB我(RouterA)可以到達1.0網段後,RouterB將告訴RouterC從RouterA那裡可到達1.0網段,RouterC將一個數據包發往1.0網段時,會查找路由表,得知從RouterA那裡可以到達1.0網段,此時RouterC查找鄰居表,得知到RouterA那裡要經過RouterB,這樣,數據包就可以從RouterC發到1.0網段。當RouterA到達1.0網段的路斷了,那麼,因為RouterB和RouterC的路由表中都是知道通過RouterA才能到達1.0網段,所以,此時就不會出現路由環路。
OSPF路由協議基礎(三)
鏈路狀態路由協議有四種網路結構:
1、有廣播多層訪問(Broadcast Multi Access):
Hello包間隔:10秒;Down判定40秒。每10秒發一次Hello包,當40秒還未收到回應時認為路由器Down掉。
2、無廣播多層訪問(None Broadcast Multi Access):
Hello包間隔:30秒;Down判定120秒。每30秒發一次Hello包,當120秒還未收到回應時認為路由器Down掉。
3、點對點(Point-toPoint):
Hello包間隔:10秒;Down判定40秒。每10秒發一次Hello包,當40秒還未收到回應時認為路由器Down掉。
4、點對多點(Point-to-Multi Point):
Hello包間隔:30秒;Down判定120秒。每30秒發一次Hello包,當120秒還未收到回應時認為路由器Down掉。
OSPF路由協議基礎(四)
OSPF協議號:89。
OSPF協議要想連通,需要經歷兩個階段,第一個階段是建立鄰居關系,第二個階段是建立鄰接關系。
OSPF有三個表,他們分別是鄰居表(Neighbor Table),它的作用是幫助路由器找鄰居;第二個表是鏈路狀態資料庫(Link State Database,LSDB),它的作用是幫助路由器找到最優路徑;第三個表是路由表(Route Table),它的作用是存放最優路徑。
OSPF的路由器狀態:
1、建立鄰居關系:
(1) Down:
(2) Init:
(3) Two-Way:
2、建立鄰接關系:
(1) Exstart:
(2) Exchange:
(3) Loading:
(4) Full:
運行OSPF路由協議的網路需要一台路由器專門進行計算路由,這台路由器在OSPF域內叫做DR(Design Router),在OSPF域內,還有一台備用的DR叫做BDR,OSPF路由協議會自動選擇DR和BDR。首先,路由器先比優先順序(Priority),優先順序高的就成為DR,次高的為BDR,優先順序為0的為DROther,不能成為DR和BDR,DROther與DROther之間只能到達Two-Way關系。如果,優先順序相同,那麼就比較路由器ID(Router-ID),路由器ID大的為DR,次大的為BDR。
OSPF路由協議基礎(五)
區域OSPF:
OSPF有種區域類型,分別是:
1、骨幹區域(BackBone Area):
2、標准區域(Standard Area):
3、末節區域(Stub Area):
4、完全末節區域(Total Area):
5、非完全末節區域(Not-So-Stubby Area):
骨幹區域為Area 0。
在區域內OSPF是鏈路狀態(LS)路由協議,而域間OSPF是距離向量(DV)路由協議。
我建議,所有分支區域全都與骨幹區域直連。雖然不直連也是可以的,可以打一條虛鏈路(Visual Link),但是這樣會大量消耗路由器的CPU,所以我不建議大家這樣配置。
OSPF的消息包類型:
1、LSA Type 1:任意路由器皆可以產生。
2、LSA Type 2:由DR產生。
3、LSA Type 3:區域間路由信息,由ABR(邊關路由器)產生。
4、LSA Type 4:不要求知道,如要了解詳細信息,可參考相關RFC文檔。
5、LSA Type 5:區域外路由信息,由ASBR(區域外邊關路由器)產生。
6、LSA Type 6:不要求知道,如要了解詳細信息,可參考相關RFC文檔。
7、LSA Type 7:由ASBR產生,NSSA區域內部獨有。
我認為,在做一個項目時,可以考慮一下,區域內或自治系統內部使用OSPF路由協議,而邊關路由器使用BGP路由協議,因為,OSPF路由協議的Distance值較高(OSPF為110,而IS-IS為115,RIPv2為120,IBGP為200),並且OSPF不會出現路由環路,相對比較嚴謹,問題較少。而邊關路由器由於EBGP(外部邊關路由協議)Distance值為20,僅比直連路由(Distance為0)和靜態路由(Distance為0或1)要低,且BGP是用來管理的路由協議,可以根據情況是用路由策略(如:Router Map,Distribute List,Filter List)。以上為個人見解,僅供參考。
以上是OSPF路由協議的一些基本理論,不完全的地方可以參考相關RFC文檔,那裡有更為詳細地說明。
推薦書籍:CCIE Professional Development Routing TCP/IP Volume I、II,(CCIE企業級網路構建,TCP/IP路由技術I、II)。
自:bbs.15735.com
⑦ 常見的路由選擇演算法有哪些
鏈路狀態演算法(也稱最短路徑演算法)發送路由信息到互聯網上所有的結點,然而對於每個路由器,僅發送它的路由表中描述了其自身鏈路狀態的那一部分。距離向量演算法(也稱為Bellman-Ford演算法)則要求每個路由器發送其路由表全部或部分信息,但僅發送到鄰近結點上。從本質上來說,鏈路狀態演算法將少量更新信息發送至網路各處,而距離向量演算法發送大量更新信息至鄰接路由器。 ——由於鏈路狀態演算法收斂更快,因此它在一定程度上比距離向量演算法更不易產生路由循環。但另一方面,鏈路狀態演算法要求比距離向量演算法有更強的CPU能力和更多的內存空間,因此鏈路狀態演算法將會在實現時顯得更昂貴一些。除了這些區別,兩種演算法在大多數環境下都能很好地運行。
⑧ 網路攻擊的一般原理和方法是什麼
下載:http://download.csdn.net/source/274376
常見網路攻擊原理
1.1 TCP SYN拒絕服務攻擊
一般情況下,一個TCP連接的建立需要經過三次握手的過程,即:
1、 建立發起者向目標計算機發送一個TCP SYN報文;
2、 目標計算機收到這個SYN報文後,在內存中創建TCP連接控制塊(TCB),然後向發起者回送一個TCP ACK報文,等待發起者的回應;
3、 發起者收到TCP ACK報文後,再回應一個ACK報文,這樣TCP連接就建立起來了。
利用這個過程,一些惡意的攻擊者可以進行所謂的TCP SYN拒絕服務攻擊:
1、 攻擊者向目標計算機發送一個TCP SYN報文;
2、 目標計算機收到這個報文後,建立TCP連接控制結構(TCB),並回應一個ACK,等待發起者的回應;
3、 而發起者則不向目標計算機回應ACK報文,這樣導致目標計算機一致處於等待狀態。
可以看出,目標計算機如果接收到大量的TCP SYN報文,而沒有收到發起者的第三次ACK回應,會一直等待,處於這樣尷尬狀態的半連接如果很多,則會把目標計算機的資源(TCB控制結構,TCB,一般情況下是有限的)耗盡,而不能響應正常的TCP連接請求。
1.2 ICMP洪水
正常情況下,為了對網路進行診斷,一些診斷程序,比如PING等,會發出ICMP響應請求報文(ICMP ECHO),接收計算機接收到ICMP ECHO後,會回應一個ICMP ECHO Reply報文。而這個過程是需要CPU處理的,有的情況下還可能消耗掉大量的資源,比如處理分片的時候。這樣如果攻擊者向目標計算機發送大量的ICMP ECHO報文(產生ICMP洪水),則目標計算機會忙於處理這些ECHO報文,而無法繼續處理其它的網路數據報文,這也是一種拒絕服務攻擊(DOS)。
1.3 UDP洪水
原理與ICMP洪水類似,攻擊者通過發送大量的UDP報文給目標計算機,導致目標計算機忙於處理這些UDP報文而無法繼續處理正常的報文。
1.4 埠掃描
根據TCP協議規范,當一台計算機收到一個TCP連接建立請求報文(TCP SYN)的時候,做這樣的處理:
1、 如果請求的TCP埠是開放的,則回應一個TCP ACK報文,並建立TCP連接控制結構(TCB);
2、 如果請求的TCP埠沒有開放,則回應一個TCP RST(TCP頭部中的RST標志設為1)報文,告訴發起計算機,該埠沒有開放。
相應地,如果IP協議棧收到一個UDP報文,做如下處理:
1、 如果該報文的目標埠開放,則把該UDP報文送上層協議(UDP)處理,不回應任何報文(上層協議根據處理結果而回應的報文例外);
2、 如果該報文的目標埠沒有開放,則向發起者回應一個ICMP不可達報文,告訴發起者計算機該UDP報文的埠不可達。
利用這個原理,攻擊者計算機便可以通過發送合適的報文,判斷目標計算機哪些TCP或UDP埠是開放的,過程如下:
1、 發出埠號從0開始依次遞增的TCP SYN或UDP報文(埠號是一個16比特的數字,這樣最大為65535,數量很有限);
2、 如果收到了針對這個TCP報文的RST報文,或針對這個UDP報文的ICMP不可達報文,則說明這個埠沒有開放;
3、 相反,如果收到了針對這個TCP SYN報文的ACK報文,或者沒有接收到任何針對該UDP報文的ICMP報文,則說明該TCP埠是開放的,UDP埠可能開放(因為有的實現中可能不回應ICMP不可達報文,即使該UDP埠沒有開放)。
這樣繼續下去,便可以很容易的判斷出目標計算機開放了哪些TCP或UDP埠,然後針對埠的具體數字,進行下一步攻擊,這就是所謂的埠掃描攻擊。
1.5 分片IP報文攻擊
為了傳送一個大的IP報文,IP協議棧需要根據鏈路介面的MTU對該IP報文進行分片,通過填充適當的IP頭中的分片指示欄位,接收計算機可以很容易的把這些IP分片報文組裝起來。
目標計算機在處理這些分片報文的時候,會把先到的分片報文緩存起來,然後一直等待後續的分片報文,這個過程會消耗掉一部分內存,以及一些IP協議棧的數據結構。如果攻擊者給目標計算機只發送一片分片報文,而不發送所有的分片報文,這樣攻擊者計算機便會一直等待(直到一個內部計時器到時),如果攻擊者發送了大量的分片報文,就會消耗掉目標計算機的資源,而導致不能相應正常的IP報文,這也是一種DOS攻擊。
1.6 SYN比特和FIN比特同時設置
在TCP報文的報頭中,有幾個標志欄位:
1、 SYN:連接建立標志,TCP SYN報文就是把這個標志設置為1,來請求建立連接;
2、 ACK:回應標志,在一個TCP連接中,除了第一個報文(TCP SYN)外,所有報文都設置該欄位,作為對上一個報文的相應;
3、 FIN:結束標志,當一台計算機接收到一個設置了FIN標志的TCP報文後,會拆除這個TCP連接;
4、 RST:復位標志,當IP協議棧接收到一個目標埠不存在的TCP報文的時候,會回應一個RST標志設置的報文;
5、 PSH:通知協議棧盡快把TCP數據提交給上層程序處理。
正常情況下,SYN標志(連接請求標志)和FIN標志(連接拆除標志)是不能同時出現在一個TCP報文中的。而且RFC也沒有規定IP協議棧如何處理這樣的畸形報文,因此,各個操作系統的協議棧在收到這樣的報文後的處理方式也不同,攻擊者就可以利用這個特徵,通過發送SYN和FIN同時設置的報文,來判斷操作系統的類型,然後針對該操作系統,進行進一步的攻擊。
1.7 沒有設置任何標志的TCP報文攻擊
正常情況下,任何TCP報文都會設置SYN,FIN,ACK,RST,PSH五個標志中的至少一個標志,第一個TCP報文(TCP連接請求報文)設置SYN標志,後續報文都設置ACK標志。有的協議棧基於這樣的假設,沒有針對不設置任何標志的TCP報文的處理過程,因此,這樣的協議棧如果收到了這樣的報文,可能會崩潰。攻擊者利用了這個特點,對目標計算機進行攻擊。
1.8 設置了FIN標志卻沒有設置ACK標志的TCP報文攻擊
正常情況下,ACK標志在除了第一個報文(SYN報文)外,所有的報文都設置,包括TCP連接拆除報文(FIN標志設置的報文)。但有的攻擊者卻可能向目標計算機發送設置了FIN標志卻沒有設置ACK標志的TCP報文,這樣可能導致目標計算機崩潰。
1.9 死亡之PING
TCP/IP規范要求IP報文的長度在一定范圍內(比如,0-64K),但有的攻擊計算機可能向目標計算機發出大於64K長度的PING報文,導致目標計算機IP協議棧崩潰。
1.10 地址猜測攻擊
跟埠掃描攻擊類似,攻擊者通過發送目標地址變化的大量的ICMP ECHO報文,來判斷目標計算機是否存在。如果收到了對應的ECMP ECHO REPLY報文,則說明目標計算機是存在的,便可以針對該計算機進行下一步的攻擊。
1.11 淚滴攻擊
對於一些大的IP包,需要對其進行分片傳送,這是為了迎合鏈路層的MTU(最大傳輸單元)的要求。比如,一個4500位元組的IP包,在MTU為1500的鏈路上傳輸的時候,就需要分成三個IP包。
在IP報頭中有一個偏移欄位和一個分片標志(MF),如果MF標志設置為1,則表面這個IP包是一個大IP包的片斷,其中偏移欄位指出了這個片斷在整個IP包中的位置。例如,對一個4500位元組的IP包進行分片(MTU為1500),則三個片斷中偏移欄位的值依次為:0,1500,3000。這樣接收端就可以根據這些信息成功的組裝該IP包。
如果一個攻擊者打破這種正常情況,把偏移欄位設置成不正確的值,即可能出現重合或斷開的情況,就可能導致目標操作系統崩潰。比如,把上述偏移設置為0,1300,3000。這就是所謂的淚滴攻擊。
1.12 帶源路由選項的IP報文
為了實現一些附加功能,IP協議規范在IP報頭中增加了選項欄位,這個欄位可以有選擇的攜帶一些數據,以指明中間設備(路由器)或最終目標計算機對這些IP報文進行額外的處理。
源路由選項便是其中一個,從名字中就可以看出,源路由選項的目的,是指導中間設備(路由器)如何轉發該數據報文的,即明確指明了報文的傳輸路徑。比如,讓一個IP報文明確的經過三台路由器R1,R2,R3,則可以在源路由選項中明確指明這三個路由器的介面地址,這樣不論三台路由器上的路由表如何,這個IP報文就會依次經過R1,R2,R3。而且這些帶源路由選項的IP報文在傳輸的過程中,其源地址不斷改變,目標地址也不斷改變,因此,通過合適的設置源路由選項,攻擊者便可以偽造一些合法的IP地址,而矇混進入網路。
1.13 帶記錄路由選項的IP報文
記錄路由選項也是一個IP選項,攜帶了該選項的IP報文,每經過一台路由器,該路由器便把自己的介面地址填在選項欄位裡面。這樣這些報文在到達目的地的時候,選項數據裡面便記錄了該報文經過的整個路徑。
通過這樣的報文可以很容易的判斷該報文經過的路徑,從而使攻擊者可以很容易的尋找其中的攻擊弱點。
1.14 未知協議欄位的IP報文
在IP報文頭中,有一個協議欄位,這個欄位指明了該IP報文承載了何種協議 ,比如,如果該欄位值為1,則表明該IP報文承載了ICMP報文,如果為6,則是TCP,等等。目前情況下,已經分配的該欄位的值都是小於100的,因此,一個帶大於100的協議欄位的IP報文,可能就是不合法的,這樣的報文可能對一些計算機操作系統的協議棧進行破壞。
1.15 IP地址欺騙
一般情況下,路由器在轉發報文的時候,只根據報文的目的地址查路由表,而不管報文的源地址是什麼,因此,這樣就 可能面臨一種危險:如果一個攻擊者向一台目標計算機發出一個報文,而把報文的源地址填寫為第三方的一個IP地址,這樣這個報文在到達目標計算機後,目標計算機便可能向毫無知覺的第三方計算機回應。這便是所謂的IP地址欺騙攻擊。
比較著名的SQL Server蠕蟲病毒,就是採用了這種原理。該病毒(可以理解為一個攻擊者)向一台運行SQL Server解析服務的伺服器發送一個解析服務的UDP報文,該報文的源地址填寫為另外一台運行SQL Server解析程序(SQL Server 2000以後版本)的伺服器,這樣由於SQL Server 解析服務的一個漏洞,就可能使得該UDP報文在這兩台伺服器之間往復,最終導致伺服器或網路癱瘓。
1.16 WinNuke攻擊
NetBIOS作為一種基本的網路資源訪問介面,廣泛的應用於文件共享,列印共享,進程間通信(IPC),以及不同操作系統之間的數據交換。一般情況下,NetBIOS是運行在LLC2鏈路協議之上的,是一種基於組播的網路訪問介面。為了在TCP/IP協議棧上實現NetBIOS,RFC規定了一系列交互標准,以及幾個常用的TCP/UDP埠:
139:NetBIOS會話服務的TCP埠;
137:NetBIOS名字服務的UDP埠;
136:NetBIOS數據報服務的UDP埠。
WINDOWS操作系統的早期版本(WIN95/98/NT)的網路服務(文件共享等)都是建立在NetBIOS之上的,因此,這些操作系統都開放了139埠(最新版本的WINDOWS 2000/XP/2003等,為了兼容,也實現了NetBIOS over TCP/IP功能,開放了139埠)。
WinNuke攻擊就是利用了WINDOWS操作系統的一個漏洞,向這個139埠發送一些攜帶TCP帶外(OOB)數據報文,但這些攻擊報文與正常攜帶OOB數據報文不同的是,其指針欄位與數據的實際位置不符,即存在重合,這樣WINDOWS操作系統在處理這些數據的時候,就會崩潰。
1.17 Land攻擊
LAND攻擊利用了TCP連接建立的三次握手過程,通過向一個目標計算機發送一個TCP SYN報文(連接建立請求報文)而完成對目標計算機的攻擊。與正常的TCP SYN報文不同的是,LAND攻擊報文的源IP地址和目的IP地址是相同的,都是目標計算機的IP地址。這樣目標計算機接收到這個SYN報文後,就會向該報文的源地址發送一個ACK報文,並建立一個TCP連接控制結構(TCB),而該報文的源地址就是自己,因此,這個ACK報文就發給了自己。這樣如果攻擊者發送了足夠多的SYN報文,則目標計算機的TCB可能會耗盡,最終不能正常服務。這也是一種DOS攻擊。
1.18 Script/ActiveX攻擊
Script是一種可執行的腳本,它一般由一些腳本語言寫成,比如常見的JAVA SCRIPT,VB SCRIPT等。這些腳本在執行的時候,需要一個專門的解釋器來翻譯,翻譯成計算機指令後,在本地計算機上運行。這種腳本的好處是,可以通過少量的程序寫作,而完成大量的功能。
這種SCRIPT的一個重要應用就是嵌入在WEB頁面裡面,執行一些靜態WEB頁面標記語言(HTML)無法完成的功能,比如本地計算,資料庫查詢和修改,以及系統信息的提取等。這些腳本在帶來方便和強大功能的同時,也為攻擊者提供了方便的攻擊途徑。如果攻擊者寫一些對系統有破壞的SCRIPT,然後嵌入在WEB頁面中,一旦這些頁面被下載到本地,計算機便以當前用戶的許可權執行這些腳本,這樣,當前用戶所具有的任何許可權,SCRIPT都可以使用,可以想像這些惡意的SCRIPT的破壞程度有多強。這就是所謂的SCRIPT攻擊。
ActiveX是一種控制項對象,它是建立在MICROSOFT的組件對象模型(COM)之上的,而COM則幾乎是Windows操作系統的基礎結構。可以簡單的理解,這些控制項對象是由方法和屬性構成的,方法即一些操作,而屬性則是一些特定的數據。這種控制項對象可以被應用程序載入,然後訪問其中的方法或屬性,以完成一些特定的功能。可以說,COM提供了一種二進制的兼容模型(所謂二進制兼容,指的是程序模塊與調用的編譯環境,甚至操作系統沒有關系)。但需要注意的是,這種對象控制項不能自己執行,因為它沒有自己的進程空間,而只能由其它進程載入,並調用其中的方法和屬性,這時候,這些控制項便在載入進程的進程空間運行,類似與操作系統的可載入模塊,比如DLL庫。
ActiveX控制項可以嵌入在WEB頁面裡面,當瀏覽器下載這些頁面到本地後,相應地也下載了嵌入在其中的ActiveX控制項,這樣這些控制項便可以在本地瀏覽器進程空間中運行(ActiveX空間沒有自己的進程空間,只能由其它進程載入並調用),因此,當前用戶的許可權有多大,ActiveX的破壞性便有多大。如果一個惡意的攻擊者編寫一個含有惡意代碼的ActiveX控制項,然後嵌入在WEB頁面中,被一個瀏覽用戶下載後執行,其破壞作用是非常大的。這便是所謂的ActiveX攻擊。
1.19 Smurf攻擊
ICMP ECHO請求包用來對網路進行診斷,當一台計算機接收到這樣一個報文後,會向報文的源地址回應一個ICMP ECHO REPLY。一般情況下,計算機是不檢查該ECHO請求的源地址的,因此,如果一個惡意的攻擊者把ECHO的源地址設置為一個廣播地址,這樣計算機在恢復REPLY的時候,就會以廣播地址為目的地址,這樣本地網路上所有的計算機都必須處理這些廣播報文。如果攻擊者發送的ECHO 請求報文足夠多,產生的REPLY廣播報文就可能把整個網路淹沒。這就是所謂的smurf攻擊。
除了把ECHO報文的源地址設置為廣播地址外,攻擊者還可能把源地址設置為一個子網廣播地址,這樣,該子網所在的計算機就可能受影響。
1.20 虛擬終端(VTY)耗盡攻擊
這是一種針對網路設備的攻擊,比如路由器,交換機等。這些網路設備為了便於遠程管理,一般設置了一些TELNET用戶界面,即用戶可以通過TELNET到該設備上,對這些設備進行管理。
一般情況下,這些設備的TELNET用戶界面個數是有限制的,比如,5個或10個等。這樣,如果一個攻擊者同時同一台網路設備建立了5個或10個TELNET連接,這些設備的遠程管理界面便被占盡,這樣合法用戶如果再對這些設備進行遠程管理,則會因為TELNET連接資源被佔用而失敗。
1.21 路由協議攻擊
網路設備之間為了交換路由信息,常常運行一些動態的路由協議,這些路由協議可以完成諸如路由表的建立,路由信息的分發等功能。常見的路由協議有RIP,OSPF,IS-IS,BGP等。這些路由協議在方便路由信息管理和傳遞的同時,也存在一些缺陷,如果攻擊者利用了路由協議的這些許可權,對網路進行攻擊,可能造成網路設備路由表紊亂(這足可以導致網路中斷),網路設備資源大量消耗,甚至導致網路設備癱瘓。
下面列舉一些常見路由協議的攻擊方式及原理:
1.21.1 針對RIP協議的攻擊
RIP,即路由信息協議,是通過周期性(一般情況下為30S)的路由更新報文來維護路由表的,一台運行RIP路由協議的路由器,如果從一個介面上接收到了一個路由更新報文,它就會分析其中包含的路由信息,並與自己的路由表作出比較,如果該路由器認為這些路由信息比自己所掌握的要有效,它便把這些路由信息引入自己的路由表中。
這樣如果一個攻擊者向一台運行RIP協議的路由器發送了人為構造的帶破壞性的路由更新報文,就很容易的把路由器的路由表搞紊亂,從而導致網路中斷。
如果運行RIP路由協議的路由器啟用了路由更新信息的HMAC驗證,則可從很大程度上避免這種攻擊。
1.21.2 針對OSPF路由協議的攻擊
OSPF,即開放最短路徑優先,是一種應用廣泛的鏈路狀態路由協議。該路由協議基於鏈路狀態演算法,具有收斂速度快,平穩,杜絕環路等優點,十分適合大型的計算機網路使用。OSPF路由協議通過建立鄰接關系,來交換路由器的本地鏈路信息,然後形成一個整網的鏈路狀態資料庫,針對該資料庫,路由器就可以很容易的計算出路由表。
可以看出,如果一個攻擊者冒充一台合法路由器與網路中的一台路由器建立鄰接關系,並向攻擊路由器輸入大量的鏈路狀態廣播(LSA,組成鏈路狀態資料庫的數據單元),就會引導路由器形成錯誤的網路拓撲結構,從而導致整個網路的路由表紊亂,導致整個網路癱瘓。
當前版本的WINDOWS 操作系統(WIN 2K/XP等)都實現了OSPF路由協議功能,因此一個攻擊者可以很容易的利用這些操作系統自帶的路由功能模塊進行攻擊。
跟RIP類似,如果OSPF啟用了報文驗證功能(HMAC驗證),則可以從很大程度上避免這種攻擊。
1.21.3 針對IS-IS路由協議的攻擊
IS-IS路由協議,即中間系統到中間系統,是ISO提出來對ISO的CLNS網路服務進行路由的一種協議,這種協議也是基於鏈路狀態的,原理與OSPF類似。IS-IS路由協議經過 擴展,可以運行在IP網路中,對IP報文進行選路。這種路由協議也是通過建立鄰居關系,收集路由器本地鏈路狀態的手段來完成鏈路狀態資料庫同步的。該協議的鄰居關系建立比OSPF簡單,而且也省略了OSPF特有的一些特性,使該協議簡單明了,伸縮性更強。
對該協議的攻擊與OSPF類似,通過一種模擬軟體與運行該協議的路由器建立鄰居關系,然後傳頌給攻擊路由器大量的鏈路狀態數據單元(LSP),可以導致整個網路路由器的鏈路狀態資料庫不一致(因為整個網路中所有路由器的鏈路狀態資料庫都需要同步到相同的狀態),從而導致路由表與實際情況不符,致使網路中斷。
與OSPF類似,如果運行該路由協議的路由器啟用了IS-IS協議單元(PDU)HMAC驗證功能,則可以從很大程度上避免這種攻擊。
1.22 針對設備轉發表的攻擊
為了合理有限的轉發數據,網路設備上一般都建立一些寄存器表項,比如MAC地址表,ARP表,路由表,快速轉發表,以及一些基於更多報文頭欄位的表格,比如多層交換表,流項目表等。這些表結構都存儲在設備本地的內存中,或者晶元的片上內存中,數量有限。如果一個攻擊者通過發送合適的數據報,促使設備建立大量的此類表格,就會使設備的存儲結構消耗盡,從而不能正常的轉發數據或崩潰。
下面針對幾種常見的表項,介紹其攻擊原理:
1.22.1 針對MAC地址表的攻擊
MAC地址表一般存在於乙太網交換機上,乙太網通過分析接收到的數據幀的目的MAC地址,來查本地的MAC地址表,然後作出合適的轉發決定。
這些MAC地址表一般是通過學習獲取的,交換機在接收到一個數據幀後,有一個學習的過程,該過程是這樣的:
a) 提取數據幀的源MAC地址和接收到該數據幀的埠號;
查MAC地址表,看該MAC地址是否存在,以及對應的埠是否符合;
c) 如果該MAC地址在本地MAC地址表中不存在,則創建一個MAC地址表項;
d) 如果存在,但對應的出埠跟接收到該數據幀的埠不符,則更新該表;
e) 如果存在,且埠符合,則進行下一步處理。
分析這個過程可以看出,如果一個攻擊者向一台交換機發送大量源MAC地址不同的數據幀,則該交換機就可能把自己本地的MAC地址表學滿。一旦MAC地址表溢出,則交換機就不能繼續學習正確的MAC表項,結果是可能產生大量的網路冗餘數據,甚至可能使交換機崩潰。
而構造一些源MAC地址不同的數據幀,是非常容易的事情。
1.22.2 針對ARP表的攻擊
ARP表是IP地址和MAC地址的映射關系表,任何實現了IP協議棧的設備,一般情況下都通過該表維護IP地址和MAC地址的對應關系,這是為了避免ARP解析而造成的廣播數據報文對網路造成沖擊。ARP表的建立一般情況下是通過二個途徑:
1、 主動解析,如果一台計算機想與另外一台不知道MAC地址的計算機通信,則該計算機主動發ARP請求,通過ARP協議建立(前提是這兩台計算機位於同一個IP子網上);
2、 被動請求,如果一台計算機接收到了一台計算機的ARP請求,則首先在本地建立請求計算機的IP地址和MAC地址的對應表。
因此,如果一個攻擊者通過變換不同的IP地址和MAC地址,向同一台設備,比如三層交換機發送大量的ARP請求,則被攻擊設備可能會因為ARP緩存溢出而崩潰。
針對ARP表項,還有一個可能的攻擊就是誤導計算機建立正確的ARP表。根據ARP協議,如果一台計算機接收到了一個ARP請求報文,在滿足下列兩個條件的情況下,該計算機會用ARP請求報文中的源IP地址和源MAC地址更新自己的ARP緩存:
1、 如果發起該ARP請求的IP地址在自己本地的ARP緩存中;
2、 請求的目標IP地址不是自己的。
可以舉一個例子說明這個過程,假設有三台計算機A,B,C,其中B已經正確建立了A和C計算機的ARP表項。假設A是攻擊者,此時,A發出一個ARP請求報文,該請求報文這樣構造:
1、 源IP地址是C的IP地址,源MAC地址是A的MAC地址;
2、 請求的目標IP地址是A的IP地址。
這樣計算機B在收到這個ARP請求報文後(ARP請求是廣播報文,網路上所有設備都能收到),發現B的ARP表項已經在自己的緩存中,但MAC地址與收到的請求的源MAC地址不符,於是根據ARP協議,使用ARP請求的源MAC地址(即A的MAC地址)更新自己的ARP表。
這樣B的ARP混存中就存在這樣的錯誤ARP表項:C的IP地址跟A的MAC地址對應。這樣的結果是,B發給C的數據都被計算機A接收到。
1.22.3 針對流項目表的攻擊
有的網路設備為了加快轉發效率,建立了所謂的流緩存。所謂流,可以理解為一台計算機的一個進程到另外一台計算機的一個進程之間的數據流。如果表現在TCP/IP協議上,則是由(源IP地址,目的IP地址,協議號,源埠號,目的埠號)五元組共同確定的所有數據報文。
一個流緩存表一般由該五元組為索引,每當設備接收到一個IP報文後,會首先分析IP報頭,把對應的五元組數據提取出來,進行一個HASH運算,然後根據運算結果查詢流緩存,如果查找成功,則根據查找的結果進行處理,如果查找失敗,則新建一個流緩存項,查路由表,根據路由表查詢結果填完整這個流緩存,然後對數據報文進行轉發(具體轉發是在流項目創建前還是創建後並不重要)。
可以看出,如果一個攻擊者發出大量的源IP地址或者目的IP地址變化的數據報文,就可能導致設備創建大量的流項目,因為不同的源IP地址和不同的目標IP地址對應不同的流。這樣可能導致流緩存溢出
⑨ 下列哪些是動態路由協議
動態路由協議是BC。
動態路由協議通過路由信息的交換生成並維護轉發引擎所需的路由表。當網路拓撲結構改變時動態路由協議可以自動更新路由表,並負責決定數據傳輸最佳路徑。
在動態路由中,管理員不再需要與靜態路由一樣,手工對路由器上的路由表進行維護,而是在每台路由器上運行一個路由協議。這個路由協議會根據路由器上的介面的配置(如IP地址的配置)及所連接的鏈路的狀態,生成路由表中的路由表項。
動態路由協議優缺點
動態路由協議的優點:
(1)可以自動適應網路狀態的變化。
(2)自動維護路由信息而不需要網路管理員的參與。
動態路由協議的缺點:
(1)由於需要相互交換路由信息,因而佔用網路帶寬與系統資源。
(2)安全性不如靜態路由。
在有冗餘連接的復雜網路環境中,適合採用動態路由協議。在動態路由協議中,目的網路是否可達取決於網路狀態。
⑩ 計算機考研考什麼
計算機歷年考研真題
鏈接:https://pan..com/s/1S0XYQQBxtaFkIAOpoymp9Q
提取碼:cugd
若資源有疑問歡迎追問