3.3.3 テンプレートのsendmail.cfを使った環境設定例

Mail - SMTPが動作しているマシンから直接アドレス解消ができるネットワーク環境の場合には「3.3.2 sendmail.cfの定義例」で説明したsendmail.cfの定義で運用できますが,直接アドレス解消ができない場合には,Mail - SMTPが動作しているマシンからアドレス解消ができるマシンにメールを転送しなければなりません。この場合の設定例を以下に示します。

アドレス解消ができるかどうかの確認手段としては,Mail - SMTPが動作しているマシンから「nslookup 送信先のドメイン名[またはホスト名]」を実行してください。このコマンドに対して応答があればアドレス解消ができています。

ここに挙げた定義が必要となるのは,図3-1に示すようなネットワーク環境でGroupmax Mailシステムとインターネットとのメール送受信を行う場合です。

図3-1 アドレス解消ができない環境の例

[図データ]

<この項の構成>
(1) インターネットからGroupmax Mailにメールを受信する場合の設定
(2) Groupmax Mailからインターネットにメールを送信する場合の設定

(1) インターネットからGroupmax Mailにメールを受信する場合の設定

場合1
  • メールサーバ(A)から「nslookup メールサーバ(B)のドメイン」を実行するとメールサーバ(B)が応答する。
  • メールサーバ(A)から「nslookup メールサーバ(C)のドメイン」を実行してもメールサーバ(C)が応答しない。
  • メールサーバ(B)から「nslookup メールサーバ(C)のドメイン[又はメールサーバ(C)のホスト名]」を実行するとメールサーバ(C)が応答する。
この条件を満たしている場合にはメールサーバ(A)のsendmail.cfには1に示す定義を追加してください。メールサーバ(B)のsendmail.cfには2に示す定義を追加してください。また,メールサーバ(C)のsendmail.cfには「3.3.2 sendmail.cfの定義例」で示した定義例をsendmail.cfに定義してください。
  1. メールサーバ(C)に定義されているMail - SMTPのドメインを定義するクラス定義(ここでは'Y'とします)を追加します。なお,Mail - SMTPのドメインを決める場合には,必ずメールサーバ(C)のサブドメインとして位置付けてください。

    CY     smtpgw0.hitachi.co.jp smtpgw1.hitachi.co.jp

    注※
    この例では,メールサーバ(C)のドメインを「hitachi.co.jp」とし,Mail - SMTPのドメインを「hitachi.co.jp」にサブドメイン「smtpgw0」,「smtpgw1」を与えた場合を示しています。
     
    次に,ルールセット0(S0)にメールサーバ(C)あてのドメインを持つアドレスをメールサーバ(B)に転送する定義を追加します。

    R$+<@$=Y>     $#smtp$@メールサーバ(B)のドメイン$:$1<@$2>
    R$+<@$=Y.>    $#smtp$@メールサーバ(B)のドメイン$:$1<@$2>

    注※
    「smtp」にはsendmail.cfのメーラ定義(sendmail.cf中で先頭が「M」で始まる記述)で,メーラとして[IPC]が設定されているエントリ(Metherという定義が[IPC]に割り当てられていたならば,「smtp」の個所に「ether」)を指定してください。
  2. メールサーバ(C)のドメインを定義するクラス定義(ここでは'Y'とします)を追加します。ここに設定するドメインは,メールサーバ(A)のクラス定義'Y'に設定したドメインと同じドメインにしてください。

    CY     smtpgw0.hitachi.co.jp smtpgw1.hitachi.co.jp

    次に,ルールセット0(S0)にメールサーバ(C)あてのドメインを持つアドレスをメールサーバ(C)に転送する定義を追加します。

    R$+<@$=Y>     $#smtp1$@メールサーバ(C)のドメイン名2$:$1<@$2>
    R$+<@$=Y.>    $#smtp1$@メールサーバ(C)のドメイン名2$:$1<@$2>

    注※1
    「smtp」にはsendmail.cfのメーラ定義(sendmail.cf中で先頭が「M」で始まる記述)で,メーラとして[IPC]が設定されているエントリ(Metherという定義が[IPC]に割り当てられていたならば,「smtp」の個所に「ether」)を指定してください。
    注※2
    この例では,「smtpgw0.hitachi.co.jp」と「smtpgw1.hitachi.co.jp」の両方に共通している「hitachi.co.jp」を指定するようになります。
場合2
  • メールサーバ(A)から「nslookup メールサーバ(B)のドメイン」を実行するとメールサーバ(B)が応答する。
  • メールサーバ(A)から「nslookup メールサーバ(C)のドメイン」を実行してメールサーバ(C)が応答しない。
  • メールサーバ(B)から「nslookup メールサーバ(C)のドメイン[又はメールサーバ(C)のホスト名]」を実行してもメールサーバ(C)が応答しない。
この条件を満たしている場合には,メールサーバ(B)がアドレス解消に利用しているDNSサーバにメールサーバ(C)のアドレス解消定義を追加してください。
メールサーバ(A)からメールサーバ(B)が認識できない場合は,メールサーバ(A)がアドレス解消に利用しているDNSサーバに,メールサーバ(B)のアドレス解消ルールを追記した後に「場合1」に示した定義を行ってください。

(2) Groupmax Mailからインターネットにメールを送信する場合の設定

場合1
  • メールサーバ(C)から「nslookup メール送信先のドメイン名[又はホスト名]」を実行しても応答がない。
  • メールサーバ(C)から「nslookup メールサーバ(B)のドメイン名[又はホスト名]」を実行するとメールサーバ(B)が応答する。
  • メールサーバ(B)から「nslookup メールサーバ(A)のドメイン名[又はホスト名]」を実行するとメールサーバ(A)が応答する。
  • メールサーバ(A)から「nslookup メール送信先のドメイン名」を実行すると指定したメール送信先が応答する。
この条件を満たしている場合にはメールサーバ(C)のsendmail.cf(Mail - SMTPで提供しているテンプレートのsendmail.cf)に,1に示す定義の変更を行ってください。
  1. ルールセット96(S96)に定義されている,次に示すアドレス書き換えルールをコメントアウト(行の先頭に'#'を付ける)します。

    R$*<@$*$~P> $* $:$1<@$[$2$3$]>$4

    次に,ルールセット0(S0)に定義されている,次のルールを変更してください。

    変更前:
    R$*<@$*>$*     $#smtp$@$2$:$1<@$2>$3
    変更後:
    R$*<@$*>$*     $#smtp$@メールサーバ(B)のドメイン名$:$1<@$2>$3
    または
    R$*<@$*>$*     $#smtp$@[メールサーバ(B)のIPアドレス]$:$1<@$2>$3

    注※
    sendmail.cfによってはsmtpという文字列の代わりにesmtpが指定されている場合もあります。

場合2
  • メールサーバ(C)から「nslookup メールサーバ(B)のドメイン名[又はホスト名]」を実行してもメールサーバ(B)が応答しない。
この条件を満たしている場合にはメールサーバ(C)のネットワーク定義にDNSサーバの参照定義を実行してください。