我猜测必须有一个合理的方法来解决我的问题,但我试图得到一些最佳实践的build议来实施。
我最近搬到了一家网页devise公司,我们需要能够欺骗我们正在工作的网站的DNS条目。 但是,我们只想覆盖某些Alogging,但保留其他logging,以便网站似乎正常工作。
即:我们想使“support.abcd.com”在本地解决,但其他一切都要到现场。 这将允许我们devise/演示一个function齐全的网站,只有在本地进行的工作。
我们有一个内部的BIND DNS服务器(9.9.5.dfsg-3)。
根据上面的例子,我的区域文件应该查找“abcd.com”?
编辑:这会工作吗?
IN ns1 abcd.com. IN NS ns1 support.abcd.com. IN A 192.168.1.1 faq.abcd.com. IN A 192.168.1.1 *.abcd.com. IN NS abcd.com <- External?
如果这只是处理重写hostname-> ip查找,那么最容易设置和pipe理的东西(特别是如果您的需求变化很快),开发人员只需在其本地添加相关名称主机文件并离开DNS。
但是,如果您想要使用DNS来执行此操作,请使用BIND作为parsing器服务器,并且您只需要覆盖特定的名称(而不是整个区域),我相信您将需要使用响应策略区域(RPZ)function。 这可能与使用视图一起完成,以便使这些更改仅影响特定的客户端。
我已经包含了一个例子,可以做你特别要求的东西,但看看上面的链接文档中的所有其他选项,你可以重写的东西和更完整的例子。
options { ... response-policy { zone "development-overrides"; }; }; ... zone "development-overrides" {type master; file "master/development-overrides"; allow-query {none;}; };
引用的区域文件具有正常的主文件语法,但语义是RPZ特定的(请阅读RPZ文档 !):
$TTL 1H @ SOA LOCALHOST. named-mgr.example.com (1 1h 15m 30d 2h) NS LOCALHOST. support.example.com A 192.168.1.1 faq.example.com A 192.168.1.1
可以修改开发人员计算机上的主机文件(UNIX / Linux上的/etc/hosts
和C:\windows\system32\drivers\etc\hosts
),或者在DNS上使用视图设置,定义一个带有子网应该是“欺骗”,并在视图内使用“匹配客户端”来匹配这些客户端。
关于你的例子,这是一个CNAME字段,而不是NS字段。