UTM講堂之網(wǎng)絡地址轉換技術
在企業(yè)中管理員可以使內部的IP隱藏,是互聯(lián)網(wǎng)上的主機無法判斷內部網(wǎng)絡的情況。可以使內網(wǎng)對外不可見,互聯(lián)網(wǎng)就不能訪問內網(wǎng),但內網(wǎng)主機之間是可以相互訪問的。而UTM網(wǎng)關可以部分解決這個問題。但通過網(wǎng)關的形式會給網(wǎng)管帶來很大開銷,所以我們就可以用到網(wǎng)絡地址轉換技術。
網(wǎng)絡地址轉換可以提供一種透明的完善的解決方案,網(wǎng)絡管理員可以決定哪些內部的IP地址需要隱藏,哪些地址需要映射成為一個對互聯(lián)網(wǎng)可見的IP地址。網(wǎng)絡地址轉換可以實現(xiàn)一種“單向路由”,這樣就不存在從互聯(lián)網(wǎng)到內部網(wǎng)或主機的路由。
網(wǎng)絡地址轉換的工作機制是當網(wǎng)絡數(shù)據(jù)包流入UTM時,系統(tǒng)會檢查該數(shù)據(jù)包是否符合用戶設定的網(wǎng)絡地址轉換規(guī)則,如果找到符合的規(guī)則,系統(tǒng)會按照規(guī)則對數(shù)據(jù)包進行轉換,同時建立一個網(wǎng)絡地址轉換進程。當有數(shù)據(jù)包返回時,將檢查進程表,進行相應的處理。這里可以看到,網(wǎng)絡地址轉換需要對每一個TCP/IP連接建立一個對應的網(wǎng)絡地址轉換進程表項。假如不對查詢算法進行優(yōu)化,則在訪問量大的情況下,查詢網(wǎng)絡地址轉換進程表項將會占用大量的CPU時間。
在網(wǎng)絡地址轉換圖(如圖1所示)中的10.0.0.1主機處于內部網(wǎng),網(wǎng)關為UTM內部接口10.0.0.2,UTM外網(wǎng)接口IP地址是202.112.108.1,互聯(lián)網(wǎng)上有一臺服務器的IP地址是202.100.10.50.用戶機10.0.0.1通過UTM的網(wǎng)絡地址轉換才能訪問服務器202.100.10.50,下面介紹網(wǎng)絡地址轉換的過程。
圖1
在不同網(wǎng)段IP地址的轉換情況如表3-1所示,內部地址是10.0.0.0子網(wǎng),UTM網(wǎng)關對外部的地址是202.112.108.1,可以將內部網(wǎng)的地址都轉換成202.112.108.1出去。但這會遇到一個問題,所有返回數(shù)據(jù)包的目的IP都是202.112.108.1,那么UTM如何識別它們并送回內部網(wǎng)的真實主機呢?可以讓UTM記住所有出去的包,因為每個包都有一個目的端口,每臺主機的端口可能都不一樣。還可以讓UTM記住所有出去的包的TCP序列號,不同主機發(fā)送的包的序列號不一樣,UTM會根據(jù)記錄把返回的數(shù)據(jù)包送達正確的發(fā)送主機。
表3-1 不同網(wǎng)段IP地址的轉換
NAT可以有多種模式,主要有如下幾種。
(1)靜態(tài)地址轉換
這種模式中,一個指定的內部主機有一個從不改變的固定的轉換表,一般靜態(tài)地址轉換將內部地址轉換成UTM的外網(wǎng)接口地址,如圖2所示。靜態(tài)地址轉換是一種一對一的雙向地址映射,主要用于內部服務器向外提供服務的情況。
圖2
(2)源地址轉換
源地址轉換是基于源地址的網(wǎng)絡地址轉換,主要用于內網(wǎng)訪問外網(wǎng),減少公有地址的數(shù)目,隱藏內部地址,如圖3所示。
圖3
(3)目的地址轉換
目的地址轉換可分為目標地址映射、目標端口映射、服務器負載均衡等。目的地址轉換也稱為反向地址轉換或地址映射。目的地址轉換是一種單向的針對目標地址的映射,主要用于內部服務器向外部提供服務的情況,它與靜態(tài)地址轉換的區(qū)別在于它是單向的。外部可以主動訪問內部,內部卻不可以主動訪問外部。另外,可使用目的地址轉換實現(xiàn)負載均衡的功能,即可以將一個目標網(wǎng)絡地址轉換為多個內部服務器地址。也可以通過端口的映射將不同的端口映射到不同的機器上。目的地址轉換如圖4所示。
圖4
不管是以上哪種模式,都可以基于IP地址和端口方式,采用端口地址轉換,管理員只需要設定一個或多個可以用作端口地址轉換的公有互聯(lián)網(wǎng)地址,用戶的訪問將會映射到IP池中IP的一個端口上去,這使得每個合法互聯(lián)網(wǎng) IP可以映射六萬多臺內部網(wǎng)主機。
例如有一個小型網(wǎng)絡,它的IP地址段是192.168.0.1-192.168.0.255,通過一臺UTM上網(wǎng),UTM有兩個IP地址,一個是網(wǎng)絡內部地址,如192.168.0.1,一個是合法的IP地址,如202.106.0.22,如圖5所示。
圖5
如果局域網(wǎng)內部的一臺電腦H4,IP地址是192.168.0.3:4000,4000是它的端口號,想訪問搜狐的主頁www.sohu.com,192.168.0.3:4000的請求先傳到UTM 192.168.0.1上,UTM把這個IP地址轉換為202.106.0.22:9000,然后以端口號為9000的這個IP地址向sohu發(fā)出請求,當sohu受到請求后,會回答,它先把回答的數(shù)據(jù)流傳給202.106.0.22:9000,也就是局域網(wǎng)邊界的UTM,UTM接收到數(shù)據(jù)后,會查找與9000這個端口號相關聯(lián)的內部IP地址,當它發(fā)現(xiàn)是192.168.0.3:4000后,就把數(shù)據(jù)傳給192.168.0.3:4000,這樣,IP地址的轉換就完成了。
UTM通過靈活的應用網(wǎng)絡地址轉換功能,在對通過UTM的數(shù)據(jù)進行全面細致檢測的同時,還保證了網(wǎng)絡的連通性,極大地提高了企業(yè)網(wǎng)絡資源的應用。
【編輯推薦】