本檔案將說明如何使用cable-modem dhcp-proxy nat指令。此命令的主要功能是使用網路提供商的DHCP伺服器提供的IP位址設定網路位址轉譯(NAT)位址池。
如需詳細資訊,請參閱纜線IOS CMTS命令中的cable-modem dhcp-proxy。
注意:請注意Cisco錯誤ID CSCdt32356(僅供註冊客戶使用),該錯誤已在Cisco IOS®軟體版本系列12.2及更新版本中修正。使用cable-modem dhcp-proxy nat pool-name cable interface命令的動態NAT無法正常工作。如果沒有正確分配IP地址或子網掩碼和預設網關(如果有的話)。輸入命令後,分配給NAT池的地址不會響應地址解析協定(ARP)。 建立的IP NAT池來自電纜數據機作用域,而不是客戶端裝置(CPE)作用域,因此它將不可路由的IP地址放入NAT池中。請注意,此問題發生在多個纜線資料機的Cisco IOS軟體版本中,尤其是12.1(5)T。建議您在uBR924上使用Cisco IOS軟體版本系列12.2,在uBR905、uBR925和CVA數據機上使用版本12.2T、12.3和更高版本的系列。如需更多資訊,請參閱Cisco錯誤ID CSCdt32356(僅限註冊客戶)。
注意:還要注意以下注意事項:
由於uBR904平台不支援Cisco IOS軟體版本12.1(1)T,因此無法在此平台上配置cable-modem dhcp-proxy命令。
要在uBR924上啟用dhcp-proxy功能,通常建議您使用Cisco IOS軟體版本12.2(6j)。
對於CVA122,命令記錄為cable dhcp-proxy nat。此命令與uBR900系列纜線資料機上的cable-modem dhcp-proxy nat命令相同。
從CVA122中可以看到以下輸出:
Router(config)# interface cable 0 Router(config-if)# cable? cable-modem
本文檔的讀者應瞭解以下主題:
對網路地址轉換及其使用原因的基本瞭解
有線電纜資料服務介面規範(DOCSIS)1.0通訊協定
Cisco IOS軟體命令列介面
下表顯示對每個Cisco纜線資料機平台支援此命令的Cisco IOS軟體版本:
引入cable-modem dhcp-proxy命令的版本 | 平台 |
---|---|
12.1(1)T | uBR924 |
12.1(3)XL | uBR905 |
12.2(2)XA | uBR925 |
12.1(5)XU1 | CVA122 |
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
使用動態NAT時,在路由器收到需要轉換的流量之前,NAT轉換表中不會存在轉換。動態轉換具有超時時間,超過此時間後,它們將從轉換表中清除。但是,使用靜態NAT時,一旦配置靜態NAT命令,轉換就會存在於NAT轉換表中,並且它們會保留在轉換表中,直到刪除靜態NAT命令為止。
確定您在電纜數據機中配置了動態NAT的最簡單方法是在電纜數據機的配置中搜尋以下命令:
ip nat inside source list 100 interface cable-modem0 overload
通過將NAT源指向訪問清單,您可以動態構建NAT轉換表。cable-modem dhcp-proxy nat命令使用此動態NAT功能。
使用cable-modem dhcp-proxy nat命令時,從電纜運營商的DHCP伺服器自動分配用於NAT池的地址。
使用此選項時,請包含以下NAT配置命令:
ip nat inside interface — 用於將乙太網介面配置為「內部」介面。
ip nat outside interface — 用於將電纜介面配置為「outside」介面。
overload — 使用IP NAT全域性配置命令指定此選項,因為由cable-modem dhcp-proxy nat命令建立的NAT池僅包含一個IP地址。
使用cable-modem dhcp-proxy nat命令配置路由器後,重新啟動路由器。在DOCSIS調配過程中,路由器會傳送DHCP客戶端請求來獲取電纜介面的IP地址。然後路由器使用乙太網介面的MAC地址向DHCP伺服器傳送代理DHCP請求。DHCP伺服器使用第二個IP地址進行應答,路由器將該IP地址分配給動態配置的環回介面,該環回介面只指向一個地址的動態配置的NAT池。
有關處理DHCP後自動新增到配置中的資訊,請參閱本文檔中的配置輸出。
要配置NAT以便動態建立池,請在您的路由器上發出以下命令。請記住,為了配置NAT,您的路由器必須處於路由模式。
Router# config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)# interface ethernet 0 Router(config-if)# ip address 192.168.1.1 255.255.255.0 !--- Assign an IP address to interface Ethernet 0. Router(config-if)# no bridge-group 59 !--- Remove bridging so that you can configure for routing. Router(config-if)# no bridge-group 59 spanning !--- Remove bridging spanning. Router(config-if)# ip nat inside !--- Enable NAT inside for the Ethernet interface. Router(config-if)# exit Router(config)# Router(config)# interface cable 0 Router(config-if)# no bridge-group 59 !--- Remove bridging so that you can configure for routing. Router(config-if)# no bridge-group 59 spanning !--- Remove bridging spanning. Router(config-if)# no cable compliant bridge !--- Remove bridging so that you can configure for routing. Router(config-if)# ip nat outside !--- Enable NAT outside for the cable interface. Router(config-if)# cable-modem dhcp-proxy nat TEST_POOL !--- Define dhcp-proxy nat for the TEST_POOL pool. Router(config-if)# exit Router(config)# Router(config)# ip routing !--- Enable routing. Router(config)# ip nat inside source list 1 pool TEST_POOL overload !--- Configure dynamic NAT. Router(config)# access-list 1 permit 192.168.1.0 0.0.0.255 !--- Define interesting traffic for NAT.
配置如下所示:
router# show run Building configuration... Current configuration : 953 bytes ! version 12.2 no service single-slot-reload-enable no service pad service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname router ! logging rate-limit console 10 except errors ! ip subnet-zero no ip finger ! ip audit notify log ip audit PO max-events 100 no ip dhcp-client network-discovery ! interface Ethernet0 ip address 192.168.1.1 255.255.255.0 ip nat inside no ip mroute-cache ! interface cable-modem0 ip nat outside no ip mroute-cache no cable-modem compliant bridge cable-modem dhcp-proxy nat TEST_POOL ! ip nat inside source list 1 pool TEST_POOL overload ip classless no ip http server no ip http cable-monitor ! access-list 1 permit 192.168.1.0 0.0.0.255 snmp-server packetsize 4096 snmp-server manager ! voice-port 0 input gain -2 output attenuation 0 ! voice-port 1 input gain -2 output attenuation 0 ! ! line con 0 transport input none line vty 0 4 login ! end router#
bold命令是輸入的命令;其他的是違約。請注意,此時尚未建立NAT池。需要重新載入電纜數據機,或者通過發出shut命令後發出no shut命令來重置電纜介面。
router# reload Proceed with reload? [confirm] 133.CABLEMODEM.CISCO: 00:06:16: %SYS-5-RELOAD: Reload requested System Bootstrap, Version 12.0(6r)T3, RELEASE SOFTWARE (fc1) Copyright (c) 1999 by Cisco Systems, Inc. UBR924 platform with 16384 Kbytes of main memory program load complete, entry point: 0x80010000, size: 0x398070 Self decompressing the image : ################################# ################################################################ ################################################################ ################################################################ ################################################################ ################################################################ ########################################################## [OK] !--- Output suppressed. Press RETURN to get started!
注意:在配置輸出中,處理DHCP後自動新增到配置的資訊會附帶註釋。
本文以uBR7114和uBR924為例。安裝在其上的Cisco IOS軟體版本分別為12.1(5)EC1和12.1(3a)T4。下圖顯示了使用的連線和IP地址。
圖1:使用cable dhcp-proxy nat命令在配置中使用的圖表
uBR924 — 使用服務提供商的DHCP伺服器提供的IP地址配置NAT地址池 |
---|
router# show run Building configuration... Current configuration : 1273 bytes ! ! Last configuration change at 13:12:52 - Tue Feb 29 2000 ! version 12.2 no service single-slot-reload-enable no service pad service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname router ! logging rate-limit console 10 except errors ! clock timezone - -8 ip subnet-zero no ip finger ! ip audit notify log ip audit PO max-events 100 no ip dhcp-client network-discovery ! ! interface Loopback0 ip address 111.111.111.8 255.255.255.255 !--- Lookback interface added automatically by DHCP configuration. ! interface Ethernet0 ip address 192.168.1.1 255.255.255.0 ip nat inside no ip mroute-cache ! interface cable-modem0 ip nat outside no ip mroute-cache no cable-modem compliant bridge cable-modem dhcp-proxy nat TEST_POOL cable-modem boot admin 2 cable-modem boot oper 5 cable-modem downstream saved channel 525000000 37 1 ! ip nat pool TEST_POOL 111.111.111.8 111.111.111.8 netmask 255.255.255.0 !--- NAT pool added automatically by DHCP configuration. ip nat inside source list 1 pool TEST_POOL overload ip classless no ip http server no ip http cable-monitor ! access-list 1 permit 192.168.1.0 0.0.0.255 snmp-server packetsize 4096 snmp-server manager ! voice-port 0 input gain -2 output attenuation 0 ! voice-port 1 input gain -2 output attenuation 0 ! ! line con 0 transport input none line vty 0 4 login ! end |
本節介紹如何使用show命令輸出來檢驗電纜數據機的配置。
輸出直譯器工具(僅供註冊客戶使用)支援某些show命令,此工具可讓您檢視show命令輸出的分析。
發出show arp命令以顯示ARP表中的條目。
router# show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 111.111.111.111 56 0002.b9ff.8c1c ARPA cable-modem0 Internet 10.4.1.1 59 0002.b9ff.8c1c ARPA cable-modem0 !--- IP address of the interface cable 1/0 !--- of the cable modem termination system (CMTS). Internet 192.168.1.1 - 0030.1976.771a ARPA Ethernet0 Internet 192.168.1.5 34 00a0.243c.eff5 ARPA Ethernet0 !--- IP address of the PC behind the cable modem. Internet 10.4.1.114 - 0030.1976.771b ARPA cable-modem0
電纜數據機後面的PC靜態配置了IP地址192.168.1.5。不過,很容易使電纜數據機成為DHCP伺服器,動態地為其LAN主機分配IP地址;使用以下設定:
ip dhcp excluded-address 192.168.1.1
ip dhcp pool pool name
network 192.168.1.0 255.255.255.0
default-router 192.168.1.1
要測試NAT是否正常工作,請從電纜數據機後面連線的PC發出ping命令以嘗試到達電纜介面。
如果您檢視NAT轉換表,可以看到成功的轉換。
router# show ip nat translations Pro Inside global Inside local Outside local Outside global icmp 111.111.111.8:512 192.168.1.5:512 10.4.1.114:512 10.4.1.114:512
如需詳細資訊,請參閱纜線IOS CMTS命令中的cable-modem dhcp-proxy。