この記事は、Charles Edge 著の近刊書「Take Control of OS X Server」のプレリリース版の章です。2014 年後半に一般公開が予定されています。第 1 章「OS X Server の紹介」と第 2 章「サーバハードウェアの選択」を除き、これらの章は TidBITS 会員のみご利用いただけます。詳しくは TidBITS でストリーミング配信されている「Take Control of OS X Server」をご覧ください。
サーバーの設定とOpen Directoryのセットアップが完了したら、他のサービスの設定に移りましょう。まずはDNS(ドメインネームシステム)について見ていきましょう。DNSは、コンピュータ、リソース、サービスに名前を付けるためのシステムです。本書を最後まで読んでいれば、Open Directoryを有効にするために既にDNSサービスを有効にしているはずです。次は、DNS設定を改善・拡張してみましょう。
第 3 章の「DNS をオンにする」で既に行った DNS 構成以上の設定は必須ではありませんが、少し追加構成を行うと、ドメイン名検索のキャッシュによりパフォーマンスが向上し、クライアント Mac が IP アドレスではなく名前を使用してサーバーとそのサービスを参照できるようになります。たとえば、ユーザーはmavserver.pretendco.lan
よりも の方が覚えやすくなります。また、さらに簡単にするために、ファイル共有などの特定のサービスに名前を関連付けることもできます。これは、内部ファイル サーバーがよりも192.168.210.2
呼ばれていることを覚えやすいためです(同じサーバーの 2 つの名前であっても)。files.pretendco.lan
mavserver.pretendco.lan
IP アドレスではなく名前を使用するもう 1 つの利点は、将来的に特定のサービスを他のサーバーに移動する場合、たとえばfiles.pretendco.lan
別のマシンを再ポイントするだけで、ユーザーはファイル サーバーにアクセスするために何も変更する必要がないことです。
最後に、複数のサーバーがある場合、サーバーを区別するために DNS を内部で実行することがますます重要になります。
サービスとそれに関連付けられたDNS名を設定する順序は重要ではありません。DNS名は設定するまで使用できませんが、設定するまではすべてのサーバーとサービスにIPアドレスでアクセスできます。有効にする予定のさまざまなサービスのDNS名を今作成しておくのが最も簡単ですが、忘れてしまった場合は後で戻って設定すれば済みます。
ゾーンとレコードの種類を理解する
DNSの設定方法に入る前に、OS X ServerでどのようなDNSレコードを利用できるか確認しておきましょう。基本的な使用方法では、これらのレコードの多くは自動的に作成されるか、必須ではありませんが、設定する内部サービスに応じて、マシンレコード、エイリアスレコード、メールエクスチェンジャレコードを作成する必要があるでしょう。
作成するドメイン名はそれぞれゾーンと呼ばれます。また、特定の場所を指し示したい項目はそれぞれレコードと呼ばれます。サーバーのDNS画面では、以下の項目を確認・作成できます。
- プライマリゾーン: DNSドメイン。例えば、
www.pretendco.lan
のプライマリゾーンは になりますpretendco.lan
。プライマリゾーンは、最初のマシンレコードを作成すると自動的に作成されます。 - マシンレコード:マシンレコード(DNS用語ではAレコード)は、コンピュータ名とIPアドレスをマッピングします。すべてのサーバーにはマシンレコードが必要です。これは「DNSを有効にする」で作成しました。この例では、マシンレコードは
mavserver.pretendco.lan
にマッピングされています192.168.210.2
。 - エイリアスレコード: CNAMEとも呼ばれるエイリアスレコードは、ある名前を別の名前にマッピングします。例えば、 でファイルサービスと Web サービスの両方を実行している場合
mavserver.pretendco.lan
、 と のエイリアスレコードを定義し、両方を に関連付けることができますfiles.pretendco.lan
。www.pretendco.lan
これらmavserver.pretendco.lan
のエイリアスには特別な意味はありません。短く、文字、数字、ハイフンのみを使用する限り、自由に設定できます。主な目的は、ユーザーにとって分かりやすいものにすることです。 - ネームサーバーレコード:ネームサーバー(NS)レコードは、各ゾーンの権威DNSサーバーを指定します。ネットワーク上にDNSサーバーが1つしかない場合は、そのサーバー自体を指定する必要があります。Serverアプリは、最初のマシンレコードを作成すると、ネームサーバーレコードを自動的に作成します。
- サービスレコード:サービスレコード(SRVレコード)は、特定のゾーンでサービスを検索する場所を示す特別なデータを保持します。例えば、iCalはサービスレコードを活用することで、ユーザーはセットアップ時にユーザー名とパスワードを入力するだけで済みます。高度な機能を実行するDNSサーバーをセットアップする場合を除き、サービスレコードを作成する必要はありません。
- メールエクスチェンジャレコード:MXレコードとも呼ばれるメールエクスチェンジャレコードは、特定のドメインのメールサーバーのIPアドレスを指します。メールエクスチェンジャレコードは、メールサーバーを実行している場合にのみ必要です。
- テキストレコード: Serverでテキストレコード( TXTレコード)を作成するのは不可能に思えますが、実は秘訣があります。マシン(A)レコードを作成すると、テキストフィールドが表示されます。そこに必要なテキストを入力することで、TXTレコードを作成できます。TXTレコードは主にSPFとDKIMの詳細(どちらも一括メールの配信率向上を目的としています)を指定するために役立つため、TXTレコードが必要になることはほとんどありません。
- 逆引きゾーン:この自動作成されたゾーンは、ゾーン内のIPアドレスが返す名前をそれぞれマッピングします。心配する必要はありません。
- 逆マッピング: DNSの世界では、逆マッピングとは、 IPアドレスをドメイン名にマッピングするPTRレコードのことです。これは、通常のDNSとは正反対の働きをします。多くのインターネットメールサーバーは、逆DNS PTRレコードを持たないIPアドレスからの受信メッセージを拒否するように設定されているため、逆マッピングはメールサーバーにのみ必要です。Serverでは、逆マッピングを手動で作成することはできません。各マシンレコードに最初に記載されたIPアドレスに対して自動的に作成されます。
- セカンダリ ゾーン:セカンダリ ゾーンについても心配する必要はありません。セカンダリ ゾーンは、他の DNS サーバーに保存されているプライマリ ゾーン情報の読み取り専用コピーです。
サーバー上のDNSを構成する
この章の冒頭で述べたように、小規模な家庭やオフィスのネットワークでDNSサーバーを運用する主な理由は2つあります。それは、名前のキャッシュとIPアドレスへのマッピングです。幸いなことに、ServerのDNSキャッシュ機能を活用するために特別な操作は一切必要ありません。Serverはすべてのリクエストを自動的にキャッシュし、情報が期限切れになっていない限り、後続のリクエストにもキャッシュされた情報を提供します。
名前とIPアドレスをマッピングするための追加レコードの設定は少し手間がかかりますが、それほど手間ではありません。まず、「DNSを有効にする」で作成したマシンレコードと、サーバー側のメールエクスチェンジャレコードにエイリアスレコードを作成します。次に、クライアントMacのDNS設定を調整して、新しいDNS名を認識させる必要があります。
以下の手順に従って、エイリアスレコードとメールエクスチェンジャレコードを作成します。この例では、ファイルサーバーとWebサーバーのエイリアスレコードを作成します。
- サイドバーの「詳細設定」カテゴリで「DNS」をクリックします。右側にDNSパネルが表示されます。
- ギアの
ポップアップ メニューから [すべてのレコードを表示] を選択すると、サーバーによって作成されたすべてのゾーンとレコードが表示され、DNS ペインがマシン レコード以外のレコード タイプを作成できるモードになります。
- プラス
ボタンをクリックし、表示されるポップアップメニューから「エイリアスレコードの追加」を選択します。
- 「ゾーン」ポップアップメニューはそのままにし、「ホスト名」フィールドに と入力し
files
、「宛先」フィールドにサーバー名(例mavserver.pretendco.lan
:(図1))を入力します。「作成」をクリックします。図 1:ホスト名フィールドにファイル サーバーのエイリアス名を入力します。
- 手順 3 と 4 を繰り返しますが、
www
今回はホスト名フィールドに入力します。 - もう一度プラス
ボタンをクリックし、ポップアップメニューから「メールエクスチェンジャレコードを追加」を選択します。OS X Serverのメールサービスを有効にする予定がない場合は、この手順と次の手順をスキップできます。
- ゾーンポップアップメニューはそのままにし、「メールサーバー」フィールドに、サーバーのドメイン名の前に「」を付けて入力します
mail
(mail.pretendco.lan
図2)。「優先度」フィールドは0のままにしておきます。複数のメールサーバーを使用している場合、このフィールドの数値が大きいほど、優先度が低くなります。「作成」をクリックします。
図 2:メール サーバーにマップする名前を入力します。
クライアント Mac で DNS を構成する
ネットワーク上のクライアント Mac が新しい DNS サーバーを使用するように設定するための最も簡単な方法は、図 4 に示すように、DHCP サーバー (多くの場合、DSL またはケーブル モデム、あるいは AirPort ベース ステーションや同様のルーター) を再設定して、新しいサーバーを最初の DNS エントリとして提供することです。2 番目の [DNS サーバー] フィールドに別の DNS サーバー (ISP が運営するサーバー、または Google の 8.8.8.8 などの主要なパブリック サーバー) を入力するのが最も安全です。これは、何らかの理由でローカル DNS サーバーがダウンした場合に、DNS ルックアップのバックアップとして使用されるからです。
図 4: DHCP サーバーを DNS サーバーに向けると、ネットワーク上で DHCP サーバーから情報を取得するすべてのクライアント Mac が自動的に新しい DNS サーバーの使用を開始します。
ネットワークの DHCP サーバーにアクセスできない場合は、各クライアント Mac で DNS サーバーを手動で割り当てることもできます。
- システム環境設定のネットワークパネルを開きます。
- DNS 設定を調整するインターフェース (イーサネットまたは Wi-Fi など) を選択します。
- [詳細設定] ボタンをクリックし、[DNS] ボタンをクリックして DNS ビューを開きます (図 5 )。
図 5:新しいサーバーを参照するようにクライアント コンピューターの DNS サーバー設定を構成します。
- DNSビューの左側にあるDNSサーバーリストの下にあるプラス
ボタンをクリックしてリストに新しいエントリを追加し、DNSサーバーのIPアドレスを入力します。OS X Serverがダウンした場合に備えて、クライアントMacがDNSルックアップに使用できるDNSサーバーのIPアドレスを1つか2つ追加して、この手順を繰り返すことをお勧めします。
- [OK] ボタンをクリックし、[適用] をクリックして変更を保存します。
すべてがうまくいけば、ネットワークの DNS サーバーが実行され、ネットワーク上のすべてのクライアント Mac がその DNS サーバーを使用して内部マシンと外部マシンの両方の IP アドレスを検索するようになります。