基于Linux的地址轉(zhuǎn)換技術(shù)探討和實(shí)現(xiàn)計(jì)算機(jī)專業(yè)_第1頁
基于Linux的地址轉(zhuǎn)換技術(shù)探討和實(shí)現(xiàn)計(jì)算機(jī)專業(yè)_第2頁
基于Linux的地址轉(zhuǎn)換技術(shù)探討和實(shí)現(xiàn)計(jì)算機(jī)專業(yè)_第3頁
基于Linux的地址轉(zhuǎn)換技術(shù)探討和實(shí)現(xiàn)計(jì)算機(jī)專業(yè)_第4頁
基于Linux的地址轉(zhuǎn)換技術(shù)探討和實(shí)現(xiàn)計(jì)算機(jī)專業(yè)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、基于Linux的地址轉(zhuǎn)換技術(shù)探討和實(shí)現(xiàn)摘 要:伴隨著當(dāng)今網(wǎng)絡(luò)技術(shù)的蓬勃發(fā)展,人們對(duì)于IP地址的需求的數(shù)量猛增,然而對(duì)于已經(jīng)分配的所剩無幾的IPv4地址,對(duì)于網(wǎng)絡(luò)的發(fā)展必定是一個(gè)瓶頸。IPv6地址的出現(xiàn)使得人們看到了未來的希望,但是由于技術(shù)的不完善,從IPv4到IPv6的過渡需要相當(dāng)?shù)囊欢螘r(shí)間。在這段時(shí)間里,NAT技術(shù)的出現(xiàn)很好地解決了所剩無幾的IP地址對(duì)于日益增長的網(wǎng)絡(luò)需求所帶來的限制。NAT技術(shù)將因特網(wǎng)和局域網(wǎng)地址互相結(jié)合,使局域網(wǎng)內(nèi)的計(jì)算機(jī)在訪問因特網(wǎng)時(shí)使用因特網(wǎng)合法的地址,使得更多的的計(jì)算機(jī)在局域網(wǎng)中增長而不會(huì)對(duì)因特網(wǎng)IP地址帶來巨大的壓力。對(duì)于因特網(wǎng)上的用戶可以訪問局域網(wǎng)中指定發(fā)布的服

2、務(wù),與此同時(shí)還能夠有效地避免來自因特網(wǎng)的攻擊,隱藏了計(jì)算機(jī)的真實(shí)IP地址,保護(hù)網(wǎng)絡(luò)內(nèi)部的計(jì)算機(jī)。NAT是解決IP地址匱乏問題的一種行之有效的技術(shù),本文探討了NAT技術(shù)的原理以及在Linux系統(tǒng)中的實(shí)現(xiàn)方案。關(guān)鍵詞:Linux; IPv4; NAT技術(shù)Address Translation Technology Research and Implementation Based on LinuxABSTRACT:Along with the development of network technology, the number of people in demand for IP addre

3、sses is more than before, but for the few IPv4 addresses have been allocated. But for the development of the network must be a bottleneck. IPv6 addresses appear makes people see hope for the future, but because of the imperfect technology, the transition from the IPv4 to IPv6 requires a long time. D

4、uring this time, NAT technology solves the limitations running out of IP addresses the growing demand for network brings. NAT technology of the Internet and LAN address with each other, so that the computer on the LAN using the Internet legitimate address when accessing the Internet, making the comp

5、uter more growth rather than be in the LAN IP address of the Internet has brought tremendous pressure. For users on the Internet can access the published services specified in the LAN, while also able to effectively prevent attacks from the Internet, to hide the real IP address of the computer to pr

6、otect the internal network computer. NAT is an effective technique to solve the problem of shortage about IP addresses. This article discusses the principle of NAT technology and implementation in the Linux system.KEYWORDS: Linux; IPv4; NAT technology目 錄1 引言12 相關(guān)知識(shí)及技術(shù)12.1 傳輸在網(wǎng)絡(luò)間的數(shù)據(jù)報(bào)頭的格式12.2 NAT地址轉(zhuǎn)換技

