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 查詢,接著會對傳回的名稱執行正向查詢以檢查傳回的 IP 號碼是否符合原始號碼;如果不符合,則刪除此名稱並使用 IP 位址。 

forwardchecknone

執行反向 DNS 查詢之後,不執行正向查詢。 

forwardchecktag

如果已執行了反向 DNS 查詢,接著會對傳回的名稱執行正向查詢以檢查傳回的 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 位址清單 (各 IP 位址之間以空格分隔)。

defaultnameservers

查閱 TCP/IP 堆疊的名稱伺服器選項。 

lastresort

指定最後一台主機。 

切換關鍵字 

控制內送郵件之替代通道選取 

allowswitchchannel

允許從 switchchannel 通道切換至此通道

noswitchchannel

繼續使用伺服器通道;不切換至與原始主機關聯的通道;不允許被切換。 

switchchannel

從伺服器通道切換至與原始主機關聯的通道。 

tlsswitchchannel

TLS 協商成功時切換至其他通道。 

saslswitchchannel

SASL 認證成功時切換至其他通道。 

目標主機選擇和郵件副本儲存 

指定目標主機系統和如何儲存郵件副本。 

daemon

連線至特定的主機系統,不論訊息封位址為何。 

single

指定將為通道中的每個目標位址建立單獨的郵件副本。 

single_sys

為使用的每個目標系統建立單份郵件副本。 

TCP/IP 連接埠號碼和介面位址

關鍵字:portinterfaceaddress

經由 TCP/IP 通道的 SMTP 在傳送郵件時,通常會連線連接埠 25。port 關鍵字可 用於指示經由 TCP/IP 通道的 SMTP 連線非標準連接埠。請注意,此關鍵字與派送程式選項PORT 互補,該選項用於控制 MTA 偵聽哪些連接埠來接受 SMTP 連線。

interfaceaddress 關鍵字控制 TCP/IP 通道連結的、做為外寄連線來源位址的位址;亦即在具有多個介面位址的系統上,此關鍵字可控制在 MTA 傳送外寄 SMTP 郵件時用做來源 IP 位址的位址。請注意,此關鍵字與派送程式選項 INTERFACE_ADDRESS 互補,該選項用於控制 TCP/IP 通道偵聽哪個介面位址來接受內送的連線與郵件。

快取通道連線資訊

關鍵字:cacheeverythingnocachecachefailurescachesuccesses

使用 SMTP 協定的通道會維護包含先前連線嘗試歷程記錄的快取記憶體。此快取記憶體可用於避免多次重新連線至無法存取的主機,以免浪費大量時間並延遲其他郵件。此快取記憶體針對各個程序,而且只在外寄 SMTP 遞送通道單次執行期間存留。

此快取記憶體通常會記錄連線成功與失敗。(記錄成功的連線嘗試是為了彌補後續的失敗 - 一台先前成功但現在失敗的主機並不保證進行另一次連線嘗試之前的延遲時間會與從未嘗試或先前失敗時進行連線嘗試之前的延遲時間一樣長。)

但是,MTA 所使用的快取策略不一定適合所有情況。因此,提供通道關鍵字來調整 MTA 快取記憶體。

cacheeverything 關鍵字啟用所有形式的快取,該關鍵字為預設。nocache 關鍵字可停用所有快取。

cachefailures 關鍵字啟用連線失敗而不是成功的快取 — 這會強制進行重試,而重試的限制比 cacheeverything 的限制更為嚴格。最後,cachesuccesses 只快取成功連線。最後這個關鍵字對於 SMTP 通道的效果等同於 nocache

反向 DNS 查詢

關鍵字:forwardchecknoneforwardchecktagforwardcheckdelete

forwardchecknoneforwardchecktagforwardcheckdelete 通道關鍵字可修改執行反向 DNS 查詢的效果。這些關鍵字可控制 MTA 是否對使用 DNS 反向查詢找到的 IP 名稱執行正向查詢,如果請求執行正向查詢,這些關鍵字還可指定當 IP 名稱的正向查詢結果與連線中原始 IP 號碼不相符時,MTA 應執行何種作業。

forwardchecknone 關鍵字為預設,它表示不執行正向查詢。forwardchecktag 關鍵字告知 MTA 在每次反向查詢之後執行正向查詢,如果使用正向查詢找到的號碼與原始連線的號碼不相符,就以星號 (*) 標記相應的 IP 名稱。forwardcheckdelete 關鍵字告知 MTA 在每次反向查詢之後執行正向查詢,如果反向查詢傳回的名稱之結果與原始連線 IP 位址不匹配,就忽略 (刪除) 該名稱;在這種情況下,MTA 改為使用原始 IP 位址。


備註 –

對於許多站點,正向查詢的結果與原始 IP 位址不匹配這種情況很正常,因為這些站點對數個不同的 IP 位址使用更「通用」的 IP 名稱。


IDENT 查詢

關鍵字:identnoneidentnonelimitedidenttnonnumericidentnonesymbolicidenttcpidenttcpnumericidenttcpsymbolicidenttcplimited

IDENT 關鍵字控制 MTA 如何使用 IDENT 協定來處理連線與查詢。IDENT 協定在 RFC 1413 中加以說明。

identtcpidenttcpsymbolicidenttcpnumeric 關鍵字告知 MTA 使用 IDENT 協定來執行連線與查詢。從 IDENT 協定獲取的資訊 ( 通常是進行 SMTP 連線的使用者身份) 會插入到郵件的 Received: 標頭中,如下所示:


備註 –

遠端系統必須為 identtcpidenttcpsymbolicidenttcpnumeric 引起的 IDENT 查詢執行 IDENT 伺服器,使其發揮作用。


