close

NAT 是網路位址轉譯器( Network Address Transfer) ,主要是用來簡化及保存IP位址,它可以讓原本無法上網,而且無法使用內部IP位址的主機可以成功的連接Internet,而且它也就是將要傳送出去的封包進行IP轉換的動作,使用NAT可以大大減少IP位址的需求,因為基本上整個內部網路都可憑藉NAT上的一個外部IP來連接Internet。

20世紀90年代中期,NAT是作為一種解決IPv4地址短缺以避免保留IP位址困難的方案而流行起來的。網路地址轉換的在很多國家都有很廣泛的使用。所以NAT就成了家庭和小型辦公室網路連接上的路由器的一個標準特徵,因為對他們來說,申請多餘的IP位址的代價要高於所帶來的效益。

在一個典型的配置中,一個本地網路使用一個專有網路的指定子網(比如192.168.x.x或10.x.x.x)和連在這個網路上的一個路由器。這個路由器佔有這個網路地址空間的一個專有地址(比如 192.168.0.1),同時它還通過一個或多個網際網路服務提供商提供的公有的IP地址(叫做「過載」 NAT) 連接到網際網路上。當信息由本地網路向網際網路傳遞時,源地址被立即從專有地址轉換為公用地址。由路由器跟蹤每個連接上的基本數據,主要是目的地址和埠。 當有回復返迴路由器時,它通過輸出階段記錄的連接跟蹤數據來決定該轉發給內部網的哪個主機;如果有多個公用地址可用,當數據包返回時,TCP或UDP客戶機的埠號可以用來分解數據包。對於網際網路上的一個系統,路由器本身充當通信的源和目的地址。

流行在網路上的一種看法認為,IPv6的廣泛採用將使得NAT不再需要,因為NAT只是一個處理IPv4的地址空間不足的方法。

NAT的優點與缺點

優點:
 
1.由於對外只使用一個 IP address, 因此內部使用 的IP可在不同單位使用。

2.只要少數 public address 就能讓單位內所有電腦都連上 Internet 。

3.只有使用 public address 的電腦會被單位外部網路所存取, 使用 private address 的電腦不會直接被存取,有安全上的好處。

缺點:

在一百個具有NAT功能的路由器下的主機並沒有建立真正的IP位址,並且不能參與一些網際網路協議。一些需要初始化從外部網路建立的TCP連接和使用無狀態協議,比如UDP的服務將被中斷。

除非NAT路由器作一些具體的努力,否則送來的數據包將不能到達正確的目的地址。一些協議有時可以在應用層網關(見下)的輔助下,在參與NAT的主機之間容納一個NAT的實例,比如FTP。NAT也會使安全協議變的複雜,比如IPsec

端對端連接是被IAB委員會(Internet Architecture Board)支持的核心網際網路協議之一,因此有些人據此認為NAT是對公用網際網路的一個破壞。

一些網際網路服務提供商只向他們的客戶提供本地IP位址,所以他們必須通過NAT來訪問ISP網路以外的服務,並且這些公司能不能算的上真正的提供了網際網路服務的話題也被談起。

NAT 除了帶來方便和代價之外,對全雙工連接支持的缺少在一些情況下可以看作是一個有好處的特徵而不是一個限制。在一定程度上,NAT依賴於本地網 路上的一台機器來初始化和路由器另一邊的主機的任何連接,它可以阻止外部網路上的主機的惡意活動。

這樣就可以阻止網路蠕蟲病毒來提高本地系統的可靠性,阻 擋惡意瀏覽來提高本地系統的私密性。很多具有NAT功能的防火牆都是使用這種功能來提供核心保護的。另外,它也為UDP的跨局域網的傳輸提供了方便。

1.理論上,NAT伺服器只要使用一個IP位址,就可涵蓋無數個內部IP位址,但是許多網路通訊協定或是應用程式,都需要點對點的連結。

2.NAT 通常被視為增加電腦安全性的保護措施,但是若入侵者可以控制NAT伺服器,那麼整個區域網路就會暴露在Internet當中,因此NAT不能拿來代替防火牆。

3.有些封包則是從出發地到目的地的過程裡都不能被修改,像IP安全架構就不可以使用NAT來進行轉譯,因為封包的標頭檔裡含有數位簽名,假若標頭檔被更改(即使是任何一個字),這個數位簽名便從此失去效力。

