虛擬IP技術如何實現

更新时间: 2024-05-27 22:08:11

最佳答案

ip就是網際互聯協議,支援的有4個協議:ARP,RARP,ICMP,IGMP

1.網路互連

把自己的網路同其它的網路互連起來,從網路中獲取更多的資訊和向網路釋出自己的訊息,是網路互連的最主要的動力。網路的互連有多種方式,其中使用最多的是網橋互連和路由器互連。

1.1 網橋互連的網路

網橋工作在OSI模型中的第二層,即鏈路層。完成資料幀(frame)的轉發,主要目的是在連線的網路間提供透明的通訊。網橋的轉發是依據資料幀中的源地址和目的地址來判斷一個幀是否應轉發和轉發到哪個埠。幀中的地址稱為“MAC”地址或“硬體”地址,一般就是網絡卡所帶的地址。

網橋的作用是把兩個或多個網路互連起來,提供透明的通訊。網路上的裝置看不到網橋的存在,裝置之間的通訊就如同在一個網上一樣方便。由於網橋是在資料幀上進行轉發的,因此只能連線相同或相似的網路(相同或相似結構的資料幀),如乙太網之間、乙太網與令牌環(token ring)之間的互連,對於不同型別的網路(資料幀結構不同),如乙太網與X.25之間,網橋就無能為力了。

網橋擴大了網路的規模,提高了網路的效能,給網路應用帶來了方便,在以前的網路中,網橋的應用較為廣泛。但網橋互連也帶來了不少問題:一個是廣播風暴,網橋不阻擋網路中廣播訊息,當網路的規模較大時(幾個網橋,多個乙太網段),有可能引起廣播風暴(broadcasting storm),導致整個網路全被廣播資訊充滿,直至完全癱瘓。第二個問題是,當與外部網路互連時,網橋會把內部和外部網絡合二為一,成為一個網,雙方都自動向對方完全開放自己的網路資源。這種互連方式在與外部網路互連時顯然是難以接受的。問題的主要根源是網橋只是最大限度地把網路溝通,而不管傳送的資訊是什麼。

1.2 路由器互連網路

路由器互連與網路的協議有關,我們討論限於TCP/IP網路的情況。

路由器工作在OSI模型中的第三層,即網路層。路由器利用網路層定義的“邏輯”上的網路地址(即IP地址)來區別不同的網路,實現網路的互連和隔離,保持各個網路的獨立性。路由器不轉發廣播訊息,而把廣播訊息限制在各自的網路內部。傳送到其他網路的資料茵先被送到路由器,再由路由器轉發出去。

IP路由器只轉發IP分組,把其餘的部分擋在網內(包括廣播),從而保持各個網路具有相對的獨立性,這樣可以組成具有許多網路(子網)互連的大型的網路。由於是在網路層的互連,路由器可方便地連線不同型別的網路,只要網路層執行的是IP協議,透過路由器就可互連起來。

網路中的裝置用它們的網路地址(TCP/IP網路中為IP地址)互相通訊。IP地址是與硬體地址無關的“邏輯”地址。路由器只根據IP地址來轉發資料。IP地址的結構有兩部分,一部分定義網路號,另一部分定義網路內的主機號。目前,在Internet網路中採用子網掩碼來確定IP地址中網路地址和主機地址。子網掩碼與IP地址一樣也是32bit,並且兩者是一一對應的,並規定,子網掩碼中數字為“1”所對應的IP地址中的部分為網路號,為“0”所對應的則為主機號。網路號和主機號合起來,才構成一個完整的IP地址。同一個網路中的主機IP地址,其網路號必須是相同的,這個網路稱為IP子網。

通訊只能在具有相同網路號的IP地址之間進行,要與其它IP子網的主機進行通訊,則必須經過同一網路上的某個路由器或閘道器(gateway)出去。不同網路號的IP地址不能直接通訊,即使它們接在一起,也不能通訊。

路由器有多個埠,用於連線多個IP子網。每個埠的IP地址的網路號要求與所連線的IP子網的網路號相同。不同的埠為不同的網路號,對應不同的IP子網,這樣才能使各子網中的主機透過自己子網的IP地址把要求出去的IP分組送到路由器上。

2.路由原理

當IP子網中的一臺主機發送IP分組給同一IP子網的另一臺主機時,它將直接把IP分組送到網路上,對方就能收到。而要送給不同IP於網上的主機時,它要選擇一個能到達目的子網上的路由器,把IP分組送給該路由器,由路由器負責把IP分組送到目的地。如果沒有找到這樣的路由器,主機就把IP分組送給一個稱為“預設閘道器(default gateway)”的路由器上。“預設閘道器”是每臺主機上的一個配置引數,它是接在同一個網路上的某個路由器埠的IP地址。

