邮件 - 服务器名称问题?

邮件 - 服务器名称问题?

我前段时间问过一个问题使用自定义发件人:字段发送电子邮件 但是,仍然无法让 exim4 运行。它确实发送电子邮件,但无法接收任何电子邮件。我很确定这可能是由于邮件服务器名称和 MX 配置造成的。

在我的控制面板中,我可以设置 MX 的首选项、TTL 和邮件服务器值。我将前两个保留为默认值(0, 6400),并将邮件服务器设置为“url.com”(我用“url”名称替换了我的域名)。

但是当我给自己发送电子邮件时,我得到:

Unroutable address

在主日志中。当我从 Linux 控制台“host -t mx url.com”运行时,我得到:

;; connection timed out; no servers could be reached

我的MX好像一点效果都没有?我该怎么做才能让它发挥作用?

我对这个主题非常菜鸟,甚至不确定“邮件服务器”指的是什么?这是我通过命令“host”获得的名称,或者可能是“host -f”,或者可能是“host -i”,或者甚至可能是其他名称?我真的很困惑。 :/

这是 /etc/exim4/update-exim4.conf.conf 内容:

# /etc/exim4/update-exim4.conf.conf
#
# Edit this file and /etc/mailname by hand and execute update-exim4.conf
# yourself or use 'dpkg-reconfigure exim4-config'
#
# Please note that this is _not_ a dpkg-conffile and that automatic changes
# to this file might happen. The code handling this will honor your local
# changes, so this is usually fine, but will break local schemes that mess
# around with multiple versions of the file.
#
# update-exim4.conf uses this file to determine variable values to generate
# exim configuration macros for the configuration file.
#
# Most settings found in here do have corresponding questions in the
# Debconf configuration, but not all of them.
#
# This is a Debian specific file

dc_eximconfig_configtype='internet'
dc_other_hostnames='url.com; mail.url.com; url; localhost;  localhost.localdomain'
dc_local_interfaces='127.0.0.1; my_ip'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost=''
CFILEMODE='644'
dc_use_split_config='true'
dc_hide_mailname=''
dc_mailname_in_oh='true'
dc_localdelivery='maildir_home'

无论如何,我将我的域名替换为 url,将 ip 替换为 my_ip。

/etc/email-addresses 非常短:

root: [email protected]

和 /etc/mailname

url.com

更新:当我在 Windows 上执行此操作时:

nslookup -type=mx url.com

我得到类似的东西:

Server:  UnKnown
Address:  probably_my_internet_provider's_gate_ip

Non-authoritative answer
url.com  MX preference = 0, mail exchanger = url.com

更新2: 现在我真的很困惑。我尝试运行“dig mx url.com”和“host -t mx url.com”另一个邮件 Linux 服务器(不是我的),似乎没问题,例如最后一个结果是:

url.com mail is handled by 0 url.com

但是我的电子邮件在哪里?我在 ~/Maildir 中看不到任何内容。当我运行“mail”时,我收到消息“没有 root 的邮件”。那么它有效,还是无效……或者什么?

更新 3:这是路由问题吗? 现在我可以看到,当我尝试从以下地址发送电子邮件时[电子邮件受保护],它会失败并显示以下消息:

“无法路由的地址”

关于[电子邮件受保护]地址(因此它不是目标“TO”地址,而是“FROM”地址)。它以前没有发生过(比如说一个月前),所以我可能搞乱了一些配置。 :/

当我这样做时,正如一些网络教程的建议:

exim4 -d -bt mail

我明白了很多不同的“路由器”(我什至不确定我是否正确理解它们,尽管我已经阅读了 exim4 文档中的一节),具体来说:

  • hubbed_hosts 路由器(“路由器跳过:域不匹配”)
  • dnslookup_relay_to_domains 路由器(“路由器已跳过:域不匹配”)
  • dnslookup 路由器(“路由器已跳过:域不匹配”)
  • real_local 路由器(“跳过路由器:前缀不匹配”)
  • system_aliases 路由器(“system_aliases 路由器拒绝[电子邮件受保护]”)
  • userforward router(“跳过路由器:文件检查”)
  • procmail 路由器(“路由器跳过:文件检查”)
  • maildrop 路由器(“路由器跳过:文件检查”)
  • lowuid_aliases router(“路由器跳过:条件失败”)
  • local_user 路由器(见下文):

最后一篇以相当长的响应结束:

--------> local_user router <--------
local_part=mail domain=url.com
checking domains
cached yes match for +local_domains
cached lookup data = NULL
url.com in "+local_domains"? yes (matched "+local_domains" - cached)
checking local_parts
mail in "! root"? yes (end of list)
checking for local user
seeking password data for user "mail": using cached result
getpwnam() succeeded uid=8 gid=8
R: local_user for [email protected]
calling local_user router
local_user router called for [email protected]
  domain = url.com
set transport maildir_home
    queued for maildir_home transport: local_part = mail
domain = url.com
  errors_to=NULL
  domain_data=NULL localpart_data=NULL
routed by local_user router
  envelope to: [email protected]
  transport: maildir_home
  [email protected]
  router = local_user, transport = maildir_home
search_tidyup called
>>>>>>>>>>>>>>>> Exim pid=31821 terminating with rc=0 >>>>>>>>>>>>>>>>

我现在想知道,为什么它使用“[电子邮件受保护]“, 不是 ”[电子邮件受保护]“这里?这正常吗?

最重要的是:在我的情况下,即当我尝试使用(现在)“邮件”命令从命令行向外部电子邮件地址发送消息时,我应该对哪一个路由器感兴趣?

答案1

解决了。感谢您的所有建议。问题与名称服务器有关,毕竟它们现在可以正确解析名称。

相关内容