4.雖然NAT對於無法取得足夠IP位址的企業來說,它是一個極佳的解決方案,但當該組織必須合併多個區域網路時,必須仔細的重新規劃IP分配,否則很容易產生IP重覆的情形(因為每個區域網路都使用內部IP位址)。

基本NAT和埠號轉換

目前存在兩種地址轉換方式。一種是經常被簡記為"NAT"的網路地址轉換(有時也叫做「網路地址埠轉換」,記做NAPT),這種方式支持埠的映射並允許多台主機共享一個公用IP地址。另一種也可以稱作NAT或「基本NAT」,「靜態NAT」,但在技術上更簡單一點,僅支持地址轉換,不支持埠映射,這就需要對每一個當前連接都要對應一個IP地址。

寬頻(broadband)路由器通常使用這種方式來允許一台指定的計算機去接收所有的外部連接,甚至當路由器本身只有一個可用外部IP時也如此,這台路由器有時也被標記為DMZ主机

支持埠轉換的NAT又可以分為兩類:源地址轉換和目的地址轉換NAT 。前一種情形下發起連接的計算機的IP位址將會被重寫,後一種情況下被連接計算機的IP位址將被重寫。實際上,以上兩種方式通常會一起使用以支持雙向通信。

受到NAT影響的應用程序

一些高層協議(比如FTPQuakeSIP)是在IP包的有效數據內發送網路層(第三層)信息的。比如,主動模式FTP使用單獨的埠分別來控制命令傳輸和數據傳輸。當請求一個文件傳輸時,主機在發送請求的同時也通知對方自己想要在哪個埠接受數據。但是,如果主機是在一個簡單的NAT防火牆後發送的請求,那麼由於埠的映射將會使對方接收到的信息無效。

一個應用層網關(Application Layer GatewayALG)可以修正這個問題。運行在NAT防火牆設備上的ALG軟體模塊可以更新任何由地址轉換而導致無效的信息。顯然,ALG需要明白它所要修正的上層協議,所以每個有這種問題的協議都需要有一個單獨的ALG

但是,除FTP外的大多數傳統的客戶機-伺服器協議不需要發送網路層(第三層)信息,也就不需要ALG

這個問題的另一個可能的解決方法是使用象STUN這樣的技術,但是這隻針對建立在UDP上的高層協議,並且需要它內建這種技術。這種技術對於對稱NAT也是無效的。還有一種可能的方案是UPnP,但它需要和NAT設備配合起來使用

NAT是解決什麼的?

◎解決了IPv4地址短缺的問題

為一種減少對IP需求的機制。若接取設備(如,Router)有支援NAT,則可作到多台主機使用一組IP,即IP sharing。這樣可以減少對IP位址的需求。

NAT除了帶來方便和代價之外,對全雙工連接支持的缺少在一些情況下可以看作是一個有好處的特徵而不是一個限制。

在一定程度上,NAT依賴於本地網路上的一臺機器來初始化和路由器另一邊的主機的任何連接,它可以阻止外部網路上的主機的惡意活動。這樣就可以阻止網路蠕蟲病毒來提高本地系統的可靠性,阻擋惡意瀏覽來提高本地系統的私密性。

很多具有NAT功能的防火牆都是使用這種功能來提供核心保護的。

●NAT的特性是什麼?

目前存在兩種地址轉換方式。一種式經常被簡記為"NAT"的網路地址轉換(有時也叫做「網路地址埠轉換」,記做NAPT),這種方式支持埠的映射並允許多台主機共享一個公用IP地址。另一種也可以稱作NAT或「基本NAT」,「靜態NAT",但在技術上更簡單一點,僅支持地址轉換,不支持埠映射,這就需要對每一個當前連接都要對應一個IP地址。

寬頻(broadband)路由器通常使用這種方式來允許一臺指定的電腦去接收所有的外部連接,甚至當路由器本身只有一個可用外部IP時也如此,這台路由器有時也被標記為DMZ主機。

支持埠轉換的NAT又可以分為兩類:源地址轉換和目的地址轉換NAT 。前一種情形下發起連接的電腦的IP地址將會被重寫,後一種情況下被連接電腦的IP地址將被重寫。實際上,以上兩種方式通常會一起使用以支持雙向通信。

