我有一个网络服务器(使用静态IP 192.168.1.5
),我希望我的本地网络上的机器能够在不修改的情况下访问它 /etc/hosts
(或Windows / OSX的等效文件)。我的路由器了
Primary DNS server 192.168.1.5
Secondary DNS server 8.8.8.8 (Google's public DNS).
Nginx在外部设置为服务器网站
*.example.com
在内部,我想要
*.example.local
指向服务器。
我的网络服务器安装了BIND9,但我不确定设置。我经历过各种矛盾的教程,所以我的大多数设置都被破坏了。我已经删除了我很困惑的线条。
我看过的教程是 http://tech.surveypoint.com/blog/installing-a-local-dns-server-behind-a-hardware-router/ 和 http://ubuntuforums.org/showthread.php?t=236093 。他们在应该放什么方面大不相同 /etc/bind/zones/db.example.local
和 /etc/bind/zones/db.192
所以我把下面的冲突线留下了。有人可以建议正确的线条来表达我的上述行为(即 *.example.local
指向 192.168.1.5
)?
/etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.5
netmask 255.255.255.0
broadcast 192.168.1.255
gateway 192.168.1.254
/etc/hostname
avalon
/etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
/etc/bind/named.conf.options
options {
directory "/var/cache/bind";
forwarders {
8.8.8.8;
8.8.4.4;
};
dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
/etc/bind/named.conf.local
zone "example.local" {
type master;
file "/etc/bind/zones/db.example.local";
};
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/zones/db.192";
};
/etc/bind/zones/db.example.local
$TTL 604800
@ IN SOA avalon.example.local. webadmin.example.local. (
5 ; Serial, increment each edit
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
/etc/bind/zones/db.192
$TTL 604800
@ IN SOA avalon.example.local. webadmin.example.local. (
4 ; Serial, increment each edit
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
我需要添加到上述文件中,以便在内部网络的笔记本电脑上输入 webapp.example.local
,并由我的网络服务器服务?
编辑
我在网络服务器上对上述文件进行了一些更改。
/etc/network/interfaces
(文件结束)
dns-nameservers 127.0.0.1
dns-search example.local
/etc/bind/zones/db.example.local
(文件结束)
@ IN NS avalon.example.local.
@ IN A 192.168.1.5
avalon IN A 192.168.1.5
webapp IN A 192.168.1.5
www IN CNAME 192.168.1.5
/etc/bind/zones/db.192
(文件结束)
IN NS avalon.example.local.
73 IN PTR avalon.example.local.
作为旁注,我的备用Win7机器能够直接连接到 webapp.example.local
,但对于Ubuntu 13.10机器,我也必须进行以下更改(不是在网络服务器上,而是在另一台机器上):
/etc/nsswitch.conf
之前
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
后
hosts: files dns
/etc/NetworkManager/NetworkManager.conf
之前
dns=dnsmasq
后
#dns=dnsmasq
问题仍然是它不是通配符DNS,因此我必须添加条目 /etc/bind/zones/db.example.local
对于 webapp1
, webapp2
,...
IN A webapp 192.168.1.5
(带有领先的TAB) /etc/bind/zones/db.example.local
?我知道您需要通配符DNS,反向解析等,但尝试让单个转发主机首先工作,以简化问题。