iT邦幫忙

0

dns解析問題

因mail一直停留在佇列上寄不出去,mail address是在秘魯speedy.com.pe,也ping不到,nslookup也解析不到ip,為什麼會這樣,但ping和nslookup其他Domain Name就正常,e-mail確認沒打錯,其他mail都正常可以寄出,而且是寄二封到不同的Domain Name但都.pe秘魯,不可能說這二家dns都有問題吧,請問我該怎麼做才能把信寄出

ping時的訊息:Ping request could not find host speedy.com.pe. Please check the name and try again
nslookup時,只出現name:speedy.com.pe

os:windows server 2003
MAIL server :exchange server 2003
DNS是自己架設

看更多先前的討論...收起先前的討論...
ayu iT邦好手 5 級 ‧ 2010-07-08 12:26:26 檢舉
實測了下, 負責 .pe 這層的NS有三台:
PE1.DNSNODE.NET , SNS-PB.ISC.ORG , QUIPU.RCP.NET.pe
其中 PE1.DNSNODE.NET 這台一直沒能正常回應, 另兩個則正常.
可試著清掉你DNS上的快取資料再看看.
wenchan iT邦新手 5 級 ‧ 2010-07-08 13:26:54 檢舉
ayu提到:
PE1.DNSNODE.NET , SNS-PB.ISC.ORG , QUIPU.RCP.NET.pe
是怎麼查到這三台ns
把 windows 裡的 DNS Client 的服務給關掉停用看看。
蠻討厭這個預設會開啟的,不大有用的服務。
基本上在 Queue 裡的已查不到 IP 的mail,就是寄不出去了。
如果再寄 新的信 到該地址,如果寄得出去,就表示沒問題了。
若新的信也仍會被 Queue 住的話,才是還存在著問題。
ayu iT邦好手 5 級 ‧ 2010-07-09 06:33:26 檢舉
(以下的指令操作多在 UNIX 平台進行)
dig . NS
這樣會列出所有負責 . 的 Authoritative DNS, 再隨便找一台問 .pe
dig @h.root-servers.net pe NS , 就會得到
pe. 2D IN NS pe1.dnsnode.net.
pe. 2D IN NS quipu.rcp.net.pe.
pe. 2D IN NS sns-pb.isc.org.

這就是在 . 這層註冊, 負責 .pe 權威回答的 NS .
然而, 去問 pe1.dnsnode.net. 這台時, 卻會 time-out .
$ dig @pe1.dnsnode.net. pe NS
; (2 servers found)
;; res options: init recurs defnam dnsrch no-nibble2
;; res_nsend: Operation timed out
對於一個國家的 country-NIC 而言, 是很嚴重的事情!
也許該DNS電路不通或主機維修中, 但情況已有數日(都在瘋FIFA嗎?),
這對其 ccTLD (也就是.pe)的所有sub-domain而言, 影響甚鉅.
類似的情況, 十幾年前台灣也發生過.
ayu iT邦好手 5 級 ‧ 2010-07-09 06:33:51 檢舉
無論是 HINET 168.95.1.1 / 168.95.192.1 ,
還是 Google 8.8.8.8 / 8.8.4.4 , 它們都是 cache-only resolver ,
不妨把它們想成是 104 查號台, 可以就其手上的資料(cache)提供服務,
但實際上最正式的答案, 應該還是向 Authoritative DNS 查詢,
就好比如公司客服專線, 回應出來的公司電話地址等資料, 原則上應該是最正確的.

然而實務上, client端也有自己的DNS cache, 有時候明明TTL已經過期了,
卻還是牢記著以前的查詢結果, 這情況又特別容易發生在MS系列上.
因此我才會建議你, ipconfig /flushdns 再試試看.

但還有個大問題, 負責 speedy.com.pe 的 mail-exchange(MX),
也就是 vmx.terra.com , *可能有拒絕大多數台灣地區IP直接連線的情況* ,
在各種封鎖垃圾信件的方式裡, 這是比較魯莽的作法.
$ telnet vmx.terra.com 25
Trying 208.84.244.136...
Connected to vmx.terra.com.
Escape character is '^]'.
554 5.7.1 Service unavailable; Client host [xxx-xx-xx-xx.HINET-IP.hinet.net]
blocked using blackholes.terra.com.br=127.0.0.2

因此第二個建議是, 請設定要寄到 speedy.com.pe 的信件,
轉由你的ISP提供的 mail relay 代為寄送,
因為類似的情況, 也發生在 yahoo.com 和 hotmail.com 不合理的拒收.
8
coolvista
iT邦研究生 2 級 ‧ 2010-07-08 11:58:11
最佳解答

改用hinet: 168.95.1.1 168.95.192.1
C:\Documents and Settings\Gbadmin>nslookup
Default Server: dns.hinet.net
Address: 168.95.1.1

set q=all
speedy.com.pe
Server: dns.hinet.net
Address: 168.95.1.1

Non-authoritative answer:
speedy.com.pe MX preference = 10, mail exchanger = vmx.terra.com
speedy.com.pe nameserver = huascaran.tdp.net.pe
speedy.com.pe nameserver = huandoy.tdp.net.pe

