成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

OpenVPN高級路由技術(shù)

網(wǎng)絡(luò) 路由交換
OpenVPN內(nèi)部實現(xiàn)了一個路由器的功能,其源代碼的multi_get_instance_by_virtual_addr函數(shù)執(zhí)行路由查找的工作,這種路由是OpenVPN的內(nèi)部路由,也就是說這種路由是OpenVPN配置并查找的,和外部的系統(tǒng)路由是完全獨立的。

OpenVPN內(nèi)部路由和系統(tǒng)的路由之間的區(qū)別在于,系統(tǒng)路由完全照著最長前綴匹配原則,找到路由之后,將數(shù)據(jù)包從對應(yīng)的網(wǎng)卡接口轉(zhuǎn)發(fā)出去。而 OpenVPN內(nèi)部的路由雖然最終也是決定是否轉(zhuǎn)發(fā)并且往哪里轉(zhuǎn)發(fā)數(shù)據(jù)包,然而這個“是否轉(zhuǎn)發(fā)”以及“往哪里轉(zhuǎn)發(fā)”是和系統(tǒng)路由大大不同的,OpenVPN是否轉(zhuǎn)發(fā)數(shù)據(jù)包依照的其內(nèi)部的一張路由表而和系統(tǒng)的路由表沒有關(guān)系,往哪里轉(zhuǎn)發(fā)呢?其實是往兩個地方轉(zhuǎn)發(fā),根據(jù)查找內(nèi)部路由得到的結(jié)果,如果目的地址不是其它OpenVPN客戶端的或者這些OpenVPN客戶端后面的網(wǎng)絡(luò)主機的,那么就往自己的虛擬網(wǎng)卡中轉(zhuǎn)發(fā),如果目的地址是其它 OpenVPN客戶端的或者其后面網(wǎng)絡(luò)的,那么在開啟C2C的情況下,直接轉(zhuǎn)發(fā)到對應(yīng)OpenVPN的socket,轉(zhuǎn)發(fā)前用對應(yīng)的socket實例的安全參數(shù)進行OpenVPN協(xié)議封裝,C2C是不是很像linux中的ip_forward內(nèi)核參數(shù)呢?

注意,前面的闡述中,我一直都在說目的地址,而沒有說目的IP地址,這是因為OpenVPN的內(nèi)部路由不僅僅是IP路由,在tap模式下,它的內(nèi)部路由實際上是鏈路層的路由,這時OpenVPN服務(wù)器不是一臺路由器,而是一臺交換機,還是一臺可以“動態(tài)學(xué)習(xí)MAC地址”的交換機,因此tap模式下,OpenVPN內(nèi)部路由其實就是交換機的鏈路層路由,其路由表其實就類似于交換機的MAC地址表。

OpenVPN內(nèi)部路由的職責(zé)有:

1.抉擇是否轉(zhuǎn)發(fā)到來的已經(jīng)解除了OpenVPN封裝的載荷數(shù)據(jù)包。也就是載荷包的發(fā)起者是否在OpenVPN的策略范圍內(nèi);

2.處理不同OpenVPN客戶端之間的通信以及不同客戶端后面所掛接的網(wǎng)段主機之間的通信。也就是說在上述這些主機之間路由數(shù)據(jù)包,注意這里所謂的路由并不是協(xié)議棧中的IP路由,而是OpenVPN內(nèi)部的路由。

OpenVPN可以通過內(nèi)部路由擴展成一個巨大的網(wǎng)絡(luò),該網(wǎng)絡(luò)直接穿越不安全的網(wǎng)絡(luò)區(qū)域,比如互聯(lián)廣域網(wǎng)或者城域網(wǎng),是這個擴展而成的巨大網(wǎng)絡(luò)真正的成了虛擬的和專用的,這就是OpenVPN對于網(wǎng)絡(luò)拓?fù)渲С肿顝姶蟮牡胤剑琌penVPN另外的強大之處前面的文章都快說爛了,比如和SSL結(jié)合,和PKI結(jié)合等等,在和主機網(wǎng)絡(luò)協(xié)議棧結(jié)合處,OpenVPN使用了虛擬網(wǎng)卡,這也快說爛了,因此本系列文章著重談OpenVPN的強大路由功能。如果能徹底理解這個,那么相信你已經(jīng)理解了其它,進而閱讀源代碼和修改定制源代碼已經(jīng)不是什么困難事了,因此本系列文章不再冗余的分析源碼。

那么,被OpenVPN擴展而成的網(wǎng)絡(luò)到底是什么樣子呢?這要看你使用tap模式還是tun模式了:

