全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2144
推到 Plurk!
推到 Facebook!

如何得知收信者 SMTPServer 的正確 IP 位址?

答題得分者是:tender
Londer
一般會員


發表:5
回覆:32
積分:7
註冊:2003-01-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-08 15:42:36 IP:218.187.xxx.xxx 未訂閱
請教各位先進,小弟目前在練習寫一個 MailServer 軟體,碰到一個很大的問題,就是在轉信時,MailServer 要如何判斷收信者正確的 SMTPServer 位址呢?例如要轉寄一封信給 abc@pchome.com.tw,可是 pchome.com.tw 並不是它正確的 SMTPServer 位址,它正確的位址可能是 ms1.pchome.com.tw 或 ms2.pchome.com.tw,甚至是 msa.pchome.com.tw 或 msw.pchome.com.tw 等,而像這種情形除了一個一個去試之外,有沒有更好更快的方法可以得知 abc 這個人的正確 SMTPServer 的位址呢?望請各位先進指點一下,謝謝各位!
yckuo
高階會員


發表:55
回覆:389
積分:238
註冊:2003-03-07

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-03-10 10:47:42 IP:61.219.xxx.xxx 未訂閱
您好: 您必需將 pchome.com.tw 拿來向 DNS 查詢,取得 MX 記錄, MX 記錄有優先順序,您必需依照優先順序連接 Mail Server 若無法連上再向下一台連接..;若該 Domain 查不 MX 記錄的 就是直接連上該台主機!! 以下是在 win 下 dos 視窗查詢的範例: c:\>nslookup > set type=mx > pchome.com.tw Server: dns.hinet.net Address: 168.95.1.1 Non-authoritative answer: pchome.com.tw preference = 10, mail exchanger = mx.pchome.com.tw Authoritative answers can be found from: pchome.com.tw nameserver = dns.pchome.com.tw pchome.com.tw nameserver = ns3.pchome.com.tw pchome.com.tw nameserver = eagle.pchome.com.tw pchome.com.tw nameserver = tiger.pchome.com.tw mx.pchome.com.tw internet address = 211.20.188.150 dns.pchome.com.tw internet address = 210.59.230.85 ns3.pchome.com.tw internet address = 210.244.29.182 eagle.pchome.com.tw internet address = 210.59.230.88 tiger.pchome.com.tw internet address = 210.59.230.89 > exit 如上可得知 pchome 的 MX 記錄是對映給 mx.pchome.com.tw ip 是 211.20.188.150 優先權值是 10 (數字越小,優先權越高) 且只有該筆 MX 記錄,所以就是直接連往該台主機!! 在 UNIX 上可以使用 res_search(....) 來查詢, c builder 上我不曉 function 變成啥名了,或有那個元件可達成此事!! 僅提供觀念和方向!! yckuo
------
yckuo
Londer
一般會員


發表:5
回覆:32
積分:7
註冊:2003-01-08

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-03-14 17:50:58 IP:211.23.xxx.xxx 未訂閱
引言: 您好: 您必需將 pchome.com.tw 拿來向 DNS 查詢,取得 MX 記錄, MX 記錄有優先順序,您必需依照優先順序連接 Mail Server 若無法連上再向下一台連接..;若該 Domain 查不 MX 記錄的 就是直接連上該台主機!! 以下是在 win 下 dos 視窗查詢的範例: c:\>nslookup > set type=mx > pchome.com.tw Server: dns.hinet.net Address: 168.95.1.1 Non-authoritative answer: pchome.com.tw preference = 10, mail exchanger = mx.pchome.com.tw Authoritative answers can be found from: pchome.com.tw nameserver = dns.pchome.com.tw pchome.com.tw nameserver = ns3.pchome.com.tw pchome.com.tw nameserver = eagle.pchome.com.tw pchome.com.tw nameserver = tiger.pchome.com.tw mx.pchome.com.tw internet address = 211.20.188.150 dns.pchome.com.tw internet address = 210.59.230.85 ns3.pchome.com.tw internet address = 210.244.29.182 eagle.pchome.com.tw internet address = 210.59.230.88 tiger.pchome.com.tw internet address = 210.59.230.89 > exit 如上可得知 pchome 的 MX 記錄是對映給 mx.pchome.com.tw ip 是 211.20.188.150 優先權值是 10 (數字越小,優先權越高) 且只有該筆 MX 記錄,所以就是直接連往該台主機!! 在 UNIX 上可以使用 res_search(....) 來查詢, c builder 上我不曉 function 變成啥名了,或有那個元件可達成此事!! 僅提供觀念和方向!! yckuo
感謝 yckuo 的回答,不過我在 DOS 模下式無法執行 nslookup 耶!搜尋了整台電腦也找不到 nslookup.exe 這個檔,請問是不是要另外安裝呢?
yckuo
高階會員


發表:55
回覆:389
積分:238
註冊:2003-03-07

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-03-19 14:46:55 IP:61.221.xxx.xxx 未訂閱
Londer 你好: 我說的 nslookup.exe 在 win2k 上是在 c:\winnt\system32 下面,若是 95,98 你可能得找一下相似的名子看看,很抱歉手邊沒有 其它的系統可看 nslookup 放在那,或是啥名子.. yckuo
------
yckuo
Londer
一般會員


發表:5
回覆:32
積分:7
註冊:2003-01-08

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-03-24 17:55:34 IP:211.23.xxx.xxx 未訂閱
看樣子,好像要直接連線到 Domain Name Server 上去查詢才行囉!可是要如何才能連上 DNS 查呢?例如要連到 Hinet 的 168.95.1.1 上頭去查的話,請教各位前輩應該要連哪個 Port 才對呢?
tender
初階會員


發表:23
回覆:90
積分:37
註冊:2002-09-26

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-03-29 20:38:45 IP:61.59.xxx.xxx 未訂閱
DNS port :53
tender
初階會員


發表:23
回覆:90
積分:37
註冊:2002-09-26

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-03-29 21:04:52 IP:211.75.xxx.xxx 未訂閱
Londer
一般會員


發表:5
回覆:32
積分:7
註冊:2003-01-08

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-03-31 10:16:26 IP:211.23.xxx.xxx 未訂閱
引言: 我已將範例上傳 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=27786
沒錯,這就是我要的!非常謝謝 tender 大大的無私分享,小弟感激不盡 ^_^
系統時間:2024-03-29 21:03:55
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!