Sun Java System Messaging Server 6 2005Q4 管理ガイド

TCP/IP 接続と DNS 検索のサポート

サーバーによる TCP/IP 接続およびアドレス検索の処理方法を指定することができます。この項では、次の内容について説明します。

表 12–22 に、この項で説明されている TCP/IP 接続および DNS 検索に関連するキーワードの一覧を示します。

表 12–22 TCP/IP 接続と DNS 検索のキーワード

チャネルキーワード 

説明 

ポート選択とインタフェースのアドレス

SMTP 接続用のデフォルトポート番号とインタフェースのアドレスを指定します。 

port

SMTP 接続用のデフォルトポート番号を指定します。標準ポートは 25 です。 

interfaceaddress

指定された TCP/IP インタフェースアドレスにバインドします。 

キャッシュキーワード 

接続情報のキャッシュ方法を指定します。 

cacheeverything

すべての接続情報をキャッシュします。 

cachefailures

接続失敗に関する情報だけをキャッシュします。 

cachesuccesses

接続成功に関する情報だけをキャッシュします。 

nocache

接続情報をキャッシュしません。 

リバース DNS 検索 

着信 SMTP 接続に対するリバース DNS 検索の処理方法を指定します。 

forwardcheckdelete

リバース DNS 検索のあとに正引き検索を行い、リバース DNS 検索で返された名前の正引き検索がオリジナルの接続の IP 番号に一致するかどうかを確認します。一致しない場合、リバース DNS 検索で返された名前は削除され、IP アドレスが使用されます。 

forwardchecknone

DNS リバース検索のあとに正引き検索を実行しません。 

forwardchecktag

リバース DNS 検索を実行して返された名前を正引き検索して、IP 番号がオリジナルの接続の IP 番号に一致するかどうかを確認します。一致しなければ名前に「*」を付けます。 

IDENT 検索 /DNS リバース検索 

着信 SMTP 接続に対する IDENT 検索および DNS リバース検索の処理方法を指定します。 

identnone

IDENT 検索を実行しません。IP からホスト名への変換を実行し、Received: ヘッダーにホスト名と IP アドレスの両方を含めます。

identnonelimited

IDENT 検索を実行しません。IP からホスト名への変換を実行し (ただしチャネルの切り替えを行う際にはホスト名を使用しない)、Received: ヘッダーにホスト名と IP アドレスの両方を含めます。

identnonenumeric

IDENT 検索および IP からホスト名への変換を実行しません。 

identnonesymbolic

IDENT 検索を実行しません。IP からホスト名への変換を実行し、Received: ヘッダーにホスト名だけを含めます。

identtcp

着信 SMTP 接続での IDENT 検索および IP からホスト名への変換を実行し、Received: ヘッダーにホスト名と IP アドレスの両方を含めます

identtcplimited

着信 SMTP 接続での IDENT 検索と IP からホスト名への変換を実行します (ただし、チャネルの切り替えを行う際にはホスト名を使用しない)。Received: ヘッダーにホスト名と IP アドレスを含めます。

indenttcpnumeric

着信 SMTP 接続で IDENT 検索を実行します。IP からホスト名への変換を実行しません。 

identtcpsymbolic

着信 SMTP 接続での IDENT 検索と IP からホスト名への変換を実行し、Received: ヘッダーにホスト名だけを含めます。

MX レコードのサポートと TCP/IP ネームサーバー 

チャネルが MX レコード検索をサポートするかどうか、およびどのように処理するかを指定します。 

mx

TCP/IP ネットワークおよびソフトウェアが MX レコード検索をサポートします。 

nomx

TCP/IP ネットワークが MX 検索をサポートしません。 

defaultmx

チャネルが、ネットワークから MX 検索を実行するかどうかを決定します。 

randommx

MX 検索を実行し、返されたエントリを同等の優先度でランダム化します。 

nonrandomemx

MX 検索を実行しますが、返されたエントリを同等の優先度でランダム化しません。 

nameservers

TCP/IP スタックが選択したネームサーバーの代わりに照合するネームサーバーのリストを指定します。nameservers には、空白文字で区切られたネームサーバーの IP アドレスのリストが必要です。

defaultnameservers

TCP/IP スタックが選択したネームサーバーを照合します。 

lastresort

最後のホストを指定します。 

switch キーワード 

メールを着信する代替チャネルの選択を制御します。 

allowswitchchannel

switchchannel チャネルからこのチャネルへの切り替えを許可します。

noswitchchannel

