Cisco 892 で複数の interface で ip nat outside する
ip nat outside
を 2 箇所に書きたい
以下のような環境を考えます。
- ExpressRoute の Private Peering と Microsoft Peering を利用
- インターネット接続も利用
- Cisco 直下、または Private Peering 経由の Private IP アドレス空間のクライアントからインターネットまたは Microsoft Peering 側へ NAT して抜けていく
つまり ip nat outside
が複数あるため、ip nat inside source list 1 interface GigabitEthernet9 overload
みたいな形では書けないんですね。
ip nat inside source list 1 interface GigabitEthernet9 overload
がある状態で、ip nat inside source list 1 interface GigabitEthernet8.715 overload
を追加すると、以前のものが置き換わる、もしくはエラーでコマンドが受け付けてもらえません。
結局、ip nat
される条件が access-list 1 だとガバガバすぎるという話なので、それをより明確にするために route-map
を書くという感じですね。
例えばインターネットに向かうトラフィックが該当する route-map
はここに当たります。
route-map Internet permit 10
match ip address 1
match interface GigabitEthernet9
match ip address 1
というのは access-list 1
に該当するということを示しているので、ここに該当するトラフィックが該当する感じです。
access-list 1 permit 10.100.10.0 0.0.0.255
access-list 1 permit 10.0.0.0 0.0.255.255
それに加えて match interface GigabitEthernet9
にも該当する、ということの条件の組み合わせにより、これらの IP アドレスから送信され、GigabitEthernet9 から出ていく、今回の構成ではインターネット向けのインターフェースから出ていくトラフィックがこの ip nat
により NAT される感じです。
sample config
いろいろな所を省いて重要な部分だけにした、さんぷるのこんふぃぐはこんな感じになります。
tky01#show run
!
interface GigabitEthernet0
switchport access vlan 10
no ip address
!
interface GigabitEthernet8.714
encapsulation dot1Q 714
ip address 172.16.0.1 255.255.255.252
ip nat inside
ip virtual-reassembly in
!
interface GigabitEthernet8.715
encapsulation dot1Q 715
ip address x.y.131.241 255.255.255.252
ip nat outside
ip virtual-reassembly in
!
interface GigabitEthernet9
ip address x.y.131.78 255.255.255.240
ip nat outside
ip virtual-reassembly in
duplex auto
speed auto
!
interface Vlan10
ip address 10.100.10.1 255.255.255.0
ip nat inside
ip virtual-reassembly in
!
ip nat inside source route-map Internet interface GigabitEthernet9 overload
ip nat inside source route-map MSPeering interface GigabitEthernet8.715 overload
ip route 0.0.0.0 0.0.0.0 x.x.131.65
!
route-map Internet permit 10
match ip address 1
match interface GigabitEthernet9
!
route-map MSPeering permit 10
match ip address 1
match interface GigabitEthernet8.715
!
access-list 1 permit 10.100.10.0 0.0.0.255
access-list 1 permit 10.0.0.0 0.0.255.255
!
end
参考
- これが正解という感じです
- Ciscoコンフィグ - PAT
いつも NAT (というか PAT) するために参考にしてる URL、いつもありがとうございます
Discussion