题 专用网络的顶级域/域后缀?


在我们的办公室,我们有一个局域网,内部采用纯DNS设置,客户端全部命名为 whatever.lan。我还有一个VMware环境,在虚拟机专用网络上,我将虚拟机命名为 whatever.vm

目前,我们的局域网无法访问虚拟机的这个网络,但我们正在建立一个生产网络来迁移这些虚拟机,  可以从LAN访问。因此,我们正试图在我们正在建立的这个新网络上为客户申请域名后缀/ TLD的约定,但我们无法想出一个好的,因为 .vm.local 和 .lan 在我们的环境中都有现成的内涵。

那么,在这种情况下最好的做法是什么?是否有一个TLD或域名列表可以安全地用于纯粹的内部网络?


103
2018-06-01 21:47




不要使用.local。特别是如果你有任何Apple客户。 - RainyRat
由于这个原因,.test被搁置: secure.wikimedia.org/wikipedia/en/wiki/.test - CWSpear
@CWSpear那不是实际的 原因  .test 保留,虽然它确实使它成为一个安全的域使用 测试 不会连接到互联网的网络。 - voretaq7
@Otto最佳实践将要求您获得“真实”域名(根据ICANN认可的TLD)并为您的本地内容创建一个子域名(例如注册) mydomain.com,代表 internal.mydomain.com 到内部NS,并正确配置水平分割DNS(BIND中的“视图”),这样就不会泄漏内部名称/地址到Internet。它不像TLD /伪TLD那么漂亮,但它不太容易破坏,因为它在你的控制之下。 - voretaq7
然而:不要使用已用于面向公众的生产服务的真实域名。两者之间允许各种交互 www.example.com 和 *.internal.example.com 两者之间是不允许的 www.example.com 和 *.example.net,最值得注意的是跨站点cookie设置。在同一域上运行内部和外部服务会增加公共服务受损会给内部服务带来某些影响的风险,相反,不安全的内部服务可能会引发内部滥用外部服务。 - bobince


答案:


不要使用发明的TLD。如果ICANN委托它,您将遇到大麻烦。如果您与恰好使用相同虚拟TLD的其他组织合并,则同样如此。这就是全球唯一域名首选的原因。

标准, RFC 2606 保留名称的示例,文档,测试,但没有任何一般用途,并且有充分的理由:今天,获得一个真实和独特的域名,没有充分的理由使用虚拟域名是如此简单和便宜。

所以,买 iamthebest.org 并用它来命名你的设备。


85
2018-06-02 07:39



为了完全安全,我会将所有内容放在我公司域名的子域中,例如local.company.org,vm.company.org等。 - drybjed
+1这个。据推测,您的公司已经拥有一个域名。只需从中创建一个子域。它不必在LAN外可见/可解析。 - Dan Carley
好吧,即使是非常优秀的律师,也无法通过调用商标声称“.lan”或“.local”。并且“它只是内部”的论点非常薄弱:组织合并,与合作伙伴组织建立虚拟专用网络,并且只是犯错,使“私人”名称泄露。 - bortzmeyer
我唯一的优点是你不能真正“买”一个域:你只能租一个。一些bozo忘记支付账单(这在一些备受瞩目的案件中已经发生),而且你的配置的核心部分也会随机擅自占用。那么你使用你公司的域名?执行官决定重新命名或被买断,而你却被旧名称所困扰。 .local曾经运作得很好,但它现在已经被某家公司抢先一步拒绝好玩。我真的很喜欢看到.lan或.internal之类的东西正式保留用于此目的,但在此之前这是最好的选择。 - Joel Coel
同意@Joel Coel,你是一个租客,仅此而已。应该有两个保留的TLD名称 仅限内部使用 在公共场合应该被视为无效,公共网络无法访问。一个名称用于内部家庭使用,第二个名称用于内部商业用途。两者都被认为是“私有TLD”,就像我们拥有不可路由的“私有子网”(192.168.x.x和同类)一样。这允许家庭用户除了被强制进入.local和mDNS之外还做一些事情。同样适用于在没有域名的NAT后运行内部LAN的小型企业。 - Avery Payne


将您公司注册域的子域用于您不希望在Internet上使用其名称的内部计算机。 (然后,当然,只在您的内部DNS服务器上托管这些名称。)以下是虚构示例公司的一些示例。

面向Internet的服务器:
www.example.com
mail.example.com
dns1.example.com