7、術(shù)的分類12.3 SNAT和DNAT技術(shù)22.4 基礎(chǔ)環(huán)境23 NAT技術(shù)原理34 以LINUX服務(wù)器作為網(wǎng)關(guān)實(shí)現(xiàn)NAT44.1 Linux中NAT的實(shí)現(xiàn)原理44.2 Iptables語法64.3 實(shí)驗(yàn)的設(shè)計(jì)與實(shí)現(xiàn)75 系統(tǒng)測試105.1 SNAT測試105.2 DNAT的Web測試115.3 DNAT的SSH測試126 結(jié)束語14致謝15參考文獻(xiàn)161 引言 隨著互聯(lián)網(wǎng)的飛速發(fā)展,使得IPv4地址供不應(yīng)求,這種現(xiàn)象在很多單位是尤為突出的,傳統(tǒng)的解決辦法是利用動(dòng)態(tài)地址分配(DHCP)或者劃分子網(wǎng)和超網(wǎng)技術(shù)。 利用傳統(tǒng)的動(dòng)態(tài)地址分配技術(shù)顯然無法實(shí)現(xiàn)網(wǎng)絡(luò)應(yīng)用的需求,因?yàn)閯?dòng)態(tài)地址分配僅僅是簡化了客戶

8、端的配置,增加了IP地址分配的靈活性,并沒有起到有效節(jié)省IP地址的作用。比如,晚上同時(shí)上網(wǎng)的客戶端很多時(shí),DHCP服務(wù)器中地址池的IP地址會(huì)很快消耗殆盡,不一定可以滿足所有用戶的上網(wǎng)請求。 劃分子網(wǎng)技術(shù)只是在申請到一段合法的IP地址的時(shí)候?qū)⒋硕蜪P地址進(jìn)行劃分,其中的每一個(gè)IP地址都是在公網(wǎng)上的合法地址,并沒有起到節(jié)省IP地址的效果。 超網(wǎng)技術(shù)突破了有類網(wǎng)絡(luò)的限制,利用子網(wǎng)掩碼的變化將可用的IP地址大大的增加了。但由于IPv4地址的自身限制,還是無法滿足當(dāng)今對(duì)于IP地址的巨大需求。 在這樣的環(huán)境下,NAT技術(shù)應(yīng)運(yùn)而生,充分的緩解了IP地址匱乏帶來的尷尬局面,這種技術(shù)巧妙地將因特網(wǎng)地址和局域網(wǎng)地

9、址結(jié)合起來,實(shí)現(xiàn)局域網(wǎng)地址和因特網(wǎng)地址的相互轉(zhuǎn)換,使得局域網(wǎng)內(nèi)的終端能夠正確的在因特網(wǎng)上訪問,還不會(huì)顯示自身真實(shí)的IP地址,有效的避免了來自因特網(wǎng)上的攻擊。同時(shí)也可以限制因特網(wǎng)上的用戶只能訪問到局域網(wǎng)的某臺(tái)服務(wù)器上,實(shí)現(xiàn)了訪問控制。而且可以根據(jù)不同的網(wǎng)絡(luò)環(huán)境采用不同的方案。并且具有配置簡單,易于實(shí)現(xiàn),對(duì)用戶也是透明的。并且NAT技術(shù)得到了廣泛的運(yùn)用。2 相關(guān)知識(shí)及技術(shù)2.1 傳輸在網(wǎng)絡(luò)間的數(shù)據(jù)報(bào)頭的格式 數(shù)據(jù)在網(wǎng)絡(luò)間傳輸?shù)幕締卧菙?shù)據(jù)報(bào),而每個(gè)數(shù)據(jù)報(bào)都包含一個(gè)報(bào)頭部分和數(shù)據(jù)部分,其中報(bào)頭部分描述了數(shù)據(jù)的目的地址以及和其它數(shù)據(jù)包之間的關(guān)系。 IP數(shù)據(jù)報(bào)是TCP/IP協(xié)議定義在因特網(wǎng)上的網(wǎng)絡(luò)層中

