软件注册站
热情软件屋

 
如何从收信人的E-mail地址中得知邮件服务器IP地址
编号: QA004494    
建立日期: 2001年12月3日 最后修改日期: 2001年12月3日
所属类别: Delphi - Internet编程
   
    我最近想开发一个邮件服务器软件, 但是有一个难题, 就是不如何从收信人的E-mail地址中得知邮件服务器IP地址。有两个E-mail地址一个是abc@163.net,一个是abc@yahoo.com.cn,为什么Telnet 163.net 25可以连接到Telnet yahoo.com.cn就不行了,如何用Delphi编程得知abc@yahoo.com.cn的邮件服务器地址呢?(小叶)
   
    接收邮件的服务器和E-MAIL的域名不一定相同。你应该查询服务器的DNS记录,看看其中MX项是什么,MX项指明该域名用来接收邮件的服务器是什么。知道了接收邮件的服务器,你就可以使用SMTP协议发送信给它了。
    查询MX纪录可以使用nslookup。例如下面的例子查询china-askpro.com的MX纪录:
    H:\Documents and Settings\Administrator>nslookup
    *** Can't find server name for address 192.168.8.1: Non-existent domain
    Default Server: dns.seed.net.tw
    Address: 139.175.55.244
    
    > set q=mx
    > china-askpro.com
    Server: dns.seed.net.tw
    Address: 139.175.55.244
    
    china-askpro.com MX preference = 10, mail exchanger = mail.china-askpro.c
    om
    china-askpro.com nameserver = dns2.hichina.com
    china-askpro.com nameserver = dns1.hichina.com
    mail.china-askpro.com internet address = 216.55.180.187
    dns2.hichina.com internet address = 202.106.169.100
    dns1.hichina.com internet address = 218.30.103.50
    编程查询可以参考QA003593 "当知道目的邮件地址后,如何使程序找到对应的目的服务器的IP地址或域名"

    

此问题由李海回答。

附加关键字:编程, 源程序, programming, source code, Delphi, VCL, Borland, Internet编程, INET, www, internet, ie

   
 
把这个问题推荐给朋友
   
 
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio