動的IPでもドメイン名を手に入れる
no-ip.comでDDNS
Apacheを動かしても,特定のドメイン名が無ければ他人にホームページを告知することができない。そこで,接続するたびにIPアドレスが変化してしまう場合でも,一定のドメイン名を手に入れることができるサービス「DDNS」(ダイナミックDNS)を利用しよう。
ここでは例として同無料サービスの1つ「no-ip.com」(http://www.no-ip.com/)を利用した方法を紹介する。なお,後述するようにIPの変化を自動的に更新するようスクリプトを動かしておくのがポイントだ。いちいちIPが変わるたびにno-ip.comサイトでアドレス更新するのでは面倒だろう。詳細手順は後述しよう。
ホームページにアクセスすると,下写真のように最上段に取得可能な空きドメイン名を検索するためのフォームが用意されている。ここで,自分が希望する文字列を入力して探してみよう。
最上段で自分が希望するドメイン名を検索してみる。アカウントを取得するには,順番に表示される問いに答えていけばよい
取得後はWeb上からIPアドレスを更新することができる。Eメールアドレスがログイン名となり,パスワードを入力すれば設定画面に移る
ログインすると左上側にメニューが現れる。下側のメニューは有償のサービスなどだ
「Manage Hosts」メニューを選択すると,次のように現在取得中のドメイン名が一覧表示される。中央には現在割り振られているIPアドレスが表示される
「Modify」を選び特定のドメインを選択すると,現在の詳細設定と状態が表示される。ここで,メールサーバを立ち上げた際にMXを向けるなどの設定も可能だ
ここまで紹介したのは,Web上でIPアドレスを更新する方法だ。前述したように,この方法は面倒なため更新し忘れが起こる可能性がある。no-ip.comでは自動更新をするために専用のスクリプトが用意されている(厳密にはコンパイルを行ってバイナリファイルを生成する)。この方法を利用すれば,数十分置きに自動更新させるといったことが可能になる。次の手順で設定しよう。
ページ右下の「Dyn-Update Client」のLinuxリンクをクリックして次のページに移る
LinuxのUpdaterリンクが見つかるはずだ。このリンクをショートカットコピーしてPS2 Linux上でWgetしよう
$ tar zxfv noip_updater_linux_v1.4.tar.gz
$ cd noip_updater_linux_v1.4
$ make
上記の手順でアーカイブを解き,メイクを行えばバイナリファイル(noip)が生成される。「make install」は不要だ。次に必要なのは,設定ファイル「no-ip.conf」の編集である。このファイル内容は次のようになっており,自動更新を行う際に自分のアカウント(ドメイン名)を特定する設定内容だ。
# cat no-ip.conf
LOGIN = ykida@xx.xxxxx.or.jp
PASSWORD = xxxxxx
HOSTNAME = xxxx
DOMAIN = sytes.net
PROXY = N
NAT = Y
DAEMON = Y
INTERVAL = 20
DEVICE = eth0
no-ip.confを編集したら,後は起動するだけだ。上記では「DAEMON = Y」として設定したため,「INTERVAL = 20」(20分置き)に自動更新を行う指定になっている。
$ ./noip -c ./no-ip.conf
上記のように指定すれば,「-c」で指定した「no-ip.conf」ファイル内容をもとに自動更新を行うようデーモンとして常駐する。さらに,マシン起動時に自動実行される「/etc/rc.d/rc.local」ファイルにでも記述しておけば,メンテナンスフリーでIPアドレス更新が実現できるだろう。ちなみに,no-ip.confにはパスワードが記載されているため,「chmod 740 ./no-ip.conf」などと指定してパーミッションを変更しておくことをおすすめする。
かけ足で筆者がサイト構築した際の骨組み部分を解説してきた。以上の通りに操作をすれば,取りあえずサイトとして動かすことができるだろう。ただし,最低限のセキュリティを実現できるというレベルであることを忘れないでほしい。しばらくは日々ログファイルを監視して,どのような挙動を示しているのかはしっかりと把握する必要がある。もちろんダイヤルアップルータのフィルタ設定がしっかりとされていることを前提としているため,この点も自分で確認しておいてほしい。
2001年7月24日現在,1か月ほどインターネットサーバ兼,自宅のファイルサーバとしてPS2 Linuxを利用してきたが,雰囲気はほかのディストリビューションのLinuxと同じであり,PS2だからといって特殊な点はほとんど無いと感じる。もちろん紹介してきた用途がPS2特有のデバイスなどに触れないことからだともいえる。一般的なネットワークツールは,何ら問題なくコンパイルができている。もちろんRPMに頼ることはできないため,冒頭で挙げたように割り切りが必要だ。
すでにMIPS/LinuxやSGIからもMIPS用のLinuxが公開されていたため,比較的土壌が整っているのは幸いだろう。今後も,同サーバ上でさまざまなサービスを動かしていこうと考えている。
[木田佳克, ITmedia]