Cisco IOS®網路位址轉譯(NAT)專為IP位址簡化和保留而設計。可讓私有 IP 網際網路使用未註冊 IP 位址連線至網際網路。NAT 在將兩個網路連結在一起的思科路由器上運作,並在封包轉送到其他網路前,將內部網路中的私有(內部本機)位址轉譯為公用位址(外部本機)。你可以運用此功能設定 NAT,使其只向外部通告整個網路中的一個位址。這樣做能有效地向外界隱藏內部網路,並藉此提供額外的安全防護。
本文件沒有特定需求。
本文件所述內容不限於特定軟體和硬體版本。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
NAT的主要功能之一是靜態埠地址轉換(PAT),在Cisco IOS配置中也被稱為「過載」。靜態PAT旨在允許本地地址和全域性地址之間一對一對映。靜態PAT的一個常見用途是允許來自公共網路的網際網路使用者訪問位於專用網路中的Web伺服器。
要獲取有關NAT的詳細資訊,請參閱NAT技術支援頁。
此表顯示了可用於專用網路的三塊IP地址空間。如需這些特殊網路的詳細資訊,請參閱RFC 1918 。
IP地址空間 | 類別 |
---|---|
10.0.0.0 - 10.255.255.255(10/8字首) | A類 |
172.16.0.0 - 172.31.255.255(172.16/12字首) | B類 |
192.168.0.0 - 192.168.255.255(192.168/16字首) | C類 |
註:第一個塊只是一個A類網路號,而第二個塊是16個連續的B類網路號集,第三個塊是256個連續的C類網路號集合。
在本示例中,網際網路服務提供商(ISP)只為DSL使用者分配一個IP地址171.68.1.1/24。分配的IP地址是註冊的唯一的IP地址,稱為內部全域性地址。此註冊的IP地址被整個專用網路用於瀏覽Internet,也被來自公共網路的Internet使用者用於訪問專用網路中的Web伺服器。
專用LAN 192.168.0.0/24連線到NAT路由器的乙太網介面。此專用LAN包含多台PC和一台Web伺服器。NAT路由器配置為將來自這些PC的未註冊IP地址(內部本地地址)轉換為單個公有IP地址(內部全域性 — 171.68.1.1)以瀏覽網際網路。
IP地址192.168.0.5(Web伺服器)是私有地址空間中的一個地址,不能路由到Internet。公共Internet使用者訪問Web伺服器的唯一可見IP地址是171.68.1.1。因此,NAT路由器配置為在IP地址171.68.1.1埠80(埠80用於瀏覽網際網路)和192.168.0.5埠80之間執行一對一對映。此對映允許公共端的Internet使用者訪問內部Web伺服器。
此網路拓撲和示例配置可用於Cisco 827、1417、SOHO77和1700/2600/3600 ADSL WIC。例如,本文檔中使用的是Cisco 827。
本節提供可用於設定本檔案中所述功能的資訊。
注意:要查詢有關本文檔中所用命令的其他資訊,請參閱IOS命令查找工具(僅限註冊客戶)。
本檔案會使用此網路設定。
思科827 |
---|
Current Configuration: ! version 12.1 service timestamps debug uptime service timestamps log uptime ! hostname 827 ! ip subnet-zero no ip domain-lookup ! bridge irb ! interface Ethernet0 ip address 192.168.0.254 255.255.255.0 ip nat inside !--- This is the inside local IP address and it is a private IP address. ! interface ATM0 no ip address no atm ilmi-keepalive pvc 0/35 encapsulation aal5snap ! bundle-enable dsl operating-mode auto bridge-group 1 ! interface BVI1 ip address 171.68.1.1 255.255.255.240 ip nat outside !--- This is the inside global IP address. !--- This is your public IP address and it is provided to you by your ISP. ! ip nat inside source list 1 interface BVI1 overload !--- This statement makes the router perform PAT for all the !--- End Stations behind the Ethernet interface that uses !--- private IP addresses defined in access list #1. ip nat inside source static tcp 192.168.0.5 80 171.68.1.1 80 extendable !--- This statement performs the static address translation for the Web server. !--- With this statement, users that try to reach 171.68.1.1 port 80 (www) are !--- automatically redirected to 192.168.0.5 port 80 (www). In this case !--- it is the Web server. ip classless ip route 0.0.0.0 0.0.0.0 171.68.1.254 !--- IP address 171.68.1.254 is the next hop IP address, also !--- called the default gateway. !--- Your ISP can tell you what IP address to configure as the next hop address. ! access-list 1 permit 192.168.0.0 0.0.0.255 !--- This access list defines the private network !--- that is network address translated. bridge 1 protocol ieee bridge 1 route ip ! end |
在show ip nat translation 命令輸出中,Inside local是分配給內部網路上Web伺服器的已配置IP地址。請注意,192.168.0.5是私有地址空間中的地址,不能路由到Internet。內部全域性是內部主機的IP地址,即Web伺服器,與對外部網路顯示的一樣。此地址是嘗試從Internet訪問Web伺服器的人所知道的地址。
Outside local是外部主機對內部網路顯示的IP地址。它不一定是合法地址。但是,它是從可在內部路由的地址空間分配的。
Outside global位址是主機所有者分配給外部網路上主機的IP位址。地址從可以全域性路由的地址或網路空間分配。
請注意,埠號80(HTTP)的地址171.68.1.1轉換為192.168.0.5埠80,反之亦然。因此,即使Web伺服器位於具有專用IP地址的專用網路上,Internet使用者也可以瀏覽Web伺服器。
要獲取有關如何對NAT進行故障排除的詳細資訊,請參閱檢驗NAT操作和基本NAT故障排除。
827# 827#show ip nat translation Pro Inside global Inside local Outside local Outside global tcp 171.68.1.1:80 192.168.0.5:80 --- --- tcp 171.68.1.1:80 192.168.0.5:80 198.133.219.1:11000 198.133.219.1:11000 827#
為了排除地址轉換故障,您可以在路由器上發出term mon和debug ip nat detailed命令來檢查地址轉換是否正確。外部使用者訪問Web伺服器的可見IP地址為171.68.1.1。例如,嘗試連線171.68.1.1埠80(www)的Internet公共端使用者會自動重定向到192.168.0.5埠80(www),在本例中為Web伺服器。
827#term mon 827#debug ip nat detailed IP NAT detailed debugging is on 827# 03:29:49: NAT: creating portlist proto 6 globaladdr 171.68.1.1 03:29:49: NAT: Allocated Port for 192.168.0.5 -> 171.68.1.1: wanted 80 got 80 03:29:49: NAT: o: tcp (198.133.219.1, 11000) -> (171.68.1.1, 80) [0] <... snipped ...>
修訂 | 發佈日期 | 意見 |
---|---|---|
1.0 |
02-Dec-2013 |
初始版本 |