IOS-XE ルータにおいて、NAT と ACL を使用する時には、ACL のチェックが行われてから NAT 処理します。また、route-map を複数の NAT に設定し、パケットが複数の異なる route-map に関連付いている ACL にマッチするような場合、route-map チェックは NAT 設定の投入順で動作します。
一例として説明します。以下の順番で NAT 設定を投入します。
Router(config)#ip nat inside source static D.D.D.D E.E.E.E route-map TEST2
Router(config)#ip nat inside source static A.A.A.A C.C.C.C route-map TEST1
それぞれの route-map は以下となります。
route-map TEST1 permit 10
match ip address 101
ip access-list extended 101
permit ip host A.A.A.A host B.B.B.B
route-map TEST2 permit 10
match ip address 102
ip access-list extended 102
permit ip any host B.B.B.B
この場合、SRC: A.A.A.A DST: B.B.B.B のパケットがルータを通過する際に、該当パケットが ACL 101、ACL 102 ともにマッチされますので、先に投入されている以下の NAT 設定が動作します。
ip nat inside source static D.D.D.D E.E.E.E route-map TEST2
その結果、該当パケットが route-map TEST2 にマッチすると判定されるものの、実際の NAT の変換条件にはマッチしないため、NAT 変換は行われません。また、既に route-map TEST2 に関連付いている ACL 102 によりチェックが完了しているため、ACL 101/route-map TEST1 によるチェックが発生しませんので、該当パケットが、以下の NAT 設定の変換条件を満たしても、NAT 変換が実行されません。
ip nat inside source static A.A.A.A C.C.C.C route-map TEST1