サーバーチャネルの使用を継続し、送信元ホストに関連付けられているチャネルに切り替えません。また、ほかのチャネルからこのチャネルへの切り替えを許可しません。 

switchchannel

サーバーチャネルから送信元のホストに関連付けられたチャネルに切り替えます。 

tlsswitchchannel

TLS のネゴシエートが成功した場合に、ほかのチャネルに切り替えます。 

saslswitchchannel

SASL 認証が成功した場合にほかのチャネルへ切り替えます。 

ターゲットホストの選択とメッセージコピーのストレージ 

ターゲットホストシステムと、メッセージコピーのストレージ方法を指定します。 

daemon

エンベロープアドレスにかかわらず特定のホストシステムに接続します。 

single

チャネル上の各宛先アドレス用にメッセージのコピーが 1 つずつ作成されるように指定します。 

single_sys

各宛先システム用にメッセージのコピーを 1 つずつ作成します。 

TCP/IP ポート番号とインタフェースアドレス

キーワード: portinterfaceaddress

通常、SMTP 実装 TCP/IP チャネルは、ポート 25 に接続してメッセージを送信します。SMTP 実装 TCP/IP チャネルがその他のポートを使用するように指定するには、port キーワードを使用します。このキーワードは、PORT ディスパッチャオプション (SMTP 接続を受け入れるために MTA が待機するポートを制御するオプション) を補足するものです。

interfaceaddress キーワードは、TCP/IP チャネルが送信時にソースアドレスとしてバインドするアドレスを制御します。つまり、複数のインタフェースアドレスが存在するシステム上で、MTA が SMTP メッセージを送信する際にどのアドレスをソース IP アドレスとして使用するかを制御するキーワードです。このキーワードは、INTERFACE_ADDRESS ディスパッチャオプション (接続およびメッセージを受け入れるために TCP/IP チャネルが待機するインタフェースアドレスを制御するオプション) を補足するものです。

チャネル接続情報のキャッシング

キーワード: cacheeverythingnocachecachefailurescachesuccesses

SMTP プロトコルを使用するチャネルは、過去の接続試行の履歴を含むキャッシュを管理しています。このキャッシュは、アクセスできないホストに繰り返し接続しようとして時間を浪費し、ほかのメッセージの配信が遅延されることを回避するために使用されます。このキャッシュは送信 SMTP チャネルが動作中の間のみ維持され、動作が終了するたびに削除されます。

通常、キャッシュには、成功した接続試行と失敗した接続試行の両方に関する情報が記録されます。(成功した試行は、その後失敗する試行を相殺するために記録される。すなわち、一度接続に成功したホストがその後失敗しても、はじめて試行する接続や以前失敗した接続ほど次の接続試行が遅れることはない。)

ただし、MTA が使用するキャッシング方法がすべての状況に適しているというわけではありません。そこで、チャネルキーワードを使用して MTA キャッシュを調整します。

cacheeverything キーワードは、すべての形式のキャッシングを有効にします。デフォルト設定ではこのキーワードが使用されます。nocache キーワードは、すべてのキャッシングを無効にします。

cachefailures キーワードは、失敗した接続のキャッシングだけを有効にします。このキーワードを使用すると、次の試行は cacheeverything を使用した場合より多くの制約を受けることになります。cachesuccesses は成功した接続だけをキャッシュします。このキーワードは、SMTP チャネルに対する nocache キーワードと同等のものです。

リバース DNS 検索

キーワード: forwardchecknoneforwardchecktag forwardcheckdelete

forwardchecknoneforwardchecktag、および forwardcheckdelete チャネルキーワードは、リバース DNS 検索の影響を修正します。これらのキーワードは、MTA が DNS リバース検索によって検出された IP 名の正引き検索を実行するかどうか、および実行する場合には正引き検索の結果がオリジナルの接続の IP 番号と一致しなかった場合にどのように対処するかを制御します。

デフォルト設定では forwardchecknone キーワードが有効になっているため、正引き検索は実行されません。forwardchecktag キーワードは、リバース検索が行われるたびに正引き検索を実行し、検出された番号がオリジナルの接続の番号と一致しない場合は IP 名にアスタリスク (*) を付けるように指定します。forwardcheckdelete キーワードは、リバース検索が行われるたびに正引き検索を実行し、リバース検索で返された名前の正引き検索がオリジナルの接続の IP アドレスに一致しなかった場合はリバース検索で返された名前を無視 (削除) するように、MTA に指示します。この場合、MTA はオリジナルの IP アドレスを使用します。


注 –

