Network設計 (2)

network_dns.jpg  サーバーにするマシンとそのネットワークの基本的な設計のお話をします。ネットワークの話はGoogleで検索しても断片的でなかなかその全体が掴めない。その上、概念的にけっしてやさしいとは思えないものでかなり複雑です。否、覚えてしまうとかなり簡単ではあります。
 ここでは、インターネットに接続されたルーターが1つ、その配下にサーバーが1つという基本的な設定を例に解説します。ツリー型のネットワークでは基本的には全部同じでして、この形が基本になっています。
 このネットワークを参考にしてみてください。bind9を運用するに当たっては必ず必要になるものがいくつかあるので、bind9でDNSサーバーを構築する前に下準備をしなくてはなりません。DNSサーバーは内部(LAN内)だけで運用することも可能です。が、外部に公開してこそ!その便利さを発揮しますし、ここ最近のようにオリジナルのドメインを誰でも簡単に取得しインターネットという環境を安価に構築できる現代だからこそ!という設定をしたいものです。

準備するもの

  • 固定IPアドレス(1個)※できれば光回線
  • ブロードバンドルーター(1個)
 準備するものは以上で後はUbuntuがインストールされたパソコンがインターネットにつながっていれば大丈夫です。多少の設定の差はあるかと思いますが、その他のディストリビューションも概ね参考にはなると思います。
 固定IPアドレスは現在使用しているISP(インターネットサービスプロバイダー)に問い合わせるとたいていの場合は取得が可能です。僕の場合はso-netのフレッツ光に加入しているのでそこから固定IPアドレスを取得しています。それぞれのプロバイダーに問い合わせてみてください。
 ブロードバンドルーターはBUFFALOのBBR-4HGを例に説明します。安価で高速でなかなか壊れない...、その上、電気量販店に行くとたいてい売っているということで比較的情報も多いからです。
 固定IPアドレスでインターネットに接続する方法はISPによってやや違うのでこれは所定のマニュアルを参照してください。通常ユーザー名とパスワードを設定して接続する筈です。また固定IPを利用するには光回線が必要になるかもしれません。尚かつ光回線でPPPoE接続が可能でなければならない場合が多いので注意してください。最近のPCだったら問題ないと思いますがかなり古いPCになりますとPPPoE接続ができないかもしれません。光回線は月々4000円から5000円ぐらいで接続が可能かと思います。ADSLなどでのDNSサーバーはちょっと心配かも。というもの最近のリッチコンテンツはかなり重い可能性もあるからです。

