タイトル | 大津真=XはUNIXでサーバで》Dymamic DNSによるサーバの公開(2) | カテゴリー | ネットワーク管理, ネットワーク, 大津真=XはUNIXでサーバで |
作成日 | 2002/1/28 16:6:11 | 作成者 | 新居雅行 |
 ̄ ̄ ̄ ̄アカウントの登録____ 次にDynDNS.orgを例に、実際のアカウント登録手順を示しましょう。 1. DynDNS.orgのサイトの情報を一通り目を通してから、Members’NIC(Network Infomation Center)のページを開きます。 ◇DynDNS.orgのサイト http://www.dyndns.org/dyndns/ ◇Members’NIC(Network Infomation Center)のページ http://members.dyndns.org/ 2. Sign Up Nowのページでユーザ名、メールアドレス、パスワードを入力しアカウントを作成します。なお、ここで入力したユーザ名がそのままホスト名になるわけではありません。 3. [Create Account]ボタンをクリックすると、仮のパスワードがメールで届きます。この後24時間以内でログインしないとアカウントが取り消されるので注意しましょう。 4. Members’NICのページでログインし、パスワードを設定しなおせば登録は完了です。  ̄ ̄ ̄ ̄ホスト名とIPアドレスの登録____ 次に、ホスト名とIPアドレスの登録に移ります。Dynamic DNSの[Create New Host](追加の場合には[Add New Host])をクリックすると[New Dynamic DNS HOST]ページが開きます。 [Hostname]を入力し、ドロップダウンリストから好みのドメイン名を選択します。[IP Address]は自動認識されます。 なお、[Mail Exchanger]ではそのホスト宛のメールを処理するメールサーバを指定できます。[Backup MX?]にチェックを付けた場合には、[IP Address]のマシンがダウンしていた場合にのみ[Mail Exchanger]が使用されるようになります。 [Add Host]ボタンをクリックするとホストが登録されます。 登録が完了したらhostコマンドで、ホスト名からIPアドレスが引けるかどうかを確認します(実際に反映されるまでしばらくかかる場合がありますので10分程度してから実行するといいでしょう)。 % host taitan.ath.cx 〈return〉 taitan.ath.cx has address 61.200.27.53  ̄ ̄ ̄ ̄外部から接続してみる____ 次に、友人などに頼んで、インターネット上からドメイン名でアクセスしてもらいましょう。ルータのポートフォワーディング機能で80番のポートを、LAN内のApacheが動作しているOS Xにアサインするように設定していれば、Webページが表示されるでしょう(OS Xでは「システム環境設定→共有」でWebサーバApacheが立ち上がるように設定する必要があります)。  ̄ ̄ ̄ ̄WebページからIPアドレスを手動で更新する____ 回線がいったん切断されたなどの理由でIPアドレスが変更されてしまった場合、登録を更新する必要があります。手作業で更新するには、Members’NICでホストを選択し、[Modify Host]ボタンを押します。  ̄ ̄ ̄ ̄回線が切断されないようにするには____ 多くのADSL事業者では、一定期間インターネットにパケットが送られないと回線を切断してしまうようです。これを避けるには、コンピュータの時計をインターネット上のタイムサーバで合わせるようにすればいいでしょう。OS Xの場合「システム環境設定→日付と時刻」の「ネットワークタイム」で参照するNTPサーバを設定してください。 ――――IPアドレスの自動更新 Webページから更新できるとはいえ、IPアドレスが変わってしまう度に手動で更新するのは面倒です。 また、外出しているときになんらかのトラブルによってIPアドレスが変わってしまったら、自宅のサーバにアクセスできなくなります。そのため、一定時間ごとに、登録されているIPアドレスと現在のグローバルIPアドレスを比較して、異なっていた場合に自動更新してくれるDynamic DNSのクライアントプログラムが有志の方々の手によって作成されています。 クライアントは、クライアントのページにOSごとに分かれて多数登録されています。OS XではたいていのUNIX用クライアントが使用できます。Ratingを参考にして選択するといいでしょう。 ◇Dynamic DNSのクライアントのページ http://clients.dyndns.org  ̄ ̄ ̄ ̄ddclientの使い方____ 筆者の場合Perlで記述されたフリーのクライアントddclientを使用しています。ここではddclientの設定方法について説明しましょう。 ◇ddclient http://burry.ca:4141/ddclient/ 1. まずは、ダウンロードしたTarボールを解凍します。 % tar xvzf ddclient-3.6.1.tar.gz 〈return〉 ddclient-3.6.1/ ddclient-3.6.1/COPYRIGHT ddclient-3.6.1/COPYING ddclient-3.6.1/README.cisco ddclient-3.6.1/README ddclient-3.6.1/sample-etc_ddclient.conf ddclient-3.6.1/sample-etc_rc.d_init.d_ddclient ddclient-3.6.1/sample-etc_rc.d_init.d_ddclient.redhat ddclient-3.6.1/sample-etc_dhcpc_dhcpcd-eth0.exe ddclient-3.6.1/sample-etc_ppp_ip-up.local ddclient-3.6.1/sample-etc_dhclient-enter-hooks ddclient-3.6.1/sample-etc_cron.d_ddclient ddclient-3.6.1/ddclient 2. プログラム本体を/usr/sbinディレクトリに、設定ファイルを/etcディレクトリに移動します。 % sudo cp ddclient /usr/sbin/ 〈return〉 % sudo cp sample-etc_ddclient.conf /etc/ddclient.conf 〈return〉 3. /etc/ddclient.confを編集します。 通常は use=web を有効にし、ユーザ名、パスワード、ホスト名を設定すればいいでしょう。 4. OS X用の起動スクリプトを作成します。 ddclientをシステムの起動時に自動的に立ち上がるようにしましょう。例によって、/Library/StartupItemsディレクトリにDdclientディレクトリを作成し、StartupParameters.plistと起動スクリプトDdclientを保存します。 〈リスト〉 /Library/StartupItems/StartupParameters.plist { Description = "Dynamic DNS Client Program"; Provides = ("Ddclient"); Requires = ("Resolver"); OrderPreference = "None"; Messages = { start = "Starting Ddclient"; stop = "Stopping Ddclient"; }; } 〈リスト〉 /Library/StartupItems/Ddclient #!/bin/sh ## # Start Dynamic DNS Client ##d . /etc/rc.common if [ "${DDCLIENT:=-NO-}" = "-YES-" ]; then ConsoleMessage "Starting Dynamic DNS Client" /usr/sbin/ddclient -daemon 300 fi 起動スクリプトには実行権を付けます。 # chmod a+x Ddclient 〈return〉 /etc/hostconfigには次の行を加えます。 DDCLIENT=-YES- 以上で準備は完了。システムを再起動すればddclientが動き出し、グローバルIPアドレスが変更されると登録を自動更新します。 ――――付録 TCP/IPネットワークでは、IPアドレスによってホストを識別し、ポート番号によってサービスを識別する。サーバ側のポート番号にはガイドラインのようなものがあり、あらかじめ特定のサービスに割り当てられているポート番号(ウエルノンポート番号)がある。たとえば、HTTPは80番をPOP3は110番を使用するといった具合だ。 一般的なUNIXではサービスとポート番号の対応表は/etc/servicesというテキストファイルに書き込まれているが、OS Xの場合、そのようなネットワークリソースはNetInfoデータベースで管理されている(/etc/servicesというファイルは存在するが通常のモードでは参照されない)。 NetInfoデータベースはNetInfo Managerを使用することで、閲覧・編集が可能だ。コマンドラインでデータベースの内容を確認したい場合には、リソースをUNIX形式で表示するnidumpコマンドを使用するといいだろう。 たとえば、サービスとポート番号の対応を/etc/servicesファイルの形式でダンプしたい場合には次のようにする。 % nidump services . 〈return〉 tcpmux 1/tcp echo 7/tcp discard 9/tcp sink null systat 11/tcp users daytime 13/tcp netstat 15/tcp qotd 17/tcp quote chargen 19/tcp ttytst source ftp 21/tcp ssh 22/tcp …以下略 (この項、以上) [大津真] | |
関連リンク | 大津真Web Site |