speedy.com.pe nameserver = huandoy.tdp.net.pe
speedy.com.pe nameserver = huascaran.tdp.net.pe
vmx.terra.com internet address = 208.84.244.136
huandoy.tdp.net.pe internet address = 200.37.224.10
huascaran.tdp.net.pe internet address = 200.37.195.10

看更多先前的回應...收起先前的回應...
wenchan iT邦新手 5 級 ‧ 2010-07-08 12:02:15 檢舉

用自己dns也可以解析如上那些資料,那是不是表示我的dns可以正常解析對方,那不是dns的問題嗎?是exchange的問題嗎..因信無法寄出

要把mail server重新啟動一下。
如果之前mail server query 該筆資料是不存在的話,
是會將這結果一直存在記憶中。
即使 該筆 dns 資料更新後,nslookup 也查得到的時候,
mail server 仍是記住舊的結果。
重啟動 mail server 才會重新再 query 該筆資料,
才會發現該筆資料的 ip 為何…

wenchan iT邦新手 5 級 ‧ 2010-07-08 13:29:50 檢舉

昨天就一直卡著,今天早上有重新啟動mail server,但還是存在,

coolvista iT邦研究生 2 級 ‧ 2010-07-08 15:26:33 檢舉

查一下mail server的log可能比用猜測的快!

coolvista iT邦研究生 2 級 ‧ 2010-07-08 15:31:18 檢舉

使用 http://www.intodns.com/ 幫您檢查 speedy.com.pe
結果是正常的!

把 windows 裡的 DNS Client 的服務給關掉停用看看。
蠻討厭這個預設會開啟的,不大有用的服務。

6
ycl8000
iT邦高手 1 級 ‧ 2010-07-08 13:58:09

nslookup時,只出現name:speedy.com.pe, DNS解析應該是正常的,
若按照 coolvista 說的, 加了 set q=all 得到的結果就會和他查的一樣.
信寄不出有可能是對方的網路或MAIL SERVER有問題,
查一下系統的LOG看有沒有相關訊息可供參考.
還有就是郵件待在佇列的時間是否太長了.

wenchan iT邦新手 5 級 ‧ 2010-07-08 14:10:01 檢舉

目前共有三封都要寄秘魯,而且是不同家,不太可能三家的MAIL SERVER都有問題吧,
郵件待在佇列的時間是否太長了.-->就昨天剛寄一直卡住,今天又寄別家也是秘魯,還是卡著在佇列上,到底是那裡有問題

8
srv
iT邦研究生 1 級 ‧ 2010-07-08 14:47:48
  1. 用別人家的 DNS 協助排除 DNS 問題
    http://www.intodns.com/speedy.com.pe
    http://www.ajaxdns.com/
  2. 用別人家的 Mail Server 協助排除 Mail 問題, 例如利用 Hinet Mail, Gmail
    寄一封試試.
  3. 如果大家都不能寄, 就是對方的問題. 如果大家都可以, 就是你的問題.
12
何必問
iT邦好手 1 級 ‧ 2010-07-08 15:25:29

應該先查詢對方dns record是否正常 再延伸檢查mx /a
進而telnet mail server 25 port

<pre class="c" name="code">Server:  dns.hinet.net
Address:  168.95.1.1

Name:    speedy.com.pe

> set type=mx
> set type=ns
> speedy.com.pe
Server:  dns.hinet.net
Address:  168.95.1.1

Non-authoritative answer:
speedy.com.pe   nameserver = huandoy.tdp.net.pe
speedy.com.pe   nameserver = huascaran.tdp.net.pe

huandoy.tdp.net.pe      internet address = 200.37.224.10
huascaran.tdp.net.pe    internet address = 200.37.195.10

# 以上查得對方dns server是兩台運作

<pre class="c" name="code">
speedy.com.pe   MX preference = 10, mail exchanger = vmx.terra.com //該網域郵件主機位置
speedy.com.pe   nameserver = huascaran.tdp.net.pe
speedy.com.pe   nameserver = huandoy.tdp.net.pe
huascaran.tdp.net.pe    internet address = 200.37.195.10
huandoy.tdp.net.pe      internet address = 200.37.224.10

#透過這兩台該公司所屬dns 查 mx紀錄
得知 mail server 應該為代管 vmx.terra.com

server 切換到 200.37.195.10 對方網域代管之dns server去查 vmx.terra.com 紀錄

<pre class="c" name="code">> set type=a //查詢 a 紀錄
> vmx.terra.com
Server:  [200.37.195.10]
Address:  200.37.195.10

*** [200.37.195.10] can't find vmx.terra.com: Query refused
> set type=mx  //查詢mx紀錄
> speedy.com.pe
Server:  [200.37.195.10]
Address:  200.37.195.10

speedy.com.pe   MX preference = 10, mail exchanger = vmx.terra.com
speedy.com.pe   nameserver = huascaran.tdp.net.pe
speedy.com.pe   nameserver = huandoy.tdp.net.pe
huascaran.tdp.net.pe    internet address = 200.37.195.10
huandoy.tdp.net.pe      internet address = 200.37.224.10
> vmx.terra.com
Server:  [200.37.195.10]
Address:  200.37.195.10