10、傳輸?shù)囊环N數(shù)據(jù)報(bào),數(shù)據(jù)報(bào)的首部為固定長度20字節(jié)的報(bào)頭部分,是所有IP數(shù)據(jù)報(bào)都有的,其中包含著四位用來存放數(shù)據(jù)報(bào)源地址和目的地址的信息,即源IP地址和目的IP地址。2.2 NAT地址轉(zhuǎn)換技術(shù)的分類 (1) 靜態(tài)地址轉(zhuǎn)換技術(shù)(Static Nat) 靜態(tài)地址轉(zhuǎn)換是最簡單的一種轉(zhuǎn)換方式,它把局域網(wǎng)的IP地址一對(duì)一的轉(zhuǎn)換成因特網(wǎng)的IP地址,并且是不會(huì)改變的,沒有真正意義上的節(jié)省因特網(wǎng)的IP地址,但是利用了轉(zhuǎn)換的技術(shù),隱藏了終端上的真實(shí)IP地址,減少了來自外部網(wǎng)絡(luò)對(duì)于終端發(fā)起的攻擊和破壞,保護(hù)了終端。靜態(tài)地址轉(zhuǎn)換技術(shù)多數(shù)使用在公司和企業(yè)等服務(wù)器端。 (2) 動(dòng)態(tài)地址轉(zhuǎn)換技術(shù)(Dynamic Nat)

11、動(dòng)態(tài)地址轉(zhuǎn)換技術(shù)是將是將局域網(wǎng)IP地址轉(zhuǎn)換到一段因特網(wǎng)的IP地址中,這段地址是已經(jīng)購買或分配好的,實(shí)現(xiàn)了多對(duì)多之間的地址轉(zhuǎn)換。適用于局域網(wǎng)內(nèi)的終端數(shù)量大于分配好的因特網(wǎng)地址數(shù)量,但是由于轉(zhuǎn)換時(shí)也同樣是一個(gè)終端轉(zhuǎn)換成指定網(wǎng)段內(nèi)的一個(gè)因特網(wǎng)地址,所以當(dāng)局域網(wǎng)內(nèi)同時(shí)訪問因特網(wǎng)的終端數(shù)量大于分配好的地址時(shí),就會(huì)造成某些局域網(wǎng)地址無法轉(zhuǎn)換而不能訪問。動(dòng)態(tài)轉(zhuǎn)換基本實(shí)現(xiàn)了節(jié)約IP地址的功能,但是有局限性。 (3) 端口多路復(fù)用(Port Address Translation) 端口多路復(fù)用技術(shù)是現(xiàn)在網(wǎng)絡(luò)中最常使用的地址轉(zhuǎn)換技術(shù),它其實(shí)是動(dòng)態(tài)地址轉(zhuǎn)換的一種變形,它可以將所有的局域網(wǎng)地址轉(zhuǎn)換為一個(gè)因特網(wǎng)地址,

12、使局域網(wǎng)地址可以同時(shí)訪問因特網(wǎng),大大的節(jié)省了因特網(wǎng)的IP地址。端口多路復(fù)用是將不同地址的IP對(duì)應(yīng)轉(zhuǎn)換到指定因特網(wǎng)IP地址上的不同端口上。同時(shí)又可隱藏網(wǎng)絡(luò)內(nèi)部的所有主機(jī),有效避免來自Internet的攻擊。2.3 SNAT和DNAT技術(shù) DNAT是目的地址轉(zhuǎn)換技術(shù)(Destination Network Address Translation),主要用在當(dāng)有一個(gè)合法的IP地址,要把對(duì)防火墻和代理服務(wù)器的訪問重定向到其它的終端上。即改變的是目的地址,使報(bào)文能重路由到某個(gè)終端。 SNAT叫做源地址轉(zhuǎn)換技術(shù)(Source Network Address Translation),是改變報(bào)文的源地址,這

13、在極大程度上可以隱藏本地網(wǎng)絡(luò)等。有了這個(gè)操作,防火墻就能自動(dòng)地對(duì)報(bào)文做SNAT和De-SNAT(就是反向的SNAT),以使局域網(wǎng)能連接到Internet。2.4 基礎(chǔ)環(huán)境 為了滿足實(shí)驗(yàn)設(shè)計(jì)所需的環(huán)境,應(yīng)安裝Linux系統(tǒng),并且安裝了Iptables服務(wù),推薦為RedHat Enterprise版本,而且系統(tǒng)內(nèi)核必須為2.4以上。 Iptables是與內(nèi)核版本為2.4以上的Linux內(nèi)核集成的IP信息包過濾系統(tǒng)。如果 Linux系統(tǒng)連接到因特網(wǎng)或局域網(wǎng)、服務(wù)器或連接局域網(wǎng)和因特網(wǎng)的代理服務(wù)器,則有利于在Linux系統(tǒng)上更好地控制IP信息包過濾和防火墻配置。3 NAT技術(shù)原理 NAT是Networ