内部机器:
dc1.corp.example.com
dns1.corp.example.com
client1.corp.example.com

我使用“corp”来表示此子域描述了内部企业网络上的计算机,但您可以使用此处所需的任何内容,例如“internal”:client1.internal.example.com。

请记住,DNS区域和子域也不必与您的网络编号方案保持一致。例如,我的公司有37个位置,每个位置都有自己的子网,但所有位置都使用相同的(内部)域名。相反,您可能只有一个或几个子网,但有许多对等内部域或子域级别可帮助您组织计算机。


46
2018-06-02 13:03





使用内部子域的另一个好处是:巧妙地使用搜索后缀而只使用主机名而不是FQDN,您可以构建在开发,QA和生产中都有效的配置文件。

例如,您始终在配置文件中使用“database = dbserv1”。

在开发服务器上,将搜索后缀设置为“dev.example.com” =>使用的数据库服务器:dbserv1.dev.example.com

在QA服务器上,将搜索后缀设置为“qa.example.com” =>使用的数据库服务器:dbserv1.qa.example.com

在生产服务器上,将搜索后缀设置为“example.com” =>使用的数据库服务器:dbserv1.example.com

这样,您可以在每个环境中使用相同的设置。


29
2018-06-04 12:00



那太棒了。 - Chris Magnuson
直到某人错误地将他们的工作站配置为生产搜索后缀来测试问题,然后无意中更新了一堆生产记录。 - Joel Coel
这非常粗糙,SRV记录非常易于解析,可以放在任何区域内,这样同一个数据库服务器就可以服务多个区域。在这种情况下,一些代码将填充配置文件中的值。您可以使用数据库的名称作为SRV密钥,并使用指向主机名的值。我永远不会依赖搜索后缀。你也可以使用TXT记录获得相当的创意,如果它们是秘密,可以用aes-256加密(然后是base64编码)值填充它们。您可以将TXT记录用于各种事物。 - figtrap
看,但我想要的是example.com,example.dev和example.stg。最后2个只在专用网络上,我可以设置本地DNS服务器进行零配置访问吗?仍然在这里为所有网站使用类似的配置,只需将更改移动到tld。容易使用主机文件的.dev,但零配置... - DigitalDesignDj


如前所述,您不应将未注册的TLD用于您的专用网络。 特别是现在ICANN几乎允许任何人注册新的TLD。 然后,您应该使用真实的域名

另一方面, RFC 1918 清楚了:

间接引用此类地址   应该包含在   企业。突出的例子   引用是DNS资源记录   和其他信息   内部私人地址。   因此,您的名称服务器还应使用视图来防止私人记录在Internet上传输。


10
2018-06-02 12:41





我们倾向于认为主机与物理虚拟命名没有区别 - 事实上,我们已经从物理层抽象出主机配置(软件)。

因此,我们购买硬件项目,并在它们之上创建主机项目(并使用简单的关系在我们的文档中显示)。

目的是当主机存在时,DNS不应该是决定因素 - 因为我们有机器从一个空间移动到下一个空间 - 例如,低性能的webapp不需要消耗昂贵的CPU周期 - 虚拟化它,并保留其命名方案,一切都继续工作。


8
2018-06-01 21:52





我不确定这会对您有所帮助,但对于我的AWS账户中的内部DNS,我使用了 .aws 作为tld,它似乎完美无缺。

我知道有一些顶级域名你不应该使用,但除此之外,我不认为它太严格。

我在一些大公司工作,他们将使用身份验证源作为TLD,这意味着如果它是MS / Windows服务器,使用Active Directory作为身份验证源,它将是 .ad,还有其他人会 .ldap (为什么他们不只是使用相同的源?或者从同一个目录服务复制的服务器?我不知道,当我到达那里时就像那样)

祝好运


-4
2018-02-29 14:28



亚马逊现已注册 .aws 作为TLD,您最终可能会开始遇到问题: nic.aws - Mark McKinstry
有关信息,.aws最近注册为“2016年3月25日”=> newgtlds.icann.org/en/program-status/delegated-strings - Bruno Adelé
虽然我不认为使用假冒TLD是一件大事,但至少不是整个系统被关闭并使用代理与整个互联网进行通信,“。aws”是一个非常糟糕的选择,除非你'不在AWS!有太多可想到的场景,您将无法再与AWS通信。 - figtrap