ネットワークの面倒くさい説明

 ネットワークの面倒くさい説明をします。ちょっと頭を空っぽにして読みましょう。まずインターネットという意味ですが、ここではWANという言葉を使った方が正しいかもわかりません。というのも概念的には、「外vs内」というだけで図に書かれている「インターネット側」とは外のことです。また内側はWAN(外)に対してLAN(内)です。実際は外も内も同じTCP/IPという同様のネットワークの基準(プロトコル)で動いているのでたいした違いはないのですが、この内と外を明確に分けるのがルーターです。いわゆるブロードバンドルーターです。
 しかし概念とは難しいもので、このルーターがあれば内と外に分けられるというのではなくて、ある設定をするからこそ内と外に分けることができるというわけです。ルーターをかませてイーサーネットケーブルをつないだだけでは内外に分割することはできません。この分割の役目をする概念がパケットフィルターとかアドレス変換とかNATとかIPマスカレードというものです。これも目に見えるものではなくて単なるプログラム上の設定のことを言っています。
 121.2.73.xxxという固定IPアドレスは外の世界のものです。つまりインターネット側(WAN)に行き渡っているIPアドレスです。外側の皆様はこのIPアドレスに自由に接続してあなたのマシンに到達することができるわけです。そうやってあなたのサーバーを訪ねてきたり、または攻撃してきたりするわけです。しかし図の通り、そのアドレスはルーターに向かってやってきます。またあなたのサーバーが外に出てなにがしかをする時には121.2.73.xxxというIPアドレスを背負って他の場所を訪ねます。入り口がルーターであるように出口もルーターになります。入口となり出口となる場所には121.2.73.xxxというIPアドレスが割り振られているのです。これがあなたの取得した固定IPアドレスというものです。またこの固定IPアドレスの性質は外にあるいわゆる住所なので難しい言葉で「グローバルIPアドレス」とよばれています。グローバルIPアドレスの反対語としてプライベートIPアドレスなるものがありますが、もうおわかりの通りLAN側(内側)で割り振られるIPアドレスのことを指します。
 しかし、ネットワークは実は二枚舌なんです。このことを自分で発見した時にはちょっとした驚きを感じました。図のルーターの中には上下に二つのIPアドレスがあります。121.2.73.xxxは外側(インターネット側)に、192.168.11.1は内側(LAN側)に向いています。これは実に二枚舌であって、外側にはグローバルIPアドレスという顔をもって活動しているのに、内側では192.168.11.1という別の顔をもっているのです。ドアの外では会社のお父さん、家の中では優しいお父さん、そんな感じです。家の中では会社の顔を決して見せない、しかし逆に会社では家の中のような顔を見せることはないのです。ネットワーク上はこれが揺るぎないルールになっています。ルーターも二つの顔をもって活動しています。そしてこのルーターは192.168.11.2という別のマシンに接触しようとします。奥さんかもしれないし子供かもしれませんが、彼らは192.168.11.2というIPアドレスを192.168.11.1に向けます。奥さんが夫に見せる顔です。しかしながら、しかしながら、彼女もやはり二面性があり127.0.0.1という顔を持っています。夫が会社にでかけると127.0.0.1というプライベートな顔を持ちます。
 おもしろいのは、この二つの側面を内と外できちんと使い分けながらもどのネットワークにもきちんとつながっているということなんです。なんと人間的なのでしょう。
 しかしbindを設定してDNSを実現したいと思っていのにこの図にはドメインもホスト名もありません。実はネットワークには本来ドメインもホスト名も何もいらないのです。本当はDNSなんて必要ないんです。本末転倒な話ですが、本当にそうです。IPアドレスの接続だけで充分であり、http://121.2.73.xxx/で接続できてしまうわけです。試しにhttp://121.2.73.119/に接続してみてください。オムニオレンタルサーバーのホームページに接続できます。何が悲しいかと言えば、bindを設定するのに理解しなくてはいけないことは、ドメインなんて要らないということです。
 あなたは121.2.73.xxxというようなIPアドレスでホームページを閲覧することができました。しかし、192.168.11.2で接続することはできません。これはプライベートIPアドレスなので内側だけで通用するアドレスだからです。しかし僕は僕自身なのでhttp://192.168.11.2/でさっきと同様のホームページを閲覧可能なのです。なぜなら自分自身のLAN内に自分自身のマシンがあるのですから。勿論http://127.0.0.1/でも接続が可能です。LAN内はすべて僕自身のネットワーク内なので自分自身では見ることができます。しかし他の皆様にお見せできるのは121.2.73.xxxだけなのです。
 これらをちょっと難しい言葉で覚える必要があります。
121.2.73.xxxグローバルIPアドレス
192.168.11.1デフォルトゲートウェイ
192.168.11.2 プライベートIPアドレス
127.0.0.1ローカル・ループバックIPアドレス
 ネットワークに関しては、最低これだけ覚えておけばだいたい大丈夫です。

 もうちょっと難しい話を続けます。もうちょっとで終わります。
 インターネットのネットワークはノードといわれる「分岐点」でそれぞれの方向に枝分かれしてゆきます。図でもそのノードをひとつだけ書いてあります。サーバーとその他のサーバーに分かれているところです。
121.2.73.xxx (192.168.11.1)
 |-- 192.168.11.2 (127.0.0.1)
 |-- 192.168.11.3 (127.0.0.1)
  `-- 192.168.11.x (127.0.0.1)
こんな感じで枝分かれしています。実はグローバルIPアドレスももっと上位で枝分かれしています。






プロフィール



  • Name :: 山上オサム ♂(37)
  • Hobby :: 武術
  • Work :: Web Designer