*** [200.37.195.10] can't find vmx.terra.com: Query refused

根據Query refused 結論得知 該主機禁止查詢mx / a 紀錄

簡單說是對方代管dns不給 mx 紀錄
會導致 兩台mail server smtp 25port 無法作 hand-shake

解決:請多試試 flush dns動作 或許對方dns server 異動尚未更新 或者被阻擋查詢(firewall or access-list 導致)

看更多先前的回應...收起先前的回應...
wenchan iT邦新手 5 級 ‧ 2010-07-08 16:11:27 檢舉

hojc提到:
得知 mail server 應該為代管 vmx.terra.com

怎麼看出代管的?另一個terra.com.pe,我依照你的方式去查,如下有查到,但信沒寄出,為什麼呢?

server 208.70.190.30
Default Server: colovale.terra.com
Address: 208.70.190.30

set type=a
pe.vmx.terra.com
Server: colovale.terra.com
Address: 208.70.190.30

Name: pe.vmx.terra.com
Address: 208.84.244.136

wenchan iT邦新手 5 級 ‧ 2010-07-08 16:11:41 檢舉

set type=mx
terra.com.pe
Server: colovale.terra.com
Address: 208.70.190.30

terra.com.pe MX preference = 10, mail exchanger = pe.vmx.terra.com
terra.com.pe nameserver = ns5.terra.com
terra.com.pe nameserver = ns3.terra.com
terra.com.pe nameserver = ns4.terra.com
pe.vmx.terra.com internet address = 208.84.244.136
ns3.terra.com internet address = 208.70.190.28
ns4.terra.com internet address = 208.70.190.29
ns5.terra.com internet address = 208.70.190.30

pe.vmx.terra.com
Server: colovale.terra.com
Address: 208.70.190.30

terra.com
primary name server = dns.terra.com.br
responsible mail addr = sysadm.terra.com.br
serial = 2010070701
refresh = 1800 (30 mins)
retry = 600 (10 mins)
expire = 2419200 (28 days)
default TTL = 900 (15 mins)

何必問 iT邦好手 1 級 ‧ 2010-07-08 22:31:18 檢舉

根據您所提到

因mail一直停留在佇列上寄不出去,mail address是在秘魯speedy.com.pe,也ping不到,nslookup也解析不到ip

我依據您提到的 speedy.com.pe 網域去查其dns 所指向的 dns server
一般而論 ex. abc.com.tw 在 dns 命名上多半會以相同網域名前面多加 ns or 其他字眼
以您提的 speedy.com.pe 卻是解析成 huandoy.tdp.net.pe 和 huascaran.tdp.net.pe (以我茶道來說)
因此我是以經驗來說 一個是.com.pe 一個是.net.pe
其機構型態應該一個是一般公司 另一則為網路公司才是
當然這部份是我的臆測

第二部分
先前一開始的步驟部分我已提到
既然您已查得對方mail server IP
測試smtp 請用telnet pe.vmx.terra.com 25
您可以下 smtp 一些指令

<pre class="c" name="code">ehlo 您公司的網域

以下是我查到的訊息 請您參考

<pre class="c" name="code"><strong>554</strong> 5.7.1 Service unavailable; Client host [*] blocked using blackholes.terra.com.br=127.0.0.2

再依據 RFC 554 錯誤碼
ref: http://rfc.giga.net.tw/rfc2821

554 Transaction failed
(Or, in the case of a connection-opening response, "No SMTP service here")

ayu iT邦好手 5 級 ‧ 2010-07-09 06:27:36 檢舉

[補充解釋一]
speedy.com.pe MX preference = 10, mail exchanger = vmx.terra.com
speedy.com.pe nameserver = huascaran.tdp.net.pe
speedy.com.pe nameserver = huandoy.tdp.net.pe

huascaran.tdp.net.pe 和 huandoy.tdp.net.pe 負責 speedy.com.pe 的
授權解析, 因此向它們查詢 vmx.terra.com 發生 Query refused 是合理的,
基於資安理由, 近幾年都已宣導應限制 Authoritative DNS 的 recursive 查詢.
因此要查詢 vmx.terra.com , 應以負責 terra.com 的 Authoritative DNS
查詢結果為準.

[補充解釋二]
DNS SOA定義裡, 並沒有規定 Authoritative DNS 和 MX Record
必須使用該網域的 hostname , 比方說DNS想要用 everydns 代管,
MX想要用 google-AP , 都是合理的.

raytracy iT邦大神 1 級 ‧ 2010-07-10 02:31:55 檢舉

Ayu 補充得好, 替大家修正了很多不正確的觀念....

ayu iT邦好手 5 級 ‧ 2010-07-12 21:59:42 檢舉

謝謝啦, 由於過去的職務關係, 加上有這方面的權威級高手多次指點, 搭配實務經驗來的.
剛開始連UNIX基本操作都不熟哩!

我要發表回答

立即登入回答