網路IP位址

●網路上的所有節點(電腦、網路設備等)都必須有一個唯一的IP位址以供識別。

●負責分配管理IP位址的最高機構為ICANN(Internet Corporation for Assigned Named and Numbers),台灣由TWNIC(Taiwan Network Information Center財團法人台灣網路資訊中心)負責IP的分配工作。

●IP位址的格式

★由一組四個整數所構成,每個整數各長一個位元組,範圍為0~255,所以IP位址是一個32位元的數值,實際上表示一個IP位址是使用句點”.”隔開四個十進位整數的方式,例如 192.168.2.2。

★IP位址的編碼方式:

1.前段為網路位址,後段為主機位址。

2.網路位址用來識別所屬的網路,主機位址用來定義網路節點(電腦、網路設備等)的位置。

●IP位址的分級

IP依照網路等級來區分,而區分的方式是以IP位址的最高位元組(最左邊的十進制數目)來判別。

A級(Class A):

最左邊位元為0:

0XXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX

2.網路位址8位元(27=128),主機位址24位元(224=1677216)。

3.範圍:0.0.0.0~127.255.255.255

B級(Class B):

最左邊位元為10:

10XXXXXX XXXXXXXX XXXXXXXX XXXXXXXX

2.網路位址16位元(216=65536),主機位址16位元(216=65536)。

3.範圍:128.0.0.0~191.255.255.255

C級(Class C):

最左邊位元為110:

110XXXXX XXXXXXXX XXXXXXXX XXXXXXXX

2.網路位址24位元(224=1677216),主機位址8位元(28=256)。

3.範圍:192.0.0.0~223.255.255.255

D級(Class D):

最左邊位元為1110:

1110XXXX XXXXXXXX XXXXXXXX XXXXXXXX

2.範圍:224.0.0.0~239.255.255.255

3.保留使用。

E級(Class E):

最左邊位元為11110:

11110XXX XXXXXXXX XXXXXXXX XXXXXXXX

2.範圍:240.0.0.0~247.255.255.255

3.保留使用。

私人IP位址(虛擬IP位址)

專供機關或個人區域網路所使用,不能出現在網際網路上。

共有三組:

1.Class A:10.0.0.0~10.255.255.255

2.Class B:172.16.0.0~172.31.255.255

3.Class C:192.168.0.0~192.168.255.255

網段位址與廣播位址

主機位址的位元皆為0的IP位址代表網段位址,主機位址的位元皆為1的IP位址代表廣播位址。

例如:

C級網路210.59.30.0代表210.59.30網段,210.59.30.255代表210.59.30網段的廣播位址。

子網路遮罩(Subnet maskb)

讓路由器知道如果將IP封包傳送到正確的網段。

子網路遮罩是一個32位元的整數值,為一連串的1及一連串的0所組成。

二進制 11111111 11111111 11111111 00000000

十進制 255 255 255 0

子網路遮罩與IP位址做AND運算的結果為網段。

IP位址 210.59.30.2

子網路遮罩 255.255.255.0

AND結果為 210.59.30.0 → 網段

合併表示法:

210.59.30.2/24

→210.59.30.2代表IP位址

→24代表子網路遮罩左邊24個位元為1

11111111 11111111 11111111 00000000

255.255.255.0

若無特別指定,所使用的子網路遮罩如下:

1.Class A:255.0.0.0(*.*.*.*/8)

2.Class B:255.255.0.0(*.*.*.*/16)

3.Class C:255.255.255.0(*.*.*.*/24)

IPv6規格

目前的IP位址是使用32位元,稱為IPv4。

由於網際網路盛行,IPv4的IP可能被用盡,因此制定IPv6規格。

IPv6採用128位元的位址,可使用的IP數目較多。

[參考來源]

http://teach.tcvs.tcc.edu.tw/infor/computer_network/htm/051.htm

http://tw.knowledge.yahoo.com/question/question?qid=1206110804567

http://tw.knowledge.yahoo.com/question/question?qid=1306020110443

http://zh.wikipedia.org/zh-tw/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80%E8%BD%AC%E6%8D%A2

arrow
arrow
    全站熱搜

    金魚不是魚 發表在 痞客邦 留言(0) 人氣()