路由器轉發IP分組時,只根據IP分組目的IP地址的網路號部分,選擇合適的埠,把IP分組送出去。同主機一樣,路由器也要判定埠所接的是否是目的子網,如果是,就直接把分組透過埠送到網路上,否則,也要選擇下一個路由器來傳送分組。路由器也有它的預設閘道器,用來傳送不知道往哪兒送的IP分組。這樣,透過路由器把知道如何傳送的IP分組正確轉發出去,不知道的IP分組送給“預設閘道器”路由器,這樣一級級地傳送,IP分組最終將送到目的地,送不到目的地的IP分組則被網路丟棄了。

目前TCP/IP網路,全部是透過路由器互連起來的,Internet就是成千上萬個IP子網透過路由器互連起來的國際性網路。這種網路稱為以路由器為基礎的網路(router based network),形成了以路由器為節點的“網間網”。在“網間網”中,路由器不僅負責對IP分組的轉發,還要負責與別的路由器進行聯絡,共同確定“網間網”的路由選擇和維護路由表。

路由動作包括兩項基本內容:尋徑和轉發。尋徑即判定到達目的地的最佳路徑,由路由選擇演算法來實現。由於涉及到不同的路由選擇協議和路由選擇演算法,要相對複雜一些。為了判定最佳路徑,路由選擇演算法必須啟動並維護包含路由資訊的路由表,其中路由資訊依賴於所用的路由選擇演算法而不盡相同。路由選擇演算法將收集到的不同資訊填入路由表中,根據路由表可將目的網路與下一站(nexthop)的關係告訴路由器。路由器間互通訊息進行路由更新,更新維護路由表使之正確反映網路的拓撲變化,並由路由器根據量度來決定最佳路徑。這就是路由選擇協議(routing protocol),例如路由資訊協議(RIP)、開放式最短路徑優先協議(OSPF)和邊界閘道器協議(BGP)等。

轉發即沿尋徑好的最佳路徑傳送資訊分組。路由器首先在路由表中查詢,判明是否知道如何將分組傳送到下一個站點(路由器或主機),如果路由器不知道如何傳送分組,通常將該分組丟棄;否則就根據路由表的相應表項將分組傳送到下一個站點,如果目的網路直接與路由器相連,路由器就把分組直接送到相應的埠上。這就是路由轉發協議(routed protocol)。

路由轉發協議和路由選擇協議是相互配合又相互獨立的概念,前者使用後者維護的路由表,同時後者要利用前者提供的功能來發布路由協議資料分組。下文中提到的路由協議,除非特別說明,都是指路由選擇協議,這也是普遍的習慣。

3.路由協議

典型的路由選擇方式有兩種:靜態路由和動態路由。

靜態路由是在路由器中設定的固定的路由表。除非網路管理員干預,否則靜態路由不會發生變化。由於靜態路由不能對網路的改變作出反映,一般用於網路規模不大、拓撲結構固定的網路中。靜態路由的優點是簡單、高效、可靠。在所有的路由中,靜態路由優先順序最高。當動態路由與靜態路由發生衝突時,以靜態路由為準。

動態路由是網路中的路由器之間相互通訊,傳遞路由資訊,利用收到的路由資訊更新路由器表的過程。它能實時地適應網路結構的變化。如果路由更新資訊表明發生了網路變化,路由選擇軟體就會重新計算路由,併發出新的路由更新資訊。這些資訊透過各個網路,引起各路由器重新啟動其路由演算法,並更新各自的路由表以動態地反映網路拓撲變化。動態路由適用於網路規模大、網路拓撲復雜的網路。當然,各種動態路由協議會不同程度地佔用網路頻寬和CPU資源。

靜態路由和動態路由有各自的特點和適用範圍,因此在網路中動態路由通常作為靜態路由的補充。當一個分組在路由器中進行尋徑時,路由器首先查詢靜態路由,如果查到則根據相應的靜態路由轉發分組;否則再查詢動態路由。

根據是否在一個自治域內部使用,動態路由協議分為內部閘道器協議(IGP)和外部閘道器協議(EGP)。這裡的自治域指一個具有統一管理機構、統一路由策略的網路。自治域內部採用的路由選擇協議稱為內部閘道器協議,常用的有RIP、OSPF;外部閘道器協議主要用於多個自治域之間的路由選擇,常用的是BGP和BGP-4。下面分別進行簡要介紹。

3.1 RIP路由協議

