Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 只能在使用SMTP主机的IP时发送电子邮件_C#_Email_Smtp_Ip - Fatal编程技术网

C# 只能在使用SMTP主机的IP时发送电子邮件

C# 只能在使用SMTP主机的IP时发送电子邮件,c#,email,smtp,ip,C#,Email,Smtp,Ip,我有一个恼人的问题: 在VS中调试时发送电子邮件时,它工作正常(我使用的是SmtpClient) 发布到服务器后,我收到以下错误: System.Net.Mail.SmtpException:发送邮件失败。-->System.Net.WebException:无法解析远程名称:“mail.company.co.za” 但是,如果我将smtp主机更改为IP地址,它似乎可以正常工作 我通过在CMD中调用ping mail.company.co.za获得了IP(在服务器上调用时,它找不到地址,但

我有一个恼人的问题:

  • 在VS中调试时发送电子邮件时,它工作正常(我使用的是
    SmtpClient

  • 发布到服务器后,我收到以下错误:

    System.Net.Mail.SmtpException:发送邮件失败。-->System.Net.WebException:无法解析远程名称:“mail.company.co.za”

  • 但是,如果我将smtp主机更改为IP地址,它似乎可以正常工作

  • 我通过在CMD中调用
    ping mail.company.co.za
    获得了IP(在服务器上调用时,它找不到地址,但它可以ping IP

    由于我不确定IP是否是静态的,我不知道仅仅使用物理IP是否安全。为什么服务器不能识别
    mail.company.co.za


    请注意,我正在同一网络上调试和托管应用程序。这向我表明这不是防火墙问题,但可能我错了?

    听起来您的代码工作正常,但您的邮件服务器的DNS设置不正确。您的电脑可以正确查找地址,但邮件服务器无法

    修复这是一个服务器管理问题,而不是编码问题,但如果您没有IT人员为您执行此操作,我建议您在网络设置中查找“DNS服务器”设置,并将设置从PC复制到服务器。Windows倾向于在每个版本中更改这些设置的方式,但对我来说,它是控制面板/网络和共享/以太网/TCPIP/属性

    • 打开控制面板
    • 点击网络和互联网
    • 点击网络和共享中心
    • 在左侧窗格中,单击更改适配器设置
    • 右键单击连接到internet的网络接口,然后选择属性
    • 从列表中选择Internet协议版本4(TCP/IPv4)
    • 单击属性按钮
    • 单击使用以下DNS服务器地址选项

    服务器上的DNS存在问题。错误不在您的软件中。你能解析google.com之类的其他地址吗?@Fildor我能解析其他地址,是的,
    mail.company.co.za
    由一些服务提供商托管谢谢你的回答。你知道我在我的电脑上哪里可以找到这些DNS服务器吗?@Bassie我添加了一个指向某些说明的链接我的笔记本电脑设置为自动获取,但服务器指向某个本地地址(10.0.0.2和10.0.0.3),我不想更改这些地址,因为这些地址是我们用于一些事情的地址。我得和知道这件事的人核实一下