Oracle® Solaris 11.2 での sendmail サービスの管理

印刷ビューの終了

更新: 2014 年 7 月
 
 

sendmail とネームサービス

sendmail ではさまざまな要件がネームサービスに課せられます。これらの要件の理解を深めるために、このセクションでは、まずメールドメインからネームサービスドメインへの関係について説明します。その次に個々の要件について説明します。次を参照してください。

メールドメインとネームサービスドメイン

メールドメイン名はネームサービスドメイン名の接尾辞の 1 つでなければなりません。たとえば、ネームサービスのドメイン名が「A.B.C.D」ならば、メールドメイン名は次のうちのいずれかです。

  • A.B.C.D

  • B.C.D

  • C.D

  • D

メールドメイン名は、最初の確立時には、多くの場合、ネームサービスドメインと同じになります。ネームサービスドメインは、ネットワークが大きくなるにつれて、ネームサービスをより管理しやすくするために、より小さいドメインに分割することが可能です。他方、メールドメインは、多くの場合、一貫した別名を提供するために分割されないまま残ります。

ネームサービスの要件

このセクションでは、sendmail がネームサービスに必要とする要件について説明します。

ネームサービスにおけるホストテーブルまたはマップは、次の 3 種類の gethostbyname() による問い合わせをサポートするように設定しなければなりません。

  • mailhost – いくつかのネームサービスの構成では、自動的にこの要件を満たします。

  • 完全なホスト名 (たとえば、smith.admin.acme.com) – 多くのネームサービスの構成がこの要件を満たします。

  • 短いホスト名 (たとえば、smith) – sendmail は、外部メールを転送するためにメールホストに接続する必要があります。メールアドレスが現在のメールドメイン内であるかどうかを判定するために、gethostbyname() が完全なホスト名で呼び出されます。エントリが見つかると、アドレスは内部にあるとみなされます。

    NIS および DNS は、短いホスト名を引数にする gethostbyname() をサポートします。したがって、この要件は自動的に満たされます。

ネームサービス内に有効な sendmail サービスを確立するために、ホストネームサービスに追加された次の 2 つの規則に従う必要があります。

  • 完全なホスト名と短いホスト名の引数を持った gethostbyname() は、同一の結果を生成する必要があります。たとえば、両方の関数がメールドメイン admin.acme.com から呼び出された場合、gethostbyname (smith.admin.acme.com)gethostbyname (smith) が同じ結果になるようにします。

  • 共通のメールドメイン下のすべてのネームサービスドメインに対しては、短いホスト名を指定した gethostbyname() で同じ結果が得られる必要があります。たとえば、メールドメインが smith.admin.example.com の場合、gethostbyname(smith) は、ebb.admin.example.com ドメインまたは esg.admin.example.com ドメインのどちらから呼び出す場合でも、同じ結果を返す必要があります。ネームサービスドメインはこの要件に各種ネームサービス用の特別な連携を与えているので、メールドメイン名は、通常ネームサービスドメインより短いです。

gethostbyname() 関数については、gethostbyname(3NSL) のマニュアルページを参照してください。