前回までに作成したVyattaの輪にサーバーを付け足そうという試みでござる。サーバーを付け足しただけだと、ネットワーク内の通信には問題ないけど、それだとつまらないのでとりあえずPINGとかWHOISとかYUMのアップデートくらいはできるようにした。
ようするに外にパケットが出るようにしたのです。なんかうまく説明ができないw
パケットを外に出すとなると、NATの設定の出番という訳ですが、作ったVyattaの全部にNAT設定が必要なのかというと、そんなことはなくて、デフォルトゲートウェイにあたるVyatta1だけでOKです。
ネームサーバーはCTUのアドレスでOKです。が、そうなるとCTUまでもパケットが届く必要もあるのです。
CTUはもちろんすでにNATされているので設定不要です。
という仮説を考えてみたのですが、実験の結果はまったく問題なしですた。
まず図を載せてみる。
つーかさ、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おもしれー。
パソコン重たいー!!