Domain-Name-System
為什麼後綴在 dig 找到主機時會顯示“Helo command denied: Host not found”?
Helo command rejected: Host not found;
因此,我在 中看到以下錯誤/var/log/syslog
,但是當我對相關主機進行正向和反向查找時,DNS 記錄似乎是合理的。有問題的郵件伺服器endor
, 似乎可以正常接收郵件。為什麼 Postfix 這麼說(還有第二個問題,有沒有我應該更改的設置來修復它?
為保護隱私而更改的電子郵件地址:
Jul 20 23:35:20 endor postfix/smtpd[1503]: NOQUEUE: reject: RCPT from bdmrob01-2.metavante.com[206.71.18.21]: 450 4.7.1 <bdmrob02.metavante.com>: Helo command rejected: Host not found; from=<bbankingonline@mybank.com> to=<myemail@fqdn.org> proto=ESMTP helo=<bdmrob02.metavante.com>
但 DNS 看起來不錯:
endor% dig bdmrob01-2.metavante.com ; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> bdmrob01-2.metavante.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32487 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;bdmrob01-2.metavante.com. IN A ;; ANSWER SECTION: bdmrob01-2.metavante.com. 600 IN A 206.71.18.21 endor% dig -x 206.71.18.21 ; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> -x 206.71.18.21 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40586 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;21.18.71.206.in-addr.arpa. IN PTR ;; ANSWER SECTION: 21.18.71.206.in-addr.arpa. 600 IN PTR bdmrob01-2.metavante.com.
我應該提到,main.cf 說:
smtpd_helo_restrictions = reject_non_fqdn_helo_hostname,reject_invalid_helo_hostname,reject_unknown_helo_hostname
答案一直盯著我們看。
Postfix 正在尋找主機問候它的
A
和記錄。或者,更準確地說,是主機**在其 HELO 消息中所說的主機。讓我們分解一下:PTR``HELO
Jul 20 23:35:20 endor postfix/smtpd[1503]: NOQUEUE: reject: RCPT from bdmrob01-2.metavante.com[206.71.18.21]:
bdmrob01-2.metavante.com
解析為 IP 地址的主機206.71.18.21
與您的郵件伺服器建立 TCP 連接。因此,您檢查了 IP 地址中的 A 記錄:
endor% dig bdmrob01-2.metavante.com [...] ;; ANSWER SECTION: bdmrob01-2.metavante.com. 600 IN A 206.71.18.21
然後你檢查了它的 PTR 記錄:
endor% dig -x 206.71.18.21 ;; ANSWER SECTION: 21.18.71.206.in-addr.arpa. 600 IN PTR bdmrob01-2.metavante.com.
這一切看起來都不錯。所以有什麼問題?連接的主機肯定是由上面的主機名和 IP 地址標識的,但它並沒有說明它是誰。它說:
helo=<bdmrob02.metavante.com>
該主機有一條 A 記錄:
$ dig a bdmrob02.metavante.com [...] ;; ANSWER SECTION: bdmrob02.metavante.com. 0 IN A 92.242.140.2
但是,它的IP地址沒有
PTR
記錄:$ dig -x 92.242.140.2 [...] ;; ANSWER SECTION: 2.140.242.92.in-addr.arpa. 84155 IN PTR unallocated.barefruit.co.uk.
這是他們的問題。在此之前,您將不得不忍受它,或者更改您的後綴伺服器以不打擾
HELO
命令的正向和反向查找。