绑定 DNS 服务器:仅重定向子域名

绑定 DNS 服务器:仅重定向子域名

我们有一些域(mydom.tld),在 svn 子域中我们有 Subversion 服务器。

该服务器位于主办公室,必须从办公室内部和外部进行访问。

因此,现在我们每次进入办公室时都必须编辑 /etc/hosts 文件,并在外出时重新编辑以使其正常工作。

我已经配置了 DNS 服务器(Ubuntu 下的 bind9),以便我们可以按照上面描述的方式使用它,但问题是它管理整个 mydom.tld 域,而我只希望它管理子域。

期望的行为:

  • mydom.tld -> 没有答案
  • asdf.mydom.tld -> 没有答案
  • svn.mydom.tld-> 192.168.1.X

有人可以根据文件 /etc/bind/named.conf.local 和类似文件给出解决方案吗?

答案1

您可以使用看法与此绑定的功能named.conf

view "internal" {
 match-clients { 192.168.1.0/24; }; // your network
  recursion yes;
  // required zone for recursive queries
  zone "." {
   type hint;
   file "root.servers";
  };
  zone "sub.mydom.tld" {
   type master;
   // private zone file including local hosts
   file "view/master.sub.mydom.tld.internal";
  };
  // required local host domain
  zone "localhost" in{
   type master;
   file "master.localhost";
   allow-update{none;};
  };
  // localhost reverse map
  zone "0.0.127.in-addr.arpa" in{
   type master;
   file "localhost.rev";
   allow-update{none;};
  };
}; // end view

// external hosts view
view "external" {
 match-clients {"any"; }; // all other hosts
  // recursion not supported
  recursion no;
 zone "mydom.tld" {
   type master;
     // only public hosts
   file "view/master.example.com.external";
  };
}; // end view

答案2

得不到答案mydom.tld很容易。我怀疑你想要的是它给出正确的回答。

IE

在办公室外,你会得到这样的信息:

  • mydom.tld-> 10.0.0.1
  • asdf.mydom.tld->NXDOMAIN
  • svn.mydom.tld-> 10.0.0.2

在里面,你会看到这个:

  • mydom.tld-> 10.0.0.1
  • asdf.mydom.tld->NXDOMAIN
  • svn.mydom.tld-> 192.168.1.1

我认为最简单的方法是将生产绑定配置复制到 Office Bind 服务器并只编辑该条目。您可以在每日 cron 作业中设置它,以便对生产的任何更改都会在 24 小时后反映在办公室中。(详细信息由您决定 - 每小时 cron 作业、SVN 签出等)

如果您没有在生产中运行 Bind 或者您正在使用第三方服务(例如注册商的 DNS 服务),那么您可以改用区域传输。(AXFR

相关内容