tap模式下,VPN節(jié)點(多個客戶端和一個服務(wù)器端)組成了一個以太網(wǎng),而VPN服務(wù)器就相當(dāng)于一臺以太網(wǎng)交換機。由于以太網(wǎng)是IP協(xié)議棧下層的封裝,tap模式下的所有VPN節(jié)點以及節(jié)點后被bridge的節(jié)點組成了一個大的以太網(wǎng)而不是IP網(wǎng)絡(luò),OpenVPN內(nèi)部路由是作用于MAC地址的,對于任意來源IP,OpenVPN內(nèi)部路由都是直通的,寫入虛擬網(wǎng)卡后,由系統(tǒng)路由判決。因此tap模式下,如果需要各個VPN節(jié)點后面的網(wǎng)絡(luò)之間達到 IP互通的效果,那就必須要么做NAT映射,將VPN節(jié)點后面的網(wǎng)絡(luò)NAT到VPN節(jié)點,要么輔助以系統(tǒng)的IP路由,而這些配置很復(fù)雜,很難維護。見下圖:

tun模式下,VPN節(jié)點(多個客戶端和一個服務(wù)器端)以及其它允許接入的網(wǎng)絡(luò)(通過iroute配置)組成了一個IP網(wǎng)絡(luò),而VPN服務(wù)器就相當(dāng)于一臺IP路由器。tun模式下的所有VPN節(jié)點以及節(jié)點后被iroute內(nèi)部路由以及系統(tǒng)路由指向的節(jié)點組成了一個大的IP網(wǎng)。此模式下,內(nèi)部路由和系統(tǒng)路由共同起作用,OpenVPN的事件機制可以將這二者無縫結(jié)合。見下圖:

OpenVPN事實上通過定義良好的銜接口和既有的優(yōu)秀框架結(jié)合,這些銜接口分別是SSL協(xié)議/PKI,虛擬網(wǎng)卡/主機協(xié)議棧,內(nèi)部路由/事件機制/系統(tǒng) IP路由。OpenVPN既做到了機制的完整,和外部框架的結(jié)合,又給了用戶靈活的配置,因此,OpenVPN很棒。

原文博客:http://blog.csdn.net/dog250/article/details/6979231

責(zé)任編輯:張存 來源: 博客
相關(guān)推薦

2010-08-24 10:09:37

路由防止掉線

2009-12-28 15:04:40

2011-02-22 15:06:48

openVPN

2012-02-23 23:20:46

2010-08-16 11:26:00

軟路由技術(shù)

2011-04-15 10:01:39

2010-08-16 12:35:19

認(rèn)知網(wǎng)絡(luò)路由

2010-08-17 09:55:07

路由器技術(shù)

2010-12-22 11:27:23

2010-09-01 22:12:53

2010-10-08 15:50:18

無線路由高級選項

2009-12-22 14:23:02

路由選擇技術(shù)

2009-11-19 18:14:46

策略路由技術(shù)

2009-12-03 11:22:07

路由器功能指標(biāo)

2009-12-03 18:21:15

軟路由技術(shù)

2009-12-02 19:43:05

軟路由技術(shù)

2023-07-18 15:58:29

NodeJS開發(fā)

2013-05-30 13:06:26

交換技術(shù)高級交換技術(shù)

2009-12-15 15:54:11

路由器技術(shù)

2009-11-11 16:56:46

VRRP路由技術(shù)
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产精品福利网站 | 亚洲精品乱码久久久久久久久 | 精品国产不卡一区二区三区 | 日韩欧美亚洲 | 羞羞网站在线观看 | 欧美黑人国产人伦爽爽爽 | 久久成人精品视频 | 日韩欧美国产精品 | 亚洲精品久久久蜜桃 | 免费日本视频 | 91视频在线 | 天天视频一区二区三区 | 蜜桃视频麻豆 | 黄色免费网站在线看 | aa级毛片毛片免费观看久 | 亚洲欧洲色视频 | 91一区二区三区 | 孰女乱色一区二区三区 | 精品福利一区二区三区 | 夜夜爆操| 亚洲精品456 | 免费精品视频一区 | av中文天堂 | www亚洲精品 | 毛片入口| 午夜激情小视频 | 九九久久免费视频 | www日本高清 | 一级片免费在线观看 | 热99在线| 日本久久久一区二区三区 | 亚洲精品黄色 | 国产精品看片 | 国产成人在线播放 | 国产欧美精品一区二区三区 | 三级视频国产 | 福利网站导航 | 黄色毛片免费看 | 精品一区二区三区四区视频 | 一级a性色生活片久久毛片 午夜精品在线观看 | 淫片一级国产 |