14、k Address Translation(網(wǎng)絡(luò)地址轉(zhuǎn)換)的縮寫,它不是一種新的技術(shù),而是一種解決網(wǎng)絡(luò)問題的成熟技術(shù),多年來幾乎沒有做過任何的改動(dòng)。目前,大部分的園區(qū)網(wǎng)所使用的網(wǎng)關(guān)中都支持該技術(shù),有些單位采用專用的路由器做網(wǎng)關(guān),比如CISCO,而有些學(xué)校等機(jī)構(gòu)采用服務(wù)器做網(wǎng)關(guān),比如Linux服務(wù)器。而無論在CISCO路由器上還是在Linux內(nèi)核的服務(wù)器上都支持NAT的實(shí)現(xiàn)。 本文探討的是NAT技術(shù)最重要的功能,也就會(huì)通過地址復(fù)用來提高了對(duì)IP地址的利用率。在NAT技術(shù)中涉及了兩種IP地址概念:公網(wǎng)地址和私有地址。公網(wǎng)地址是合法的IP地址,它是由Inter NIC或者是網(wǎng)絡(luò)服務(wù)提供商分配的地址,

15、是全球唯一的地址,是可路由的地址。私有地址就是局域網(wǎng)內(nèi)部的地址,是網(wǎng)絡(luò)供應(yīng)商預(yù)留的,只能在局域網(wǎng)內(nèi)部使用的私有的IP地址,這些地址不能被路由。這些私有地址包括55,55,55。 NAT一般是設(shè)置在網(wǎng)關(guān)處,本文采用代理服務(wù)器作為網(wǎng)關(guān)。當(dāng)IP數(shù)據(jù)報(bào)從內(nèi)部的終端訪問因特網(wǎng)時(shí),在經(jīng)過代理服務(wù)器時(shí)會(huì)進(jìn)行NAT技術(shù),NAT會(huì)修改數(shù)據(jù)報(bào)的源地址,將其轉(zhuǎn)換為一個(gè)可以在互聯(lián)網(wǎng)上路由的合法的IP地址,并且把這個(gè)轉(zhuǎn)換前后的兩個(gè)IP都記錄到系統(tǒng)的一張映像表中。當(dāng)外部網(wǎng)絡(luò)發(fā)送響應(yīng)數(shù)據(jù)報(bào)回到

16、這個(gè)終端,NAT會(huì)根據(jù)映像表中剛才記錄的映像關(guān)系找到數(shù)據(jù)報(bào)要到達(dá)的內(nèi)部終端的IP地址,然后再修改接收來的數(shù)據(jù)報(bào)的首部的目的地址,最后將數(shù)據(jù)報(bào)發(fā)送給內(nèi)部地址對(duì)應(yīng)的終端,從而達(dá)到兩個(gè)主機(jī)之間的通信。 在配置靜態(tài)地址轉(zhuǎn)換后就會(huì)產(chǎn)生一張存放地址轉(zhuǎn)換對(duì)應(yīng)的私有地址和公網(wǎng)地址的映射表,如表3-1所示。 端口多路復(fù)用技術(shù)是在內(nèi)部地址訪問公共網(wǎng)絡(luò)時(shí)才進(jìn)行轉(zhuǎn)換,會(huì)產(chǎn)生相應(yīng)的轉(zhuǎn)換記錄,也同樣會(huì)存放在一張地址轉(zhuǎn)換映射表中,如表3-2所示。表3-1 靜態(tài)地址轉(zhuǎn)換的映射表私有地址公網(wǎng)地址./24/25/24/250

