Vyattaで遊ぼう、NATの設定をしてみよう。

前回までに作成したVyattaの輪にサーバーを付け足そうという試みでござる。サーバーを付け足しただけだと、ネットワーク内の通信には問題ないけど、それだとつまらないのでとりあえずPINGとかWHOISとかYUMのアップデートくらいはできるようにした。

ようするに外にパケットが出るようにしたのです。なんかうまく説明ができないw

パケットを外に出すとなると、NATの設定の出番という訳ですが、作ったVyattaの全部にNAT設定が必要なのかというと、そんなことはなくて、デフォルトゲートウェイにあたるVyatta1だけでOKです。

ネームサーバーはCTUのアドレスでOKです。が、そうなるとCTUまでもパケットが届く必要もあるのです。
CTUはもちろんすでにNATされているので設定不要です。

という仮説を考えてみたのですが、実験の結果はまったく問題なしですた。

 

まず図を載せてみる。

net02

つーかさ、VMを6つ起動しているのでパソコンが重たいのだが!!こんなに貧弱なパソコンだったとは。

けっこう悲しいけど、それは置いといてネットワークの構成はこんな感じになっています。

 

サーバーの設定は/etc/sysconfig/network-scripts/ifcfg-eth0と/etc/resolf.confの設定をしたのみになっています。まずはVyatta1のNAT設定から載せてみる。

vyatta@vyatta# show nat
 source {
     rule 1 {
         outbound-interface eth0
         source {
             address 192.168.20.0/24
         }
         translation {
             address masquerade
         }
     }
     rule 2 {
         outbound-interface eth0
         source {
             address 192.168.22.0/24
         }
         translation {
             address masquerade
         }
     }
 }
[edit]

設定はsetから順にコマンドを入れていきますが、自分が持っていたVyattaはバージョンの6.4ですが、6.3と6.4で仕様が変わっているようでして、RIPの設定をしたときにコマンドが違っていたのはそのためのようでした。

以下はshow systemの結果の1部分になります。Vyatta2~4は同じなので端折ってます。

Vyatta1
 gateway-address 192.168.24.1
 host-name vyatta
 name-server 192.168.24.1

Vyatta2/3/4
 gateway-address 192.168.20.1
 host-name vyatta2
 name-server 192.168.24.1

NATの設定は内から外向けにしかしてませんので、もちろんこのWindowsパソコン(192.168.24.51)からはパケットは届きません。
よって直接SSH接続はできません。

   IPv4 アドレス . . . . . . . . . . . .: 192.168.24.51
   サブネット マスク . . . . . . . . . .: 255.255.255.0
   デフォルト ゲートウェイ . . . . . . .:  192.168.24.1

192.168.22.100 に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
要求がタイムアウトしました。

要求がタイムアウトしました。

192.168.22.100 の ping 統計:
    パケット数: 送信 = 3、受信 = 0、損失 = 3 (100% の損失)、

SSHはサービスは動いてるのでもちろん接続可能で、Vyatta経由で接続することになります。
Vyatta1を含めてVyattaの輪の中であればどこからでも接続できます。

vyatta@vyatta3# ssh -p 10022 takeken@192.168.20.50 
The authenticity of host '[192.168.20.50]:10022 ([192.168.20.50]:10022)' can't be established.
RSA key fingerprint is ec:68:0e:dc:ce:fa:6f:4a:7d:64:41:f6:b3:ec:cd:c3.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.20.50]:10022' (RSA) to the list of known hosts.
takeken@192.168.20.50's password: 
Last login: Sat Jul 27 17:33:37 2013

当然、こっちのネットワークからはWindowsパソコンまで届きます。

[takeken@localhost ~]$ ping 192.168.24.51
PING 192.168.24.51 (192.168.24.51) 56(84) bytes of data.
From 192.168.22.4: icmp_seq=1 Redirect Host(New nexthop: 192.168.22.2)
64 bytes from 192.168.24.51: icmp_seq=1 ttl=126 time=1.36 ms
64 bytes from 192.168.24.51: icmp_seq=2 ttl=126 time=0.622 ms
64 bytes from 192.168.24.51: icmp_seq=3 ttl=126 time=1.02 ms
64 bytes from 192.168.24.51: icmp_seq=4 ttl=126 time=1.10 ms
^C
--- 192.168.24.51 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3008ms

Vyattaおもしれー。

パソコン重たいー!!

 

Related Posts


投稿者: Takeken

インターネット利用者のITリテラシーを向上したいという設定の2次元キャラです。 サーバー弄りからプログラミングまで手を付けた自称エッセイストなたけけんの物語。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です