有些讀者可能知道什麼是NAT,有些讀者可能聽過,卻不知道細節。而知道NAT的讀者,可能只有非常少數了解什麼是STUN。事實上,STUN已被廣泛使用在NAT環境之中,它的全稱是Session Traversal Utilities for NAT,運作於網路七層架構的第四層應用層。
NAT運作原理
介紹完私有IP位址與Link-local位址之後,應該慢慢地就能夠了解NAT的用途了。接著,先來看一看什麼叫做NAT。NAT是用來讓私有的IP位址能夠存取外面的網際網路,而不必經過任何的註冊IP位址的動作。
剛剛介紹過私有IP位址,私有IP位址是沒有辦法直接存取到外面的網際網路,所以若要連接到網際網路,勢必一定要使用已經註冊的公有IP位址(Public IP Address),而NAT技術就是幫忙做公有IP位址與私有IP位址之間的轉換動作,讓使用私有IP位址的電腦也能夠方便地存取外面的網際網路。
在Cisco設備內,NAT會被應用在Cisco路由器上。通常會把Cisco路由器設備同時連接兩段網路,一段是內部網路,另一段則是外部網際網路。
一旦內部網路中有任何電腦想發送網路封包到外部的網際網路,當封包流過Cisco路由器設備時,該路由器設備就會做NAT位址轉換的動作,然後再傳送封包到外部網際網路。
當然,如果想要簡單一點的話,也可以透過適當的設定,讓外部網際網路只使用一個公有IP位址,但是卻給整個內部網路所有的電腦使用。這樣的做法也可以隱藏內部網路各電腦的IP位址,而達到一定程度的安全性。
NAT技術用語
在NAT的敘述中,所謂的「內部網路」(Inside Network)指的是需要經過位址轉換的網路區域,一般而言,內部網路都像是公司內部的網路,或是某組織架構內的網路,是沒有直接暴露在網際網路上的網路環境。
而「外部網路」(Outside Network)指的是其他的網路區段,在外部網路中是不必做位址轉換的,也就是說,外部網路上的IP位址都是公有IP位址,一般來說,外部網路指的通常都是網際網路或是直接暴露於網際網路的網路區域。
接下來,介紹四種不同的位址種類稱呼,分別是:
- Inside Global位址
- Inside Local位址
- Outside Global位址
- Outside Local位址
Inside Global位址是指經由Network Information Center或Server Provider所分派的邏輯IP位址,是給內部網路的電腦所使用。Inside Local位址則是內部網路中所取得的IP位址,但卻不是透過Network Information Center或Service Provider所提供的IP位址。
Outside Global位址是網際網路內實際有效而且能被繞送的IP位址,是給外部網際網路電腦使用的。而Outside Local位址是外部網際網路中的電腦在內部網路中所運行的IP位址。
看到這裡,可能會覺得有些混淆,其實簡單來說,Inside與Outside就是用來反映出電腦實際所在的位置,若是內部網路就是Inside,若位於網際網路則是Outside。而Local及Global則是指所使用的IP位址是公有IP位址還是私有IP位址。若是公有IP位址,就是Global,如果使用私有IP位址,則屬於Local。這樣說明之後,應該就比較容易理解了。
NAT運行種類
常用的NAT運行方式有三種,分別是靜態(Static)NAT、動態(Dynamic)NAT以及Overlapping。靜態NAT是指將私有IP位址對應到公有IP位址,並允許內部網路的電腦使用公有IP位址連線到網際網路,而這裡所使用的對應方式是採用一對一的方式,也是最基本的NAT。
動態NAT方式是將一個私有IP位址與一群公有IP位址做對應。Overlapping則與動態NAT剛好相反,也就是將多個私有IP位址與單一的公有IP位址做對應。
接著來看看下面這個範例,假設有一台Cisco路由器同時連接網際網路和內部網路,在圖1這個網路示意圖中,右邊就是網際網路,也就是Global,左邊則是內部網路,也就是Local,而其NAT對應如表2所示。
|
▲圖1 網路架構示意圖。 |
表2 IP位址對應表
以上就是一個簡單的NAT應用範例。因為上面將外部公有IP位址和內部私有IP位址做一對一的對應,所以這種NAT是屬於靜態NAT方式。
NAT的好處
到目前為止,已經可以簡單地整理出NAT技術的好處有哪些,接著採條列式的方式予以說明:
1. NAT技術可以事先把公有IP位址與私有IP位址做好
對應,如此一來,一旦內部網路的電腦想存取網際網路,就可以直接從對應表當中取出對應的公有IP位址並拿來使用,這樣的做法可以節省一些時間。
2. 也因為可以做出對應表,而且加上剛剛介紹過的
Overlapping方式,所以能夠節省公有IP位址的使用量,只要申請少數個公有IP位址,就可以讓大量的內部網路電腦上網。
3. 因為私有IP位址不會流傳到外部網際網路而使用公
有IP位址,所以外部網際網路的電腦也較難知道內部網路各台電腦的IP位址,有此可見,NAT技術可以提供一定程度的安全性。
IP位址的轉換過程
先用圖2的網路架構示意圖來說明NAT是如何做到內部私有IP位址以及外部公有IP位址的轉換。中間是一台Cisco路由器設備,同時連接內部網路和網際網路,右邊是網際網路,右下方是網際網路內的其中一台電腦,其IP為140.115.3.1,而左邊是內部網路,分別有個人電腦、伺服器以及PDA各一台,各使用192.168.0.1、192.168.0.2以及192.168.0.3這三個私有IP位址。
|
▲圖2 網路架構示意圖。 |