17、0/2400/25表3-2 端口多路復(fù)用的映射表私有地址公共地址/24:1723/25:2123/24:1723/25:212400/24:1723/25:2222 表3-2與表3-1的映射表顯然是不同的,當(dāng)內(nèi)部多個(gè)客戶機(jī)對(duì)外訪問時(shí),NAT給它們都分配了相應(yīng)的公網(wǎng)地址,但為了建立一一映射,在公網(wǎng)地址后又加上了不同的端口號(hào),這樣可以多個(gè)內(nèi)部私有地址共同被轉(zhuǎn)換成了同一個(gè)公網(wǎng)地址,從而實(shí)現(xiàn)了節(jié)省IP地址的作用。4 以LINUX服務(wù)器作為網(wǎng)關(guān)實(shí)現(xiàn)NAT4.1

18、 Linux中NAT的實(shí)現(xiàn)原理 在Linux下使用Iptables服務(wù)可以實(shí)現(xiàn)NAT功能,包括靜態(tài)地址轉(zhuǎn)換、動(dòng)態(tài)地址轉(zhuǎn)換、端口復(fù)用動(dòng)態(tài)地址轉(zhuǎn)換,三種方式都可以實(shí)現(xiàn)網(wǎng)絡(luò)地址轉(zhuǎn)換功能。在Iptables內(nèi)部分為三個(gè)表,分別是 filter,nat,mangle,每個(gè)表又有不同的操作鏈(Chains)。在filter(過濾)表中,定義了三個(gè)鏈,分別是INPUT(輸入),FORWARD(輸出),OUTPUT(輸出),對(duì)包的進(jìn)入、轉(zhuǎn)發(fā)、發(fā)出進(jìn)行定義的三個(gè)過濾鏈。nat表是以實(shí)現(xiàn)端口轉(zhuǎn)發(fā)功能和地址轉(zhuǎn)換的表,定義了PREROUTING(路由前),POSTROUTING(路由后),OUTPUT(輸出)三個(gè)鏈;

19、而netfilter的mangle表則是一個(gè)自定義表,里面包括上面的filter以及nat表中的各種操作鏈,它可以進(jìn)行一些自定義的操作1。NAT工作原理如圖4-1所示。圖4-1 報(bào)文在Iptables中的處理過程其中要經(jīng)過如下步驟: (1)DNAT 在數(shù)據(jù)報(bào)進(jìn)入到系統(tǒng)之后,首先Mangle表的PREROUTING在最前面,當(dāng)一個(gè)報(bào)文到達(dá)Linux的網(wǎng)絡(luò)接口的時(shí)候先經(jīng)過mangle的PREROUTING,然后是nat表的PREROUTING,這個(gè)鏈就是在進(jìn)行路由前要經(jīng)過的。在PREROUTING鏈里面對(duì)包的操作是DNAT,也就是改變目的地址(或端口)。通常用在端口轉(zhuǎn)發(fā),或者nat到內(nèi)網(wǎng)的,當(dāng)一個(gè)

20、包過來的時(shí)候要改變它的目的地址,所以PREROUTING這個(gè)鏈一定要在進(jìn)路由(Routing)前。 (2)路由和轉(zhuǎn)發(fā) 檢查報(bào)文的源地址和目的地址,在對(duì)于的filter表中查詢相關(guān)的規(guī)則,并且執(zhí)行相應(yīng)的操作,例如接收轉(zhuǎn)發(fā)、丟棄等。 (3) SNAT 當(dāng)報(bào)文經(jīng)過路由和轉(zhuǎn)發(fā)過程后,會(huì)從Linux的網(wǎng)絡(luò)接口發(fā)出,發(fā)出前最后經(jīng)過的是nat表中的POSTROUTING鏈,SNAT就是在這里進(jìn)行。SNAT所做的操作是修改報(bào)文的源地址,即重寫報(bào)文首部中的源IP地址。當(dāng)幾臺(tái)終端共享一個(gè)Internet 連接時(shí),就可以使用。SNAT的作用就是讓所有從本地網(wǎng)發(fā)出去的包看起來都是從同一個(gè)終端發(fā)出的。SNAT只能用在n

