Vyatta で NAT を設定する ( source NAT )





Vyatta で source NAT を設定する方法は次の通り。

例では、192.168.1.100 を送信元 IP アドレスとするパケットがインターフェース eth0 から出て行く時に、
送信元 IP アドレスを 210.168.1.100 に NAT するように設定しています。

まず、NAT する対象とする IP アドレスを設定します。

vyatta@vyatta1# set nat source rule 1 source address 192.168.1.100/32   

次に、NAT した後の IP アドレスを設定します。

vyatta@vyatta1# set nat source rule 1 translation address 210.168.1.100   

最後に、どのインターフェースから出て行く時に NAT するのかを設定します。

vyatta@vyatta1# set nat source rule 1 outbound-interface eth0   

これで設定自体は終わり、commit します。

vyatta@vyatta1# commit   
[ nat source ]
warning: IP address 210.168.1.100 does not exist on the system!  

[edit]
vyatta@vyatta1# 

例の設定では、設定を行っている Vyatta のインターフェースで使っていない
セグメントの IP アドレスをNAT 後の IP アドレスとして設定しているので、
一応 warning が出力されています。

今回設定した後のコンフィグは以下のようになっています。

nat {
     destination {
         rule 1 {
              destination {
                  address 210.168.1.100
              }
              inbound-interface eth0
              translation {
                  address 192.168.1.100
              }
         }
     }
     source {
         rule 1 {
              outbound-interface eth0
              source {
                  address 192.168.1.100/32
              }
              translation {
                  address 210.168.1.100
              }
         }
     }
}

ちなみに、FTP Passive モードの通信も上記の NAT 設定による通信が可能でした。