[SMTP]退信550 與 554到底差異在那?

<h2>有人說550 與 554都是被對方拒絕或加入黑名單,也有人說554才是,到底是如何呢?有人可以解釋一下嗎</h2>

回應

基本上根據SMTP的交易過程中,只要是交易過程需要拒絕或中斷此交易皆會回5XX開頭代碼,

什麼是SMTP 交易過程可以參照 smtp交易指令教學,可以用來測試smtp郵件伺服器是否正常 

但這些代碼意義,在實際RFC 5321 和RFC 1893 是有定義的,只是後來SPAM機制的引入後,只要是不管是要拒絕對方或中斷對方,

只要在交易過程中回代碼開頭5XX的即可中斷對方SMTP連結。

實際早期所有 SMTP 錯誤訊息都遵循基本格式

回覆代碼
狀態碼
回應文字

xyz
x.y.z
文字字串

550  1.2.1 mail box error

通常正規做法會在回覆代碼 後面加入 狀態碼 回應文字,

回覆代碼 (主要給SMTP發送程式看的,只要遇到5XX就知道中斷連線,或無法傳送信件)

後面

狀態碼
回應文字

   主要使被退回的發送者了解寄送發生可能狀況,

但後續很多因為spam 防制系統啟用,

因各家spam 廠商對於防制系統的機制設計不同,故在回應文字或狀態碼部份不多做任何解釋,

並且大部份的SPAM拒絕代碼都採用550 or 554來代表

導致現在許多信件退回時,很多人就認為550 & 554 都代表拒絕.....所以才有此說詞

以往 550 通常代表是對方 信箱超過大小限制 或 不存在使用者等等......

而554才是拒絕,但因為現在SPAM並不著重在回應文字,而是防制,故造成了這兩個代碼有時候是一樣的!