基本概念:
DNS:Domain Name Server,一种程序,它保存了一张域名(domain name)和与相对应的IP地址(IP address)的表,以解析消息的域名。
域名:internet上某一台计算机或计算机组的名称,是IP地址的映射。
域名解析实际上就是把域名映射回IP地址。域名解析的过程:当一个浏览者在浏览器地址框中打入某一个域名,或者从其他网站点击了链接来到了这个域名,浏览器向这个用户的上网接入商发出域名请求,接入商的DNS服务器要查询域名数据库,看这个域名的DNS服务器是什么。然后到DNS服务器中抓取DNS记录,也就时获取这个域名指向哪一个IP地址。在获得这个IP信息后,接入商的服务器就去这个IP地址所对应的服务器上抓取网页内容,然后传输给发出请求的浏览器。
1、Ubuntu 12.04 搭建bind9域名服务器
说明:因为本人机器有限,域名服务器和web服务器(Lamp)都在本机,ip地址默认127.0.0.1;
安装:
1
|
sudo apt-get install bind9;
|
(1)、修改/etc/bind/named.conf.local文件,添加一下内容:
1
2 3 4 |
zone
"hdjay.com"{
type master; file "db.hdjay.com"; }; |
(2)、创建/var/cache/bind/db.hdjay.com文件,可以拷贝/etc/bind下的db.local文件来做模板修改: cp /etc/bind/db.local /var/cache/bind/db.hdjay.com
把/var/cache/bind/db.hdjay.com文件修改如下:
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
;
;BIND data file for local loopback interface ; $TTL604800 @ IN SOA hdjay.com. root.hdjay.com.( 2 ;Serial 604800 ;Refresh 86400 ;Retry 2419200 ;Expire 604800) ;Negative Cache TTL ; @ IN NS localhost. @ IN A 127. 0. 0. 1 ;@ IN A AAA:: 1 www IN A 127. 0. 0. 1 ;这个是子域,也就是web服务器的域名了; |
(3)、修改/etc/bind/named.conf.options文件:
1
2 3 |
forwarders{
8. 8. 8. 8; }; |
(4)、最后重新启bind9服务器:sudo /etc/init.d/bind9 restart
(5)、测试:可以通过nslookup命令来测试!
1
|
nslookup www.hdjay.com
|
1
2 3 4 |
Server:
127.
0.
0.
1
Address: 127. 0. 0.1#53 Name: www.hdjay.com Address: 127. 0. 0. 1 |
从浏览器输入http://www.hdjay.com即可访问本地web服务器了。
hint: