有時,當您更改網路地址轉換(NAT)配置時,會收到以下消息:
正在使用的動態對映,無法刪除
正在使用的動態對映,是否要刪除所有條目?
%Pool outpool in use,無法銷毀
本文檔演示如何在控制檯上接收這些消息時更改NAT配置。
本文件沒有特定需求。
本文件所述內容不限於特定軟體和硬體版本。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
當資料包從IP NAT內部介面傳輸到IP NAT外部介面時,動態NAT會在表中建立活動轉換條目,反之亦然。可以使用show ip nat translation命令檢視此動態NAT條目。刪除以下任一現有動態NAT配置時,Cisco IOS®軟體會檢查轉換表中是否存在任何現有的活動NAT轉換:
no ip nat pool name
no ip nat {inside | outside}源{list {access-list-number | name} pool name [overload] | static local-ip global-ip}
R2(config) #no ip nat inside source route-map NAT interface serial 2/0 overload Dynamic mapping in use, do you want to delete all entries? [no]: yes
如果轉換條目匹配,則控制檯上分別會出現%Dynamic Mapping in Use, Cannot remove消息或%Pool outpool in use, cannot destroy消息。
您收到這些錯誤消息的原因是,您正在嘗試更改NAT配置的一部分,該部分負責建立仍存在於轉換表中的動態轉換。在這種情況下,為了更改NAT配置,您需要清除轉換表,該表在被接受之前正在使用。有時,這並非易事,因為配置了NAT的路由器可能不斷接收在表中建立轉換的資料包;發生此問題的速度非常快,因此您沒有時間更改配置。
此解決方案包括使用clear ip nat translation命令清除IP NAT轉換,然後在任何新NAT條目由於活動NAT流量而填充到轉換表中之前,快速替換NAT配置。為此,請使用以文本格式編寫的配置命令建立指令碼。例如:
clear ip nat translation * config terminal no ip nat pool old pool name ip nat pool new pool .......
收到指令碼後,將該指令碼剪下並貼上到路由器啟用模式(Router#)中。
注意:這可能需要多次嘗試,因為清除轉換後,路由器仍可能會建立轉換。
此解決方案涉及在路由器上禁用NAT,使其無法建立更多的NAT轉換。為此,請刪除介面上的ip nat inside或ip nat outside命令。然後清除轉換表並更改配置。
請按照以下步驟使用此解決方案:
使用no ip nat {inside | outside}命令禁止將來進行轉換。
使用clear ip nat translation命令清除IP NAT轉換。
更改NAT配置。
還原NAT {inside | outside}個引數使用ip nat {inside | outside} configuration命令。
此解決方案涉及停止導致NAT路由器建立轉換的流量。通過訪問傳送資料包的裝置並禁用該裝置,或者在NAT路由器上建立入站訪問清單,拒絕來自傳送資料包的源的流量來實現此操作。有關過濾資料包的詳細資訊,請參閱配置IP服務。
本技術說明演示了一些方法,可解決因轉換表中活動動態NAT轉換而無法更改NAT配置的問題。可能有其他方法,但無論如何,NAT轉換表必須清除任何由NAT配置產生的動態轉換,才能更改NAT配置。有關NAT相關問題的更多故障排除資訊,請參閱驗證NAT運行和基本NAT故障排除。
修訂 | 發佈日期 | 意見 |
---|---|---|
1.0 |
10-Aug-2005 |
初始版本 |