内部networking与bind9 dns; 通过子域访问服务器

我在我的家庭networking下的一个Ubuntu(12.10)盒子上使用bind9来设置DNS,因为我的路由器不支持DD-WRT或者它自己的DNS。

我为test.mydomain.net设置了一个“mydomain.net”的区域,并将其指向192.168.1.6(相关机器的静态分配的ip)。

我希望能够通过使用http://test/来访问(通过HTTP /浏览器,主要是)这台机器,而不必键入mydomain.net部分。

我有一切正确configuration,因为我可以成功访问test.mydomain.net并获得正确的Apache响应,但我找不到任何特定的设置,只允许我访问http://test/

这是我的named.conf.local文件

 zone "mydomain.net" { type master; file "/etc/bind/db.mydomain.net"; }; zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/db.192"; }; 

和我的db.mydomain.net区域文件

 ; BIND data file for local ; $TTL 604800 @ IN SOA mydomain.net. tomprogramming.gmail.com. ( 2013052603 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL IN A 192.168.1.6 ; @ IN NS ns.mydomain.net. @ IN A 192.168.1.6 @ IN AAAA ::1 ns IN A 192.168.1.6 test IN A 192.168.1.6 

要使用短主机名而不是完全限定的域名来引用主机,只需在客户端上configurationparsing器即可search默认域。 在Unix / Linux客户端上,你可以通过放置

 search mydomain.net 

/etc/resolv.conf文件中。

请注意, resolv.conf通常由DHCP或您的操作系统的networkingconfiguration( /etc/network/interfaces或NetworkManager)自动pipe理。 如果是这种情况,则对/etc/resolv.conf所做的任何更改都可能会被覆盖。

这实际上是您的DHCP设置的一个问题。

您需要configurationdd-wrt的DHCP服务器以将mydomain.net域推送到客户端。

这样,当你尝试访问http://test/ dns查找客户端所做的是test.mydomain.net

如果你有静态IP的客户端,那么你需要在他们的DNS客户端设置中将search域configuration为mydomain.net