我想知道大公司究竟如何管理其公共服务器使用的所有 IP 地址,特别是在设置正确的 PTR 记录方面。
这一点非常重要,例如,当从生产环境发送大量电子邮件时,因为接收邮件服务器很可能会执行FCrDNS 检查查看 PTR 和 HELO/EHLO 是否匹配。如果不匹配,您几乎肯定会被标记为垃圾邮件。
我自己发现,Facebook 和 Google 这样做的方法是,为他们拥有的每个 IP 地址分配三级 A 记录(看起来是这样),然后在相应的 PTR 记录中使用它。一个例子就是 Google 著名的地址8.8.8.8
,它被映射到google-public-dns-a.google.com
。另一个 Google IP,173.194.113.127
被映射到fra02s22-in-f31.1e100.net
(Google 管理员,这是一个不错的域名)。
使用三级子域名似乎是最合乎逻辑的,因为您可以在 SSL/TLS 应用程序中为您的域名使用通配符证书。
就我而言,我考虑使用类似于正如评论中提到的,主机名中不允许使用下划线,这使得这种方法不可行。_srv_foobar.mydomain.tld
我们服务器的方案来分配子域名。以下划线开头表示此子域名用于管理目的,例如_spf.microsoft.com
或_netblocks.google.com
。这是一种有效且合理的方法吗?
为每个使用的 IP 地址创建一条 A 记录是否是一种常见做法?是否有首选或应避免的命名方案?我很想听听管理过数十、数百甚至数千个 IP 地址的人对此话题的看法。谢谢!
答案1
将此标记为主要基于意见,但无论如何,这里有一些注释。以下意见反映了 DNS 操作实践美索不达米亚规模。
我很想向那些管理过几十、几百甚至几千个 IP 地址的人了解这个话题。
你好。
为您使用的每个 IP 地址创建 A 记录是否是一种常见的做法?
有些公司可能会这样做,但那有点过头了。通常情况下,会将非常大的 IP 空间块分配给某个区域,以分配给客户(我们这里说的远不止 /24),并且作为准备使用该网络的一部分,会预先生成正向和反向记录。从那时起,无论该 IP 空间的片段在客户之间被调换了多少次,它都在那里,随时可用。
除此之外,我们通常不会在 DNS 中预先分配 IP 空间。这很麻烦,而且会不必要地增加您的资源消耗。从长远来看,我们的 BIND 辅助服务器需要十多分钟才能将所有记录加载到内存中并开始提供查询。如果我们要为全部我们的 IP 空间,而不仅仅是客户的东西,我甚至不想想象情况会变得多么糟糕。
附注:如果您的 DNS 软件支持 IP 范围的合成正向和反向记录,您可能需要探索这一点。BIND 并未实现这一点。
是否存在优选的命名方案或应避免的命名方案?
使用最适合您需求的方法,但通常使用命名约定来指示 IP 地址所分配的物理区域是个好主意。一目了然的识别使您的员工更容易知道流量来自何处,无论他们是现场工程师还是滥用部门的人员。您的公司规模越大,业务部门越多,您从中获得的价值就越大。