Dns 如何检查子域是否准备好使用?

Dns 如何检查子域是否准备好使用?,dns,subdomain,Dns,Subdomain,我正在为我服务的每个用户创建一个子域,但传播需要不同的时间…有时从PC上传播速度更快,有时从站点所在的服务器上传播速度更快。。。但是我需要在任何地方都可以的时候发送一封电子邮件。。可能吗 您可以使用dig和+trace选项从根名称服务器进行跟踪,例如: $ dig sub.example.com +trace 这可能是一个很好的指标,但也可以检查SOA最小值,这可以为您提供一个关于如果是新记录,传播可能需要的估计时间的线索。对于现有子域,它将取决于定义的TTL @ IN SOA maste

我正在为我服务的每个用户创建一个子域,但传播需要不同的时间…有时从PC上传播速度更快,有时从站点所在的服务器上传播速度更快。。。但是我需要在任何地方都可以的时候发送一封电子邮件。。可能吗

您可以使用
dig
+trace
选项从根名称服务器进行跟踪,例如:

$ dig sub.example.com +trace
这可能是一个很好的指标,但也可以检查
SOA最小值
,这可以为您提供一个关于如果是新记录,传播可能需要的估计时间的线索。对于现有子域,它将取决于定义的TTL

@   IN SOA master.example.com. hostmaster.example.com. (
    2017030300 ; serial
    3600       ; refresh
    1800       ; retry
    604800     ; expire
    600 )      ; ttl a.k.a. MINIMUM
来自/

NXDOMAIN(不存在域)响应的TTL根据SOA记录的最小字段和SOA本身的TTL中的最小值设置,并指示解析程序可以缓存否定答案的时间


dig+trace
不使用解析器,因此不需要检查
SOA最小值。此方法显示哪些服务器是子域的权威服务器,以及它们有哪些记录,但如果子域在任何地方都可用,则不会实际显示这些服务器。这取决于使用的解析程序(不使用+跟踪和SOA最小值也不能保证记录传播。我认为唯一的方法是从相关位置(服务器和客户端计算机)进行检查,这并不意味着“无处不在”但是它比
dig+trace
更好,
+trace
选项变得有用,因为根据输出,您可以找到差异和解析程序更新/刷新所需的剩余时间,从而返回所需的记录,而不是仅仅猜测您是对的,您将能够计算解析的时间er将再次询问权威服务器,但只有当解析器已经询问并缓存了NXDOMAIN时才是如此。但如果它没有询问他们怎么办?您将等待10分钟,等待可能已经发生的事情。而且您仍然没有检查记录是否可用,您只是猜测时间。在我看来,因为您将等待,只需等待10分钟,根本不运行+trace和SOA检查,等待10分钟,然后检查记录是否可用并发送邮件。
+trace
将在每一步只使用一个任意名称服务器,因此它远未回答“何时从任何地方可用”,这几乎是不可能的。“随时随地可用”的定义几乎无法证明。只需在TTL/Miminum值后发送电子邮件,并在其中添加一句话,如“几小时/几天后,您的域名将在任何地方完全可见”。