RIP協議最初是為Xerox網路系統的Xerox parc通用協議而設計的,是Internet中常用的路由協議。RIP採用距離向量演算法,即路由器根據距離選擇路由,所以也稱為距離向量協議。路由器收集所有可到達目的地的不同路徑,並且儲存有關到達每個目的地的最少站點數的路徑資訊,除到達目的地的最佳路徑外,任何其它資訊均予以丟棄。同時路由器也把所收集的路由資訊用RIP協議通知相鄰的其它路由器。這樣,正確的路由資訊逐漸擴散到了全網。

RIP使用非常廣泛,它簡單、可靠,便於配置。但是RIP只適用於小型的同構網路,因為它允許的最大站點數為15,任何超過15個站點的目的地均被標記為不可達。而且RIP每隔30s一次的路由資訊廣播也是造成網路的廣播風暴的重要原因之一。

3.2 OSPF路由協議

80年代中期,RIP已不能適應大規模異構網路的互連,0SPF隨之產生。它是網間工程任務組織(1ETF)的內部閘道器協議工作組為IP網路而開發的一種路由協議。

0SPF是一種基於鏈路狀態的路由協議,需要每個路由器向其同一管理域的所有其它路由器傳送鏈路狀態廣播資訊。在OSPF的鏈路狀態廣播中包括所有介面資訊、所有的量度和其它一些變數。利用0SPF的路由器首先必須收集有關的鏈路狀態資訊,並根據一定的演算法計算出到每個節點的最短路徑。而基於距離向量的路由協議僅向其鄰接路由器傳送有關路由更新資訊。

與RIP不同,OSPF將一個自治域再劃分為區,相應地即有兩種型別的路由選擇方式:當源和目的地在同一區時,採用區內路由選擇;當源和目的地在不同區時,則採用區間路由選擇。這就大大減少了網路開銷,並增加了網路的穩定性。當一個區內的路由器出了故障時並不影響自治域內其它區路由器的正常工作,這也給網路的管理、維護帶來方便。

3.3 BGP和BGP-4路由協議

BGP是為TCP/IP網際網路設計的外部閘道器協議,用於多個自治域之間。它既不是基於純粹的鏈路狀態演算法,也不是基於純粹的距離向量演算法。它的主要功能是與其它自治域的BGP交換網路可達資訊。各個自治域可以執行不同的內部閘道器協議。BGP更新資訊包括網路號/自治域路徑的成對資訊。自治域路徑包括到達某個特定網路須經過的自治域串,這些更新資訊透過TCP傳送出去,以保證傳輸的可靠性。

為了滿足Internet日益擴大的需要,BGP還在不斷地發展。在最新的BGp4中,還可以將相似路由合併為一條路由。

3.4 路由表項的優先問題

在一個路由器中,可同時配置靜態路由和一種或多種動態路由。它們各自維護的路由表都提供給轉發程式,但這些路由表的表項間可能會發生衝突。這種衝突可透過配置各路由表的優先順序來解決。通常靜態路由具有預設的最高優先順序,當其它路由表表項與它矛盾時,均按靜態路由轉發。

4.路由演算法

路由演算法在路由協議中起著至關重要的作用,採用何種演算法往往決定了最終的尋徑結果,因此選擇路由演算法一定要仔細。通常需要綜合考慮以下幾個設計目標:

(1)最最佳化:指路由演算法選擇最佳路徑的能力。

(2)簡潔性:演算法設計簡潔,利用最少的軟體和開銷,提供最有效的功能。

(3)堅固性:路由演算法處於非正常或不可預料的環境時,如硬體故障、負載過高或操作失誤時,都能正確執行。由於路由器分佈在網路聯接點上,所以在它們出故障時會產生嚴重後果。最好的路由器演算法通常能經受時間的考驗,並在各種網路環境下被證實是可靠的。

(4)快速收斂:收斂是在最佳路徑的判斷上所有路由器達到一致的過程。當某個網路事件引起路由可用或不可用時,路由器就發出更新資訊。路由更新資訊遍及整個網路,引發重新計算最佳路徑,最終達到所有路由器一致公認的最佳路徑。收斂慢的路由演算法會造成路徑迴圈或網路中斷。

(5)靈活性:路由演算法可以快速、準確地適應各種網路環境。例如,某個網段發生故障,路由演算法要能很快發現故障,併為使用該網段的所有路由選擇另一條最佳路徑。

路由演算法按照種類可分為以下幾種:靜態和動態、單路和多路、平等和分級、源路由和透明路由、域內和域間、鏈路狀態和距離向量。前面幾種的特點與字面意思基本一致,下面著重介紹鏈路狀態和距離向量演算法。