21、at表的POSTROUTING鏈里,這樣才能保證包從網(wǎng)絡(luò)接口出去的時(shí)候都進(jìn)行了地址轉(zhuǎn)換的操作,而且特別的是只要連接的第一個(gè)符合條件的包被SNAT了,那么這個(gè)連接的其它所有的包都會(huì)自動(dòng)地被SNAT,而且這個(gè)規(guī)則還會(huì)應(yīng)用于這個(gè)連接所在流的所有數(shù)據(jù)包。在經(jīng)過SNAT轉(zhuǎn)換的同時(shí),系統(tǒng)內(nèi)部會(huì)產(chǎn)生一條轉(zhuǎn)換前的IP地址信息、端口號(hào)和轉(zhuǎn)換后IP地址信息、端口號(hào)相對(duì)應(yīng)的記錄,存放在了映射表中。4.2 Iptables語法 Iptables -t 要操作的表 要操作的鏈 規(guī)則號(hào)碼 匹配條件 -j 匹配后的動(dòng)作 2。 常見的操作命令: -L查看,v詳細(xì),n不反解 -line-number -A追加,放置最后一條 -

22、I插入,默認(rèn)插入成第一條 -D刪除 -F清空 -P 設(shè)置默認(rèn)策略policy 匹配的條件: -s 源地址eg:-s /24 -d 目標(biāo)地址eg:-d -p協(xié)議eg:-p tcp|upd|icmp -iinput 從接口進(jìn)入的數(shù)據(jù)包eg:-i lo -ooutput 從網(wǎng)口出去的數(shù)據(jù)包eg:-o eth0 -dport指定端口號(hào),常與-p連用eg:-p tcp -dport 80 處理方法: -j ACCEPT允許 -j DROP丟棄 -j REJECT拒絕 -j SNAT源地址轉(zhuǎn)換 -j DNAT目標(biāo)地址轉(zhuǎn)換 -j LOG寫日志 -j MARK打標(biāo)

23、記 -j MASQUERADE地址偽裝4.3 實(shí)驗(yàn)的設(shè)計(jì)與實(shí)現(xiàn)以晉中學(xué)院的校園網(wǎng)為例,在學(xué)校只租用了一個(gè)公網(wǎng)的合法IP地址的前提下保證校園內(nèi)部的終端都可以進(jìn)行正常的上網(wǎng)瀏覽;同時(shí)對(duì)于學(xué)校服務(wù)器上所發(fā)布的網(wǎng)站,其他網(wǎng)絡(luò)的主機(jī)可以通過因特網(wǎng)進(jìn)行正常訪問;對(duì)于學(xué)校的網(wǎng)絡(luò)管理員來說,可以實(shí)現(xiàn)遠(yuǎn)程登陸進(jìn)行控制和維護(hù)學(xué)校服務(wù)器。網(wǎng)絡(luò)拓?fù)淙鐖D4-2所示。將代理服務(wù)器配置為雙網(wǎng)卡,分別為eth0和eth1,其中eth0為與外部公共網(wǎng)絡(luò)相連接的網(wǎng)口,該網(wǎng)卡的IP地址為公網(wǎng)上的合法地址;eth1為與內(nèi)部網(wǎng)絡(luò)相連的網(wǎng)卡,該網(wǎng)卡的IP地址為校園網(wǎng)內(nèi)部的私有地址3。具備了相關(guān)條件的代理服務(wù)器上配置NAT步驟的過程如下:

24、圖4-2 實(shí)驗(yàn)拓?fù)鋱D (1) 安裝Linux系統(tǒng) 本次試驗(yàn)的代理服務(wù)器上安裝RedHat Enterprise Linux 5版本的桌面模式4,系統(tǒng)會(huì)自帶安裝Iptables軟件,在初次登陸時(shí)設(shè)置為開啟Iptables服務(wù)。 (2) 網(wǎng)卡配置 在學(xué)校代理服務(wù)器上安裝完成操作系統(tǒng)之后,在代理服務(wù)器的eth0網(wǎng)卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth0上其中修改以下幾行:BOOTPROTO=static/IP地址獲取協(xié)議IPADDR=/IP地址NETMASK=28/子網(wǎng)掩碼GATEWAY= 202.30

