キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
告知

JTAC-Mid-Career-Recruitment-2021.8

 

IOSXE : NAT 変換にて断続的にパケットがドロップする事象について (NAT Gatekeeper)

4760
閲覧回数
20
いいね!
1
コメント

[toc:faq]

背景

ASR1000シリーズ、ISR4000シリーズなどのIOS-XE ルータにて、NAT 変換にて断続的にパケットがドロップする事象が報告されています

この事象は、NAT Gatekeeper キャッシュの影響で発生していて、IOS-XE NATの実装動作となっています。

NAT Gatekeeperについて

NAT Gatekeeper は、IOS XE RL4 / 12.(33)XND以降のバージョンで、デフォルトでenable となっています。

Ciscoルータでは、内部から外部(IN to OUT)へのNATは、ルーティング後に NATが実行されますが、

外部から内部(OUT to IN)へのNATは、ルーティングの前にNATが実行されます。

このため、OUT to INへのNAT処理は、すべてのパケットに対し、NAT宛(NATed)、非NAT宛(non-NATed) を識別する必要があります。

また、sub-interface / vlan 等複数のインタフェース上で、NAT が実行され、大量にnon-NATedパケットが発生する環境の場合、OUT to INへのNAT 処理にCPUが消費され、スパイクされてしまう懸念がでてきます。

NAT Gatekeeper は、上記、状況でのCPUを保護する目的がありnon-NATedパケットに対し、IN to OUTOUT to IN方向のsource address に対し、small cacheを持つ機能となっています。

NAT Gatekeeper概要図

nat_gatekeeper5.jpg

事象例

定量のNAT トラフィックを流し続けたとき、non-NATed パケットが流れることで、Gatekeeper のキャッシュが上限に達し、リセットのタイミングで、フローが定期的に10秒の断が発生する状況となります。

下記事例としhttp GET Client-Server 間でNATトラフィックを流しつづける状況を作り、トラフィックモニターの結果、下記グラフのように定期的に10秒間の断が発生する状況となります。

nat_gatekeeper3.jpg

NAT Gatekeeperキャッシュの有無の確認

下記、コマンドを使用することで、どのsource IP アドレスにより、NAT Gatekeeperキャッシュが作られているか確認することができます。

  • show platform hardware qfp active feature nat datapath gatein
  • show platform hardware qfp active feature nat datapath gateout
PRIMARY#show platform hardware qfp active feature nat datapath gateout
Gatekeeper on
sip x.x.x.x vrf 0 cnt 1 ts 0x36db07 idx 60

ワークアラウンド

NAT Gatekeeperの設定を下記のいずれかのように変更することにより、上記状況は回避できます。

Solution -1

NAT Gatekeeper extended mode の使用

PRIMARY(config)#ip nat settings gatekeeper-size 1024 
PRIMARY(config)#end

Solution-2

NAT Gatekeeper機能の無効化

PRIMARY(config)#no ip nat service gatekeeper
PRIMARY(config)#end
PRIMARY#Sh platform hardware qfp active feature nat datapath gatein
Gatekeeper off

PRIMARY#

NAT Gatekeeper の無効化により、QFP の使用率が上昇する可能性があります。

下記のコマンドにより上昇状況を確認し、無効化を実施してください。

show platform hardware qfp active data utilization summary
show platform hardware qfp active data utilization qfp 0

Solution-3

NATed / non-NATedパケットが同一インターフェース上に流れないようにする

コメント
Naoya Yamagishi
Cisco Employee