鏈路狀態演算法(也稱最短路徑演算法)傳送路由資訊到網際網路上所有的結點,然而對於每個路由器,僅傳送它的路由表中描述了其自身鏈路狀態的那一部分。距離向量演算法(也稱為Bellman-Ford演算法)則要求每個路由器傳送其路由表全部或部分資訊,但僅傳送到鄰近結點上。從本質上來說,鏈路狀態演算法將少量更新資訊傳送至網路各處,而距離向量演算法傳送大量更新資訊至鄰接路由器。

由於鏈路狀態演算法收斂更快,因此它在一定程度上比距離向量演算法更不易產生路由迴圈。但另一方面,鏈路狀態演算法要求比距離向量演算法有更強的CPU能力和更多的記憶體空間,因此鏈路狀態演算法將會在實現時顯得更昂貴一些。除了這些區別,兩種演算法在大多數環境下都能很好地執行。

最後需要指出的是,路由演算法使用了許多種不同的度量標準去決定最佳路徑。複雜的路由演算法可能採用多種度量來選擇路由,透過一定的加權運算,將它們合併為單個的複合度量、再填入路由表中,作為尋徑的標準。通常所使用的度量有:路徑長度、可靠性、時延、頻寬、負載、通訊成本等。

5.新一代路由器

由於多媒體等應用在網路中的發展,以及ATM、快速乙太網等新技術的不斷採用,網路的頻寬與速率飛速提高,傳統的路由器已不能滿足人們對路由器的效能要求。因為傳統路由器的分組轉發的設計與實現均基於軟體,在轉發過程中對分組的處理要經過許多環節,轉發過程複雜,使得分組轉發的速率較慢。另外,由於路由器是網路互連的關鍵裝置,是網路與其它網路進行通訊的一個“關口”,對其安全性有很高的要求,因此路由器中各種附加的安全措施增加了CPU的負擔,這樣就使得路由器成為整個網際網路上的“瓶頸”。

傳統的路由器在轉發每一個分組時,都要進行一系列的複雜操作,包括路由查詢、訪問控制表匹配、地址解析、優先順序管理以及其它的附加操作。這一系列的操作大大影響了路由器的效能與效率,降低了分組轉發速率和轉發的吞吐量,增加了CPU的負擔。而經過路由器的前後分組間的相關性很大,具有相同目的地址和源地址的分組往往連續到達,這為分組的快速轉發提供了實現的可能與依據。新一代路由器,如IP Switch、Tag Switch等,就是採用這一設計思想用硬體來實現快速轉發,大大提高了路由器的效能與效率。

新一代路由器使用轉發快取來簡化分組的轉發操作。在快速轉發過程中,只需對一組具有相同目的地址和源地址的分組的前幾個分組進行傳統的路由轉發處理,並把成功轉發的分組的目的地址、源地址和下一閘道器地址(下一路由器地址)放人轉發快取中。當其後的分組要進行轉發時,茵先檢視轉發快取,如果該分組的目的地址和源地址與轉發快取中的匹配,則直接根據轉發快取中的下一閘道器地址進行轉發,而無須經過傳統的複雜操作,大大減輕了路由器的負擔,達到了提高路由器吞吐量的目標。

虛IP。何為虛IP那,就是一個未分配給真實主機的IP,也就是說對外提供資料庫伺服器的主機除了有一個真實IP外還有一個虛IP,使用這兩個IP中的 任意一個都可以連線到這臺主機,所有專案中資料庫連結一項配置的都是這個虛IP,當伺服器發生故障無法對外提供服務時,動態將這個虛IP切換到備用主機。

開始我也不明白這是怎麼實現的,以為是軟體動態改IP地址,其實不是這樣,其實現原理主要是靠TCP/IP的ARP協議。因為ip地址只是一個邏輯 地址,在乙太網中MAC地址才是真正用來進行資料傳輸的物理地址,每臺主機中都有一個ARP快取記憶體,儲存同一個網路內的IP地址與MAC地址的對應關 系,乙太網中的主機發送資料時會先從這個快取中查詢目標IP對應的MAC地址,會向這個MAC地址傳送資料。作業系統會自動維護這個快取。這就是整個實現 的關鍵。

下邊就是我電腦上的arp快取的內容。

(192.168.1.219) at 00:21:5A:DB:68:E8 [ether] on bond0

(192.168.1.217) at 00:21:5A:DB:68:E8 [ether] on bond0

(192.168.1.218) at 00:21:5A:DB:7F:C2 [ether] on bond0