複数の IP アドレスに 「一般的な」IP 名が使用されているサイトの場合、正引きの結果がオリジナルの IP アドレスと一致しないのは比較的頻繁に見られる現象です。


IDENT 検索

キーワード: identnoneidentnonelimitedidenttnonnumericidentnonesymbolicidenttcpidenttcpnumericidenttcpsymbolic identtcplimited

IDENT キーワードは、MTA が IDENT プロトコルを使用して接続や検索を処理する方法を制御します。IDENT プロトコルは、RFC 1413 で規定されています。

identtcpidenttcpsymbolic、および identtcpnumeric キーワードは、MTA が接続や検索に IDENT プロトコルを使用するように指定するものです。IDENT プロトコルから入手した情報 (通常、SMTP 接続を使用しているユーザーの ID) は、次のようにメッセージの Received: ヘッダー行に挿入されます。


注 –

identtcpidenttcpsymbolic、または identtcpnumeric による IDENT 検索が役に立つのは、リモートシステムで IDENT サーバーが稼働している場合です。


IDENT クエリの試行でパフォーマンスヒットが発生する場合があります。そうすると、ルーターは認識できないポートへの接続試行を次第に「ブラックホール化」するようになります。IDENT 検索でこのような状況が発生した場合は、接続がタイムアウトするまで MTA には応答が返されません (通常、このタイムアウトは TCP/IP スタックが制御するもので、1、2 分ほどかかる)。

別のパフォーマンスの問題が、identtcpindenttcplimited、あるいは identtcpsymbolicidenttcpnumeric と比較するときにも発生します。identtcpidenttcplimited、または identtcpsymbolic によって DNS リバース検索が実行された場合、よりユーザーフレンドリーなホスト名を返すにはより長い時間が必要になります。

identnone キーワードは IDENT 検索を無効にしますが、IP からホスト名への変換は行われます。メッセージの Received: ヘッダーには IP 番号とホスト名の両方が含まれます。

identnonesymbolic キーワードは IDENT 検索を無効にしますが、IP からホスト名への変換は行われます。メッセージの Received: ヘッダーにはホスト名だけが含まれます。

identnonenumeric キーワードは IDENT 検索を無効にし、DNS リバース検索の IP 番号からホスト名への変換を禁止します。また、Received: ヘッダーにユーザーフレンドリーではない情報を使用するため、パフォーマンスの向上につながる可能性もあります。これがデフォルトです。

IDENT 検索、リバース DNS 検索、Received: ヘッダーに表示する情報などに関し、identtcplimited キーワードは identtcp と、identnonelimited キーワードは identnone とそれぞれ同様の効果をもたらします。ただし、異なる点として、identtcplimited および identnonelimited の場合は、switchchannel キーワードの影響で、DNS リバース検索によってホスト名が検出されたかどうかにかかわらず常に IP リテラルアドレスがチャネルスイッチのベースとして使用されます。

TCP/IP MX レコードのサポート

キーワード: mxnomxdefaultmxrandommxnonrandommx

TCP/IP ネットワークには、MX (メールの転送) レコードの使用をサポートするものとしないものがあります。MTA システムの接続先であるネットワークから提供される MX レコードだけを使用するように設定できる TCP/IP チャネルプログラムもあります。mxnomxdefaultmxrandommxnonrandommx キーワードは MX レコードのサポートを制御します。

randommx キーワードは、MX 検索を実行し、同等の優先順位を持つ MX レコード値を順不同で処理するように指定するものです。nonrandommx キーワードは、MX 検索を実行し、同等の優先順位を持つ MX レコード値を受信したとおりの順番で処理するように指定するものです。

現在のところ、mx キーワードは nonrandommx キーワードと同じものですが、将来のリリースでは randommx と同じになるように変更される可能性もあります。nomx キーワードは MX 検索を無効にします。defaultmx キーワードは、ネットワークが MX レコードをサポートする場合に mx を使用するように指定します。MX 検索をサポートするチャネルではすべて defaultmx キーワードがデフォルトとして設定されています。

ネームサーバー検索

キーワード: nameserversdefaultnameservers

ネームサーバー検索が実行される際、TCP/IP スタックが選択したネームサーバーの代わりに nameservers チャネルキーワードを使ってネームサーバーのリストを指定することができます。nameservers キーワードには、空白文字で区切られたネームサーバーの IP アドレスのリストが必要です。次の例を参照してください。

nameservers 1.2.3.1 1.2.3.2

デフォルト設定では defaultnameservers が有効になっているため、TCP/IP スタックの選択によるネームサーバーが使用されます。