25、.8.1/網(wǎng)關(guān)ONBOOT=yes/開機(jī)啟動(dòng) 同樣在代理服務(wù)器上的eth1配置文件/etc/sysconfig/network-scripts/ifcfi-eth1中修改以下幾行:BOOTPROTO=staticIPADDR= NETMASK=GATEWAY= 54ONBOOT=yes 當(dāng)內(nèi)網(wǎng)有多臺(tái)終端連接且需要上網(wǎng),則將內(nèi)網(wǎng)終端主機(jī)的網(wǎng)關(guān)都設(shè)置為eth1的IP地址。 對(duì)內(nèi)部終端Host1進(jìn)行配置: IPADDR= NETMASK= GATEWAY= 對(duì)外

26、部終端Public進(jìn)行配置: IPADDR= 00/25 NETMASK=28 (3) 開啟轉(zhuǎn)發(fā)功能 完成上述配置后,Host1可以ping通Linux系統(tǒng)主機(jī)的eth1的IP,因?yàn)檫@兩個(gè)終端是在同一個(gè)網(wǎng)段內(nèi),是通過交換機(jī)連接的。但是,Host 1 無法ping通Linux系統(tǒng)主機(jī)的eth0網(wǎng)口的IP,因此需要開啟Linux系統(tǒng)主機(jī)的轉(zhuǎn)發(fā)功能。 開啟Linux的轉(zhuǎn)發(fā)功能,執(zhí)行如下命令: # echo “1” /proc/sys/net/ipv4/ip_forward 查看系統(tǒng)是否啟用了轉(zhuǎn)發(fā)功能,可以執(zhí)行如下命令: # cat /proc/sys/n

27、et/ipv4/ip_forward 結(jié)果為1代表已啟用,0代表未啟用。 (4) 配置SNAT規(guī)則 首先將Iptables中的規(guī)則清除,排除干擾: #iptables F/清空filter表 #iptables -t nat F/清空nat表 固定的公網(wǎng)IP地址(外網(wǎng)接口地址)的最基本的從內(nèi)部私網(wǎng)訪問外部公網(wǎng)SNAT操作: #iptables -t nat -A POSTROUTING -s /24 -o eth0 -j SNAT to-source 或者使用地址偽裝: #iptables t nat -A POSTROUTING s 192.168.

28、1.0/24 o eth0 j MASQUERADE 第二種方法多用于外網(wǎng)口的公網(wǎng)地址是DHCP動(dòng)態(tài)獲取的(如ADSL撥號(hào))。 (5) 配置DNAT規(guī)則 Web是World Wide Web的縮寫,是一個(gè)由許多互相鏈接的超文本組成的系統(tǒng),通過互聯(lián)網(wǎng)訪問。資源通過超文本傳輸協(xié)議(Hypertext Transfer Protocol)傳送給用戶,而后者通過點(diǎn)擊鏈接來獲得資源。萬維網(wǎng)不等同互聯(lián)網(wǎng),萬維網(wǎng)只是互聯(lián)網(wǎng)所能提供的服務(wù)其中之一,是靠著互聯(lián)網(wǎng)運(yùn)行的一項(xiàng)服務(wù)。默認(rèn)端口為805。 SSH為Secure Shell的縮寫,由IETF的網(wǎng)絡(luò)工作小組所制定,SSH為建立在應(yīng)用層和傳輸層基礎(chǔ)上的安全協(xié)議

29、。SSH是目前較可靠,專為遠(yuǎn)程登錄會(huì)話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。SSH默認(rèn)端口為226。 此次試驗(yàn)以Web服務(wù)和SSH服務(wù)為例。 指定登陸到學(xué)校網(wǎng)站主頁時(shí)登陸到Host1上的Web服務(wù): #iptables t nat -A PREROUTING i eth0 d p tcp dport 80 j DNAT todestination 外部終端通過SSH登陸到內(nèi)部網(wǎng)絡(luò)時(shí),指定登陸到內(nèi)部終端Host1上: #iptables t nat -A PREROUTING i eth0 d p tcp dport 22 j DNA

