이 문서에서는 Cat8000 플랫폼에서 NAT 문제를 해결하는 방법에 대해 설명합니다.
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
이러한 항목에 대한 자세한 내용은 다음을 참조하십시오.
이 문서의 정보는 Cisco IOS 소프트웨어를 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
NAT 토폴로지이 로그 메시지는 디바이스가 동적 NAT 또는 PAT 변환과 같은 NAT에 대해 IP 주소를 할당하려고 했지만 할당이 실패했음을 나타냅니다. 이는 일반적으로 구성된 NAT 풀에 남아 있는 사용 가능한 주소 또는 포트가 없을 때 발생합니다.
일반적인 원인은 다음과 같습니다.
· NAT 풀이 소진됩니다(사용 가능한 모든 IP 주소 또는 포트가 사용 중).
· NAT 컨피그레이션에 현재 변환 요청을 수용할 수 있는 충분한 주소 또는 리소스가 없습니다.
%NAT-6-ADDR_ALLOC_FAILURE: Address allocation failed; pool 2 may be exhausted [2] port range: NA, non-PATable: NO, for ALG: NO, input intf: GigabitEthernet0/0/3, mapping-id: 1,
created by pkt: src_ip 192.0.2.13 dst_ip 192.x.x.40 src_port 0 dst_port 0 proto 1
1단계. NAT 풀을 확인하여 주소 변환 범위를 확인합니다.
NAT_R1#show ip nat pool platform
Dump NAT pool config
ID: 2, Name: NAT_Pool, Type: Generic, Mask: 255.255.255.240
Flags: Unknown, Acct name:
Address range blocks: 1
Start: 203.0.113.3, End: 203.0.113.5
Last stats update: 07/31 13:08:43.708061785
Last refcount value: 3
2단계. NAT 변환 테이블을 확인하고 현재 존재하는 활성 변환 수를 확인합니다.
NAT_R1#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- 203.0.113.3 192.0.2.10 --- ---
--- 203.0.113.5 192.0.2.12 --- ---
--- 203.0.113.4 192.0.2.11 --- ---
icmp 203.0.113.5:0 192.0.2.12:0 198.51.100.30:0 198.51.100.30:0
icmp 203.0.113.3:0 192.0.2.10:0 198.51.100.10:0 198.51.100.10:0
icmp 203.0.113.4:0 192.0.2.11:0 198.51.100.20:0 198.51.100.20:0
Total number of translations: 6
3단계. NAT 통계에 드롭이 표시되는지 확인합니다. 이 결과는 수신 트래픽에 변환이 필요하지만 NAT 할당 문제로 인해 드랍이 발생함을 나타냅니다.
NAT_R1#show ip nat statistics
Total active translations: 6 (0 static, 6 dynamic; 3 extended)
Outside interfaces:
GigabitEthernet0/0/4
Inside interfaces:
GigabitEthernet0/0/3
Hits: 11094661606 Misses: 10
Reserved port setting disabled provisioned no
Expired translations: 1412
Dynamic mappings:
-- Inside Source
[Id: 2] access-list 1 pool NAT_Pool refcount 6 <---- Translations count
pool NAT_Pool: id 2, netmask 255.255.255.240
start 203.0.113.3 end 203.0.113.5
type generic, total addresses 3, allocated 3 (100%), misses 3559386331
nat-limit statistics:
max entry: max allowed 0, used 0, missed 0
In-to-out drops: 3559337007 Out-to-in drops: 0 <---- drops from in to out
Pool stats drop: 0 Mapping stats drop: 0
Port block alloc fail: 0
IP alias add fail: 0
Limit entry add fail: 0
NAT_R1#
4단계. 플랫폼 관점에서 QFP 데이터 경로 NAT 통계를 검토하여 이러한 누락이 관찰된 문제와 일치하는지 확인합니다.
NAT_R1#show platform hardware qfp active feature nat datapath stats
Counter Value
------------------------------------------------------------------------
number_of_session 3
udp 0
tcp 0
icmp 3
non_extended 3
statics 0
static_net 0
entry_timeouts 1
hits 585149
misses 0
cgn_dest_log_timeouts 0
ipv4_nat_alg_bind_pkts 0
ipv4_nat_alg_sd_not_found 0
ipv4_nat_alg_sd_tail_not_found 0
ipv4_nat_rx_pkt 154
ipv4_nat_tx_pkt 18791285989
<snip>
ipv4_nat_non_natted_in2out_pkts 144
ipv4_nat_non_nated_out2in_pkts 0
<snip>
ipv4_nat_cfg_rcvd 8
ipv4_nat_cfg_rsp 9
Subcode#14 ADDR_ALLOC_FAIL 5216959285
5단계. 현재 항목 수를 확인하고 maxhost_count와 maxhost_himark 값을 비교합니다.
NAT_R1#show platform hardware qfp active feature nat datapath limit
maxhost_limit 131072 maxhost_count 5 maxhost_fail 0 maxhost_himark 7
total limit entries 0 hash tbl 0x0 max entries 0 limit_chunk 0x0 allvrf limit 0
acl limit 0 acl count 0 acl fail 0 acl_id 0x0
이 로그에 대한 자세한 내용은 기록된 이벤트 및 작동 상태에 대한 포괄적인 설명을 제공합니다.
NAT 풀에서 사용할 수 있는 주소의 수는 3개에서 5개까지 가능합니다. 비활성 변환이 NAT 테이블에 남아 있을 때 문제가 발생하여 다른 트래픽이 변환되지 않습니다. 기본 NAT 변환 시간 제한은 24시간이므로 이 동작이 필요합니다. 이 문제를 해결하려면 NAT 테이블을 지워야 하는 이 작업 이후에 비활성 변환을 지우도록 ip nat translation timeout 명령을 구성합니다.
NAT_R1(config)#ip nat translation timeout 10800
NAT_R1(config)#end
NAT_R1#clear ip nat translation *
NAT_R1#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- 203.0.113.5 192.0.2.11 --- ---
--- 203.0.113.4 192.0.2.10 --- ---
icmp 203.0.113.4:0 192.0.2.10:0 198.51.100.10:0 198.51.100.10:0
icmp 203.0.113.5:0 192.0.2.11:0 198.51.100.20:0 198.51.100.20:0
Total number of translations: 4
NAT 게이트키퍼 기능은 NAT 엔진이 비 NAT 플로우를 처리하지 않도록 보호하여 라우터 성능을 향상하도록 설계되었습니다. 비 NAT 패킷이 NAT 지원 인터페이스를 통과할 경우, NAT에서 변환이 필요하지 않다고 판단하기 전에 일반적으로 광범위한 조회를 거칩니다. 이 프로세스는 QFP(Quantum Flow Processor)에서 CPU를 많이 사용합니다. 게이트키퍼는 비 NAT 흐름의 작은 캐시를 유지 관리하여 이러한 패킷이 식별되면 NAT 엔진을 우회할 수 있도록 함으로써 CPU 부하를 줄여 줍니다. 게이트키퍼 캐시 항목의 시간이 비교적 빠르게 초과되므로, 네트워크 상태가 변경되어 흐름이 NAT의 대상이 될 수 있는 경우 NAT 엔진에서 흐름을 다시 평가할 수 있습니다.
이 메커니즘은 동일한 인터페이스에서 혼합 NAT 및 비 NAT 트래픽을 처리할 때 리소스 사용률을 최적화하고 전반적인 시스템 효율성을 향상합니다. Gatekeeper의 캐시 크기는 플랫폼을 기반으로 하는 기본값과 함께 비 NAT 트래픽의 볼륨을 수용하도록 구성할 수 있습니다. NAT 인터페이스에 중요한 비 NAT 트래픽이 있는 경우 캐시 크기를 조정하는 것이 좋습니다.
요약하면, NAT 게이트키퍼는
· NAT 엔진을 불필요한 비 NAT 흐름 처리로부터 보호합니다.
· NAT 처리를 우회할 수 있도록 비 NAT 플로우의 캐시를 유지 관리합니다.
· 캐시 항목에 대한 시간 제한을 사용하여 흐름을 재평가할 수 있습니다.
· QFP의 CPU 사용률을 낮춥니다.
· 구성 가능한 캐시 크기를 지원하여 트래픽 패턴을 기반으로 성능을 최적화합니다.
일반적인 증상은 다음과 같습니다.
1단계. 실패 기간 동안 NAT 통계를 확인합니다.
이 단계에서는 다음을 확인합니다.
NAT_R1#show ip nat statistics
Total active translations: 29477 (736 static, 28741 dynamic; 28741 extended)
Outside interfaces:
GigabitEthernet1
Inside interfaces:
GigabitEthernet2, GigabitEthernet3
Hits: 32525856687 Misses: 293948584
Expired translations: 293549953
Dynamic mappings:
-- Inside Source
[Id: 1] route-map INTERNET_PAT interface GigabitEthernet1 refcount 25
nat-limit statistics:
max entry: max allowed 0, used 0, missed 0
In-to-out drops: 0 Out-to-in drops: 867
Pool stats drop: 0 Mapping stats drop: 0
Port block alloc fail: 0
IP alias add fail: 0
Limit entry add fail: 0
NAT_R1#show ip nat statistics | sec Misses
Hits: 32525856687 Misses: 293948584
NAT_R1#show ip nat statistics | sec Misses
Hits: 32527039444 Misses: 293952367
NAT_R1#show ip nat statistics | sec Misses
Hits: 32527308509 Misses: 293953221
NAT_R1#
해당 절에서는 출력에서 관련 정보에 대한 자세한 설명을 제공합니다.
NAT 통계를 보면 미스 카운터가 증가하고 있지만, 이러한 증가는 일반적인 동적 NAT/PAT 세션 생성과 동일한 패턴으로 발생합니다.
관찰된 간격 동안:
32,525,856,687에서 32,527,308,509로 증가했습니다.
증가: 1,451,822
누락이 293,948,584에서 293,953,221로 증가함
증가: 4,637
이는 같은 기간 동안 1회 추가 미스마다 약 313회의 추가 적중률을 반영한다. 동적 NAT/PAT 환경에서는 테이블에 일치하는 변환이 이미 존재하기 전에 패킷이 도착하면 누락이 발생합니다. 변환이 생성되면 해당 플로우에 대한 후속 패킷이 적중으로 계산됩니다. 이러한 동작을 바탕으로 관찰된 미스의 증가는 지속적인 세션 생성 및 정상적인 변환 변경과 일치합니다.
2단계. NAT 테이블에 변환이 존재하는지 확인합니다. 해당되는 경우, 영향을 받는 정확한 플로우에 대한 출력을 필터링합니다.
이 단계에서는 RP(Route Processor) NAT 테이블에 영향받는 플로우에 대한 변환 항목이 포함되어 있는지 확인합니다.
이 번역은 다음과 같은 내용을 반영합니다.
로컬에서 정확
올바른 내부 전역
올바른 외부 주소
올바른 프로토콜 및 포트 매핑
해석:
번역 항목이 없습니다.
NAT 일치, ACL, 경로 맵 또는 리소스 할당에 중점을 둡니다.
변환이 존재하지만 트래픽이 여전히 실패함
QFP 확인 단계로 이동합니다.
이 분기는 워크플로에서 가장 중요한 분기 중 하나입니다.
NAT_R1#show ip nat translations verbose
Pro Inside global Inside local Outside local Outside global
icmp 203.0.113.2:3157 192.0.2.2:3157 x.x.x.x:3157 x.x.x.x:3157
create: 06/19/26 05:36:53, use: 06/19/26 05:36:53, timeout: 00:00:45
RuleID : X
Flags: unknown
ALG Application Type: NA
WLAN-Flags: unknown
Mac-Address: 0000.0000.0000 Input-IDB: GigabitEthernet2
entry-id: 0xe8a48090, use_count:1
In_pkts: X In_bytes: 44, Out_pkts: X Out_bytes: X
Output-IDB: GigabitEthernet1
3단계. QFP에 번역이 프로그래밍되었는지 확인합니다.
이 단계에서는 RP에 표시되는 변환이 포워딩 하드웨어 경로에도 프로그래밍되었는지 확인합니다.
NAT_R1#show platform hardware qfp active feature nat datapath gateout
Gatekeeper on
<snip>
sip 192.0.2.35 dip x.x.x.x vrf 0 ts 0xcdd07450 idx 10268
sip 192.0.2.67 dip x.x.x.x vrf 0 ts 0xcdd072de idx 44104
sip 198.51.100.12 vrf 0 cnt 225 ts 0x1b393b5 idx 56738
sip 198.51.100.89 dip x.x.x.x vrf 0 ts 0xcdd071b2 idx 59429 <---------------- Affected Host
| 0xcdd07450 | 내부 QFP 타임스탬프/페이지 값(16진수)
| idx | 10268 | 내부 게이트 테이블 인덱스
| cnt | 225 | 해당 게이트 개체에 대한 내부 활동/참조 수입니다. 일부 항목 유형에서 확인됨
| 항목 1 | sip 192.0.2.35 dip x.x.x.x vrf 0 ts 0xcdd07450 idx 10268 | VRF 0에서 대상 x.x.x.x로 향하는 소스 192.0.2.35에 대한 튜플별 게이트 항목입니다.
| 항목 2 | sip 192.0.2.67 dip x.x.x vrf 0 ts 0xcdd072de idx 44104 | VRF 0에서 멀티캐스트 대상 x.x.x.x로 향하는 소스 192.0.2.67에 대한 튜플별 게이트 항목입니다.
| 항목 3 | sip 198.51.100.12 vrf 0 cnt 225 ts 0x1b393b5 idx 56738 | VRF 0의 198.51.100.12에 대한 소스 호스트 지향 게이트 항목(내부 활동/참조 수 225).
| 항목 4 | sip 198.51.100.89 dip x.x.x vrf 0 ts 0xcdd071b2 idx 59429 | VRF 0에서 대상 x.x.x.x로 향하는 소스 198.51.100.89에 대한 튜플별 게이트 항목입니다.
이 출력은 NAT 데이터 경로 게이트키퍼 기능이 디바이스에서 활성화되었음을 확인합니다. 또한 영향을 받는 소스 주소 198.51.100.89가 VRF 0의 목적지 플로우와 연결된 튜플별 엔트리로서 QFP NAT 게이트아웃 테이블에 있는 것을 보여줍니다.
이는 198.51.100.89에서 소싱된 트래픽이 QFP 데이터 경로의 NAT 변환 생성 경로에 도달하고 있으며 게이트키퍼 프로세스에 의해 내부적으로 추적되고 있음을 나타냅니다. ts 및 idx 값은 해당 게이트아웃 엔트리에 대한 내부 QFP 참조입니다.
이 출력에서는 영향을 받는 흐름에 대해 전체 NAT 변환이 성공적으로 설치되었는지 확인하지 않습니다. 해당 소스/대상 튜플에 대한 내부 게이트키퍼 상태의 존재만 확인합니다.
보고된 간헐적 동작의 경우, 관련 관찰에 따르면 198.51.100.89가 문제 기간 동안 게이트아웃에 표시되며, 이는 영향을 받는 호스트에서 발생하는 트래픽이 완전히 없는 것이 아니라 결함 도메인을 NAT 데이터 경로 게이트키퍼 또는 변환-설치 단계와 정렬합니다.
4단계. NAT 게이트키퍼 통계를 확인합니다.
캐시 누락이 급격히 증가하면 비 NAT 흐름이 캐시에 추가되지 않음을 나타냅니다. 이 조건은 QFP(Quantum Flow Processor) 활용률을 높입니다.
NAT_R1#show platform hardware qfp active feature nat datapath gateout activity
Gatekeeper on
def mode Size 8192, Hits 448492109001, Miss 53295038401, Aged 149941327 Added 603614728 Active 1899
NAT_R1#show platform hardware qfp active feature nat datapath gateout activity
Gatekeeper on
def mode Size 8192, Hits 191540578459, Miss 3196566091, Aged 1365537 Added 9 Active 7
5단계. QFP 레벨에서 삭제를 검증합니다.
NAT와 관련된 삭제 카운터 확인
NAT_R1#show platform hardware qfp active statistics drop
Last clearing of QFP drops statistics : never
-------------------------------------------------------------------------
Global Drop Stats Packets Octets
-------------------------------------------------------------------------
NatIn2out 1701 174437
NatOut2in 4838 267167
NAT_R1#show platform hardware qfp active statistics drop
Last clearing of QFP drops statistics : never
-------------------------------------------------------------------------
Global Drop Stats Packets Octets
-------------------------------------------------------------------------
NatIn2out 8039 823998
NatOut2in 26427 1461299
NAT_R1#show platform hardware qfp active statistics drop
Last clearing of QFP drops statistics : never
-------------------------------------------------------------------------
Global Drop Stats Packets Octets
-------------------------------------------------------------------------
NatIn2out 12498 1281045
NatOut2in 41211 2278842
관찰된 동작 동안 NatIn2out 및 NatOut2in QFP 삭제 카운터가 지속적으로 증가하여 내부-외부 및 외부-내부 NAT 변환 경로에서 패킷이 지속적으로 삭제되었음을 나타냅니다.
6단계. Packet Capture(패킷 캡처)를 사용하여 영향을 받는 패킷을 확인합니다.
이 문제의 패킷 캡처는 디바이스를 통한 패킷 흐름 및 처리에 대한 자세한 가시성을 제공하여 패킷이 NAT에 의해 변환되는지 아니면 우회되는지를 식별하고 NAT 게이트키퍼 관련 문제의 근본 원인을 격리하는 데 도움이 됩니다. 이를 통해 구성 변경의 대상 문제 해결 및 검증이 용이해집니다.
ip access-list extended TAC
permit ip host 198.51.100.89 <destination IP >
permit ip <destination IP > host 198.51.100.89
debug platform condition ipv4 access-list TAC both
debug platform packet packet 128 fia-trace circular
debug platform packet-trace copy packet both
debug platform condition start
debug platform condition stop
참고: 이 문서에서는 패킷 캡처에 대해 자세히 다루지 않습니다. 패킷 캡처에 대한 자세한 내용은 다음 문서를 참조하십시오.Datapath 패킷 추적 기능 - 패킷 캡처
패킷 캡처 분석을 기반으로, 영향받는 호스트 트래픽이 NAT 프로세스에 의해 삭제되는 것이 관찰됩니다. 특히 캡처된 패킷은 기존 NAT 변환 엔트리 또는 ACL(Access Control List)에 정의된 서브넷과 일치하지 않습니다. 이는 패킷이 NAT 변환의 대상이 아니거나 구성된 ACL에 의해 허용되지 않음을 나타내며, 이는 연결 문제의 원인이 될 수 있습니다. 추가 조사는 NAT 변환 규칙 및 ACL 컨피그레이션을 확인하는 데 집중하여 영향을 받는 트래픽이 제대로 처리되는지 확인할 수 있습니다.
NAT_R1#show platform packet-trace packet 122 decode
Packet: 122 CBUG ID: 650
Summary
Input : GigabitEthernet1
Output : GigabitEthernet2
State : FWD
Timestamp
Start : 6725512391055 ns (07/01/2026 16:56:32.593082 UTC)
Stop : 6725512441820 ns (07/01/2026 16:56:32.593133 UTC)
Path Trace
Feature : IPV4(Input)
Input : GigabitEthernet1
Output : GigabitEthernet2
Source : 198.51.100.89
Destination : <remote Host>
Protocol : 6 (TCP)
SrcPort : 16130
DstPort : 1560
<snip>
Feature : NAT
Direction : OUT to IN
Action : FWD
FWD-POINT : GATEKEEPER_BLOCKED
VRF : 2
Feature: IPV4_NAT_INPUT_FIA
Entry : Input - 0x700140f0
Input : GigabitEthernet1
Output : <unknown>
Lapsed time : 8970 ns
<snip>
Packet Copy In
<snip>
ARPA
Destination MAC : aaaa.bbbb.cccc
Source MAC : bbbb.bbbb.aaaa
<snip>
Packet Copy Out
<snip>>
Found the issue to be gatekeeper:
Feature: NAT
Direction : IN to OUT
Action : FWD
FWD-POINT : GATEKEEPER_BLOCKED
NAT 게이트키퍼 기능과 관련된 문제를 방지하기 위해 NATed 트래픽과 비 NATed 트래픽을 서로 다른 인터페이스 또는 디바이스에서 분리하는 것이 좋습니다. 이러한 분리는 동일한 인터페이스에서 혼합된 트래픽 유형으로 인해 발생하는 과도한 처리를 방지하는 데 도움이 됩니다.
또한 Cisco는 NAT 게이트키퍼 기능의 개선 사항을 포함하는 Cisco 릴리스로의 업그레이드를 권장합니다. 이러한 개선 사항을 통해 소스 및 대상 IP 주소를 모두 캐시할 수 있으며 캐시 크기를 구성할 수 있습니다. 전역 컨피그레이션 모드에서 다음 명령을 사용하여 캐시 크기를 조정할 수 있습니다.
ip nat settings gatekeeper-size <value>
값은 2의 거듭제곱이어야 하며 기본 설정에 가까운 크기로 시작하는 것이 좋습니다. 캐시 크기를 조정한 후 캐시 적중 및 실패를 모니터링하여 최적의 성능과 리소스 활용률을 보장합니다.
캐시 크기를 늘리면 캐시 누락 수를 줄이고 NAT 처리 효율성을 높일 수 있지만, QFP(Quantum Flow Processor)에서 추가 메모리를 소모하기도 합니다. 따라서 세심한 모니터링으로 점진적으로 조정이 가능하다.
이러한 권장 사항은 NAT 게이트키퍼 성능을 최적화하고 혼합 NAT 및 비 NAT 트래픽 흐름으로 인한 잠재적 문제를 줄이는 데 목적이 있습니다.
| 개정 | 게시 날짜 | 의견 |
|---|---|---|
3.0 |
06-Jul-2026
|
초기 릴리스 - 업데이트 필요 및 재게시 |
1.0 |
12-Jun-2026
|
최초 릴리스 |