請注意,IDENT 查詢嘗試可能會影響效能。路由器會越來越多地「鎖定」嘗試與它們無法識別的連接埠進行的連線。如果 IDENT 查詢發生這種情況,則 MTA 在連線逾時 (TCP/IP 堆疊控制的逾時,通常是一兩分鐘) 之前將不會回聽。

identtcpindenttcplimitedidenttcpsymbolicidenttcpnumeric 比較時,會發現其他影響效能的因素。透過 identtcpidenttcplimitedidenttcpsymbolic 呼叫的 DNS 反向查詢,會耗用一些額外的時間來獲取更易使用的主機名稱。

identnone 關鍵字會停用 IDENT 查詢,但會指定 IP 至主機名稱轉換,而且 IP 號碼和主機名稱都將包含在郵件的 Received: 標頭中。

identnonesymbolic 關鍵字會停用 IDENT 查詢,但會指定 IP 至主機名稱轉換;僅主機名稱會包含在郵件的 Received: 標頭中。

identnonenumeric 關鍵字會停用此 IDENT 查詢,禁止執行通常 IP 號碼至主機名稱的 DNS 反向查詢轉換,並可能會提昇效能,但會造成 Received: 標頭中更易使用的資訊減少。這是預設。

對於 IDENT 查詢、反向 DNS 查詢和 Received: 標頭中顯示的資訊而言,identtcplimitedidentnonelimited 關鍵字的效果分別與 identtcpidentnone 的效果相同。不同之處在於,使用 identtcplimitedidentnonelimited 時,不論 DNS 反向查詢是否成功地決定了主機名稱,IP 文字列位址始終會用做由於使用 switchchannel 關鍵字而進行的任一通道切換之基礎。

TCP/IP MX 記錄支援

關鍵字:mxnomxdefaultmxrandommxnonrandommx

有些 TCP/IP 網路支援使用 MX (郵件轉寄) 記錄,有些則不支援。如果 MTA 系統所連線的網路不提供 MX 記錄,有些 TCP/IP 通道程式可被配置為不使用 MX 記錄。mxnomxdefaultmxrandommxnonrandommx 關鍵字控制 MX 記錄支援。

關鍵字 randommx 指定應執行 MX 查詢,而且應以隨機順序處理同等優先順序的 MX 記錄值。關鍵字 nonrandommx 指定應執行 MX 查詢,而且應以接收時的順序處理同等優先順序的 MX 值。

目前,mx 關鍵字等同於 nonrandommx;在未來的發行版本中可能會變更為等同於 randommxnomx 關鍵字停用 MX 查詢。defaultmx 關鍵字指定在網路表示支援 MX 記錄時,應使用 mx。關鍵字 defaultmx 是以任何形式支援 MX 查詢的通道之預設。

名稱伺服器查詢

關鍵字:nameserversdefaultnameservers

執行名稱伺服器查詢時,nameservers 通道關鍵字可用於指定要查閱的名稱伺服器清單,而不是查閱 TCP/IP 堆疊自己的名稱伺服器選項。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

內送郵件的替代通道 (切換通道)

關鍵字:switchchannelallowswitchchannelnoswitchchannel。另請參閱SMTP 認證、SASL 與 TLSsaslswitchchannel傳輸層安全tlsswitchchannel

以下關鍵字控制內送郵件的替代通道選取:switchchannelallowswitchchannelnoswitchchannel

MTA 接受來自遠端系統的內送連線時,它必須選擇與此連線關聯的通道。通常此決定依使用的傳輸而定;例如,經由 TCP/IP 的內送 SMTP 連線會自動與 tcp_local 通道相關聯。

但是,使用具有不同特性的多個外寄通道處理經由同一傳輸的不同系統時,此慣例就無法奏效。發生這種情況時,內送連線不會與外寄連線所關聯的通道相關聯,因此對應的通道特性也不會與遠端系統相關聯。

switchchannel 關鍵字提供了解決此難題的方法。如果對伺服器使用的初始通道指定 switchchannel,連線 (原始) 主機的 IP 位址將對照通道表進行匹配,如果相符,則來源通道隨之變更。如果找不到相符的 IP 位址,或發現相符結果符合原始預設的送進的通道,則 MTA 可以選擇使用 DNS 反向查詢所找到的主機名稱來嘗試匹配。來源通道可以變更為標記了 switchchannelallowswitchchannel (預設) 的任何通道。noswitchchannel 關鍵字指定不應自該通道進行切換,也不應切換至該通道。

switchchannel 的規格對於伺服器依預設關聯的通道以外的任何通道都無效。目前,switchchannel 僅影響 SMTP 通道,但實際上也沒有其他通道適合使用 switchchannel

目標主機選擇

關鍵字:daemonsinglesingle_sys

daemon 關鍵字的解譯與用法取決於其所套用之通道的類型。

daemon 關鍵字用於 SMTP 通道,可控制目標主機的選擇。

通常,通道會連線至要處理的郵件之訊息封位址中列出的任一台主機。daemon 關鍵字用於告知通道改為連線特定的遠端系統,通常是防火牆或郵件中心系統,而不論訊息封位址為何。實際的遠端系統名稱應直接出現在 daemon 關鍵字之後,如以下範例所示:

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

如果 daemon 關鍵字之後的引數並非完全合格的網域名稱,該引數會被忽略,而通道將連線至其正式主機。正式主機是與通道相關的完全合格的主機名稱。它可以在三行通道區塊的第二行中進行指定:

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

正式主機也可以在兩行通道區塊的 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

其他所需關鍵字為 singlesingle_syssingle 關鍵字指定將為通道中的每個目標位址建立單份郵件副本。single_sys 關鍵字為使用的每個目標系統建立單份郵件副本。請注意,不論使用的關鍵字為何,都要為郵件形成佇列時所在的每個通道至少建立一份郵件副本。