30、T todestination (6) 保存并重啟生效 進(jìn)行完上述實(shí)驗(yàn)配置后將現(xiàn)在的過濾規(guī)則保存,并且重新啟動(dòng)后才能生效,命令如下:#service iptables save/保存規(guī)則#service iptables restart/重新啟動(dòng)Iptables防火墻5 系統(tǒng)測試5.1 SNAT測試 在進(jìn)行SNAT測試時(shí),需要進(jìn)行如下操作:在外部終端public上安裝和運(yùn)行Web服務(wù)。命令如下:#yum install httpd y/安裝Web服務(wù)端程序#chkconfig httpd on/開機(jī)啟用Web服務(wù)程序并且在Web服務(wù)目錄/var/www/html/下創(chuàng)建

31、index.html文件如圖5-1所示:圖5-1 創(chuàng)建Web主頁內(nèi)容#service httpd start/啟動(dòng)Web服務(wù)程序 然后在任意內(nèi)部終端上訪問外部終端IP上的Web服務(wù),會(huì)觀察到如圖5-2所示結(jié)果。#elinks 00圖5-2 Host1訪問外部終端Web 上述結(jié)果說明內(nèi)部的終端可以正常訪問因特網(wǎng)。5.2 DNAT的Web測試 在測試DNAT地址轉(zhuǎn)換時(shí),先測試Web服務(wù)。同樣在內(nèi)部終端Host1上安裝并且啟用Web服務(wù)。在Web服務(wù)的目錄/var/web/html/下創(chuàng)建index.html,添加如圖5-3所圖5-3 創(chuàng)建學(xué)校網(wǎng)站主頁示內(nèi)容后開啟Web服務(wù): #

32、service httpd start 然后在外部終端public上訪問代理服務(wù)器上的Web服務(wù)時(shí),會(huì)自動(dòng)進(jìn)行地址轉(zhuǎn)換,從而訪問到內(nèi)部終端上的網(wǎng)頁,產(chǎn)生如圖5-4中所示結(jié)果。 #elinks 圖5-4 public訪問代理服務(wù)器IP 上述結(jié)果說明外部網(wǎng)絡(luò)的主機(jī)訪問學(xué)校主頁時(shí),訪問到的是代理服務(wù)器上所指定服務(wù)器上的Web服務(wù)網(wǎng)頁。5.3 DNAT的SSH測試 在進(jìn)行DNAT的SSH測試時(shí),需要進(jìn)行如下操作:在內(nèi)部終端Host1上安裝和運(yùn)行SSH服務(wù)端程序:#yum install sshd y/安裝SSH服務(wù)端程序#chkconfig sshd on/開啟啟用SSH服務(wù)端程序

33、#service sshd start/開啟SSH服務(wù) 在外部終端public上遠(yuǎn)程訪問代理服務(wù)器IP,輸入正確密碼,登陸后可在Host1的安全日志中查看到public的訪問記錄,說明public真正遠(yuǎn)程控制的是Host1終端: #ssh /遠(yuǎn)程登錄 同時(shí)在內(nèi)部主機(jī)Host1的安全日志/var/log/secure中可以查看到遠(yuǎn)程訪問信息如圖5-5所示,遠(yuǎn)程登陸后就可以在其中進(jìn)行相對(duì)應(yīng)的操作來控制該計(jì)算機(jī)。例如在桌面上創(chuàng)建文件夾test后,會(huì)觀察到如圖5-6所示,Host1的桌面上會(huì)成文件夾test。圖5-5 查看Host1安全日志內(nèi)容#mkdir /root/Desktop/test/創(chuàng)建文件夾test圖5-6 遠(yuǎn)程控制在Host1上創(chuàng)建test文件夾 上述結(jié)果說明管理員從外部網(wǎng)絡(luò)的主機(jī)成功的遠(yuǎn)程登陸到了學(xué)校內(nèi)部網(wǎng)絡(luò)中的指定服務(wù)器,并且可以對(duì)該服務(wù)器進(jìn)行操作。6 結(jié)束語本篇論文主要研究了地址轉(zhuǎn)換技術(shù)在Linux下的工作原理和配置方法。通過實(shí)例驗(yàn)證了其工作原理。當(dāng)然,有效地使用NAT技術(shù)能夠很好地解決網(wǎng)絡(luò)中的很多問題,但它同時(shí)也會(huì)對(duì)網(wǎng)絡(luò)應(yīng)用帶來一定的影響。一方面,使用NAT技術(shù)會(huì)使得

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論