UNIX でネームサーバー検索を禁止するには、nsswitch.conf ファイルを編集します。NT の場合は、TCP/IP 設定を変更します。

最後のホスト

キーワード: lastresort

lastresort キーワードは、ほかのホストへの接続試行がすべて失敗した場合に最終的な接続先となるホストを指定します。このキーワードは、事実上の最終手段的 MX レコードとして動作します。このキーワードは、SMTP チャネルに対してのみ効果があります。

このキーワードでは、「最終手段的システム」の名前を指定する単一のパラメータが必要です。例:

tcp_local single_sys smtp mx lastresort mailhub.siroe.com
TCP-DAEMON

着信メール用代替チャネル (切り替えチャネル)

キーワード: switchchannelallowswitchchannel noswitchchannel「SMTP 認証、SASL、TLS」saslswitchchannel および 「Transport Layer Security」tlsswitchchannel も参照してください。

次の各キーワードは、着信メール用代替チャネルの選択を制御するものです。switchchannelallowswitchchannelnoswitchchannel

MTA がリモートシステムから 着信接続を受け付ける場合、MTA はその接続に関連付けるチャネルを選ぶ必要があります。通常、使用するチャネルは転送形式に基づいて決定されます。たとえば、TCP/IP を介する着信 SMTP 接続は、自動的に tcp_local チャネルに関連付けられます。

ただし、異なる性質を持つ複数の送信チャネルが複数のシステムに対して同時に使用される場合は、この限りではありません。この場合、着信と送信がそれぞれ異なるチャネルで行われるため、対応するチャネルの性質がリモートシステムに関連付けられません。

この問題は、switchchannel キーワードを使用することにより解決できます。サーバーが最初に使用するチャネルに switchchannel を指定すると、送信元ホストの IP アドレスがチャネルテーブルに照合され、一致した場合はソースチャネルがそれに合わせて切り替えられます。一致するものがない場合、または最初のデフォルト着信チャネルに一致するものが検出された場合は、MTA が リバース DNS 検索によって検出したホスト名に一致するエントリを見つけようと試みる場合もあります。ソースチャネルは switchchannel または allowswitchchannel にマークされているチャネルに切り替えられます (デフォルト)。noswitchchannel キーワードは、チャネルの切り替えを行わないように指定するためのものです。

デフォルトでは、サーバーが関連付けられているチャネル以外のチャネルに switchchannel を使用しても効果はありません。現在のところ、switchchannel を使用できるのは SMTP チャネルに対してのみですが、いずれにしても SMTP チャネル以外に switchchannel を使用すべきではありません。

ターゲットホストの選択

キーワード: daemonsinglesingle_sys

daemon キーワードの解釈と使用は、適用するチャネルの種類によって異なります。

daemon キーワードは、SMTP チャネル上でターゲットホストの選択を制御するために使用します。

通常、ホストへの接続に使用されているチャネルは、メッセージのエンベロープアドレスに表示されます。daemon キーワードは、エンベロープアドレスにどのチャネルが表示されているかにかかわらず、チャネルがファイアウォールやメールハブシステムなど特定のリモートシステムに接続するように設定します。実際のリモートシステム名は、次の例に示すように daemon キーワードの直後に表示されます。

tcp_firewall smtp mx daemon firewall.acme.com
TCP-DAEMON

daemon キーワードの後ろの引数が完全なドメイン名ではない場合、引数は無視され、チャネルは正規ホストに接続します。正規ホストは、チャネルに関連付けられている完全修飾ホスト名です。これは、3 行からなるチャネルブロックの 2 行目に指定できます。

tcp_firewall smtp mx daemon router
firewall.acme.com
TCP-DAEMON

正規ホストを 2 行からなるチャネルブロックの TCP-DAEMON のあとに指定して、送信接続がそれぞれの接続を特定のホストとして識別するようにもできます。

tcp_firewall smtp mx daemon router
TCP-DAEMON firewall.acme.com

ファイアウォールやゲートウェイシステムを正規ホスト名として指定する場合、次の例に示すように daemon キーワードに与えられる引数は、一般的にルーターとして指定されます。

tcp_firewall smtp mx daemon router
firewall.acme.com
TCP-DAEMON

また、関連するキーワードとして、single および single_sys があります。single キーワードは、各宛先アドレス用にメッセージのコピーを 1 つずつ作成するように指定します。single_sys キーワードは、各宛先システム用にメッセージのコピーを 1 つずつ作成します。どちらのキーワードを使用しても、メッセージがキューに入れられる各チャネルに最低 1 つずつメッセージのコピーが作成されることに注意してください。