什么时候应该使用.local?

所以,在我的时间里,我已经成立了一些Win Servs,当有一个路由器从外部networking中分离出我的内部时,我总是做这个.local的事情。 现在我第一次设置了一个* nix盒子,这个概念还适用吗? 我是否还希望我的FQDN( /etc/hostname )在我的networking内部为我的所有机器(混合:linux服务器,win工作站)显示.local或.com。

这个问题来自于Active Directory始终保持我手中的每一步,现在我正在手动设置DNS机器。

正如@Zoredache指出.local命名空间没有官方的地位(最接近你会发现.localhost ,在RFC 2606中定义和保留)。 因此, .local永远不能使用,因为ICANN有朝一日可以将TLD分配给某个人。
正确的做法是注册一个像example.com一样的域名,并在其下面(可能位于internal.example.com下)分配主机名称。

这就是说,如果你想使用.local.lan作为你的内部主机的顶级域名,你肯定不会孤单,在这一点上任何人试图篡夺.local.lan.private是相当低的:他们如此普遍地使用,试图纠正几十年的不良情况是不值得的。
但请注意,这些机器和名称不应该从公共互联网(或以任何方式暴露)公共互联网到达。 这是一个较小的罪过,类似于在你的公共接口上发送RFC-1918networking地址,像我这样的人会在公众场合不满意地皱着眉头,嘲笑你的私人networking信息泄漏。


另外请注意,* nix机器在Active Directory中并没有真正的“域”概念 – 最接近的模拟是NIS域,它不像AD那样绑定到DNS。
一个裸* nix系统实际上只知道它自己的个人主机名,它不必是一个完全合格的域名( alicealice.wonder.lan一样有效),但是按照惯例,许多pipe理员使用完全合格的域名机器作为主机名。
这使你不能使用像.local这样的“非官方”域名,但是与拥有一个有效的,分配的完全合格的域名作为你系统的主机名相比,恕我直言不那么“正确”。

它还没有正式的,但它可能被赋予其无处不在:.local用于组播DNS中的链接本地名称parsing :

本文档指定了DNS顶级域名“.local”。 是一个具有特殊语义的特殊域,即以“.local”结尾的任何完全限定的名称。 是链路本地的,并且这个域内的名字只在它们始发的链路上有意义。 这与169.254 / 16前缀中的IPv4地址或FE80 :: / 10前缀中的IPv6地址类似,这些地址是链路本地的,仅在其起源的链路上有意义。

你会发现两个苹果产品和运行Avahi的现代Linux发行版将以这种方式使用.local零configuration。 在我自己的networking上,我利用了这一点,并停止维护一个本地DNS区域,因为我们几乎完全使用Linux和操作系统X- 卓悦的Windows填补了Windows机器的最后一个空白。

如果您需要实际维护一个DNS区域,我build议您创build一个您已经注册的域名的子域名(例如lan.example.com),并使用水平分割DNS在内部parsing本地域名。 即使没有互联网草案引用,也很难certificateWindows继续推荐使用.local域名。