192.168.1.217、192.168.1.218是兩臺真實的電腦,

192.168.1.217為對外提供資料庫服務的主機。

192.168.1.218為熱備的機器。

192.168.1.219為虛IP。

大家注意紅字部分,219、217的MAC地址是相同的。

再看看那217宕機後的arp快取

(192.168.1.219) at 00:21:5A:DB:7F:C2 [ether] on bond0

(192.168.1.217) at 00:21:5A:DB:68:E8 [ether] on bond0

(192.168.1.218) at 00:21:5A:DB:7F:C2 [ether] on bond0

這就是奧妙所在。當218 發現217宕機後會向網路傳送一個ARP資料包,告訴所有主機192.168.1.219這個IP對應的MAC地址是00:21:5A:DB:7F:C2,這樣所有傳送到219的資料包都會發送到mac地址為00:21:5A:DB:7F:C2的機器,也就是218的機器。

繼續學習加密貨幣

魔獸世界非主流聲望都有哪些

  我補充下  幾個戰場聲望:1.銀翼要塞2.阿拉索聯軍3.雷矛衛隊打戰場就OK  灰舌死誓者  任務只有黑暗神殿入門任務線,開始於影月谷占星者/奧爾多提供的“巴爾裡石板”,完成幾個步驟後就會被要求前往守望者牢籠的密室找到阿卡瑪。  除了任...


100m和500m的寬頻能用千m路由器嗎

理論上來講可以用1000m的路由器,但是沒這個人力要。百兆光纖使用千兆路由器無法提高有線的頻寬。百兆光纖寬頻,受制於有線介面的瓶頸,是無法提高網速的。百兆光纖寬頻,通常運營商提供的光貓都是百兆光貓。百兆光貓的上聯口是155M光口,LAN口是...


metro什麼牌子手機

華為metro1000是華為的一款光傳輸裝置,原來叫155/622H,群路為155Mbit/s光口或622Mbit/s光口。支路為2Mbit/s電口或10M/100MRJ45型網口。該裝置不支援2.5Gbit/s光口和10Gbit/s光口。...


pi會讀取哪些資訊?

pi可以讀取各種感測器、外部裝置、網路資料等資訊。因為pi具備良好的擴充套件性和相容性,在連線各種外部裝置的同時,也可以透過網路讀取網際網路上的資料。此外,pi還可以透過GPIO讀取模擬訊號、數字訊號等資訊,進一步擴充套件其讀取範圍。pi的...


交換技術的種類和優缺點有哪些

交換技術有三種,分別是:電路交換、報文交換、分組交換。它們的優缺點:一.電路交換的優缺點:電路交換方式的優點是資料傳輸可靠、迅速,資料不會丟失,且保持原來的序列。缺點是在某些情況下,電路空閒時的通道容量被浪費;另外,如資料傳輸階段的持續時間...


網際網路與區塊鏈的區別

1.網際網路是資訊機器,區塊鏈是事實機器網際網路是資訊的機器,以更低的成本、更高的效率讓大家互相傳遞資訊。區塊鏈的資料結構,以及密碼學、時間戳等技術的組合,保證了一個數據上鍊之後就不可篡改、不可撤銷,但是可追蹤。因此相比網際網路來說,區塊鏈...


EVP是什麼意思

EVP可以有多個含義,以下是其中幾個常見的:1.企業價值管理(EnterpriseValueManagement):指企業透過戰略規劃、資源配置、業務流程最佳化等手段,以實現企業價值的最大化為目標的管理方法論。2.電子現金(Electron...


pci匯流排屬於乙太網嗎

PCI匯流排不屬於乙太網,它是一種用於連線計算機內部硬體裝置的匯流排標準。PCI匯流排最初由英特爾公司開發,後來被PCISpecialInterestGroup(SIG)推廣和標準化,成為了一種廣泛使用的計算機匯流排標準。PCI匯流排可以連...


現在的顯示卡多出的一個白色介面是什麼功能

現在的顯示卡多出的一個白色介面通常是DisplayPort介面。DisplayPort是一種數字影片介面標準,用於連線計算機和顯示器,支援高解析度、高重新整理率和高色深度的影片輸出。與HDMI介面相比,DisplayPort介面具有更高的頻...


qiwi wallet的優缺點

關於這個問題,QiwiWallet是俄羅斯最大的電子錢包服務提供商之一,它提供了一種方便快捷的支付和轉賬方式。以下是QiwiWallet的優缺點:優點:1.方便快捷:使用者可以透過手機應用程式或網站輕鬆進行支付和轉賬,無需攜帶現金或信用卡。...