DNS(domain name system):域名管理系统
www.baidu.com——>IP 正向解析
IP——>www.baidu.com 反向解析
主机——>IP
www.taobao.com——>dns——>ip+port——>service
/etc/hosts: 主机名和域名的解析
10.1.1.1 node1.uplook.com node1
缺点:不适用大批量的主机名和域名解析;维护麻烦;更新滞后
优点:速度相对较快,一般在一个集群环境中,我们需要将服务器的主机名和ip地址绑定
工作原理:
.(root) 根域
.com. .cn. .cc .net .org ….
.baidu.com. .163.com. .kernel.org.
www.baidu.com
abc.baidu.com
全世界总共有13台根域服务器,1个主根(美国),12台辅助根,其中9台在美国,欧洲2台(英国和瑞典)、亚洲1台(日本)
.com
.cc
.net
.org
.gov
.mil
.cn
.tw
.hk
.in
.jp
….
bind:
搭建dns服务器:
1、关闭防火墙和selinux
2、配置yum源
3、软件三步曲
4、了解配置文件
5、根据需求通过修改配置文件来完成服务的搭建
6、启动服务|开机自启动
7、测试验证
环境:
vm1:server端 dns服务器
1、
2、
3、软件三步曲
rpm -ql bind
/etc/logrotate.d/named 日志轮转文件
/etc/named 服务主目录
/etc/named.conf 主配置文件
/etc/named.rfc1912.zones 区域配置文件
/etc/rc.d/init.d/named 启动脚本
/usr/sbin/named 二进制命令
/usr/sbin/named-checkconf 检查配置文件的命令
/usr/sbin/named-checkzone 检查zone文件的命令
/var/log/named.log 日志文件
/var/named
/var/named/data
/var/named/dynamic
/var/named/named.ca 根域
/var/named/named.empty
/var/named/named.localhost 正向解析的模板
/var/named/named.loopback 反向解析的模板
/var/named/slaves 从服务器下载的数据
/var/run/named 进程文件
4、了解配置文件
1》/etc/named.conf
listen-on port 53 { 127.0.0.1; }; 监听方式;any表示全网监听
allow-query { localhost; }; 允许谁来查询;any任何人
recursion yes; 支持递归查询
2》/etc/named.rfc1912.zones 定义的是管理的域(正向和反向)
zone “localhost.localdomain” IN { 正向区域
type master;
file “named.localhost”;
allow-update { none; };
};
zone “1.0.0.127.in-addr.arpa” IN { 反向区域
type master;
file “named.loopback”;
allow-update { none; };
};
5、根据需求通过修改配置文件来完成服务的搭建
需求:
momowu.cc
www
bbs
www.momowu.cc——>10.1.1.2
bbs.momowu.cc——>10.1.1.254
步骤:
1> 修改主配置文件/etc/named.conf
options {
listen-on port 53 { 127.0.0.1;any; };
listen-on-v6 port 53 { ::1; };
directory “/var/named”;
dump-file “/var/named/data/cache_dump.db”;
statistics-file “/var/named/data/named_stats.txt”;
memstatistics-file “/var/named/data/named_mem_stats.txt”;
allow-query { localhost;any; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
2> 修改区域文件
vim /etc/named.rfc1912.zones
…
zone “momowu.cc” IN { 定义域
type master;
file “momowu.cc.zone”; 指定区域文件
allow-update { none; };
};
3> 在/var/named下创建指定的区域文件
cp -p named.localhost momowu.cc.zone
4> 修改创建的区域文件(定义该域所管理的主机)
$TTL 1D
@ IN SOA momowu.cc rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.momowu.cc.
dns1 A 10.1.1.1
www A 10.1.1.2
bbs A 10.1.1.254
$TTL DNS缓存
@ 当前域
IN 互联网 internet
SOA 开始授权
NS nameserver 指定dns服务器
A A记录,正向解析
PTR 反向解析
CNAME 别名
MX 3 邮件交互记录
以下是slave服务器从master上更新数据:
0 ; serial 更新序列号
1D ; refresh 更新间隔
1H ; retry 失败重试
1W ; expire 区域文件过期时间
3H ) ; minimum 缓存的最小生存周期
6、检查语法是否有问题
named-checkconf /etc/named.conf
named-checkconf /etc/named.rfc1912.zones
named-checkzone momowu.cc.zone momowu.cc.zone
zone momowu.cc.zone/IN: loaded serial 0
OK
7、启动服务,测试验证
[root@node1 named]# service named start
Starting named: [ OK ]
client:10.1.1.2
echo nameserver 10.1.1.1 >/etc/resolv.conf
[root@node2 Desktop]# cat /etc/resolv.conf
nameserver 10.1.1.1
[root@node2 Desktop]# nslookup www.momowu.cc
Server: 10.1.1.1
Address: 10.1.1.1#53
Name: www.momowu.cc
Address: 10.1.1.2
[root@node2 Desktop]# nslookup bbs.momowu.cc
Server: 10.1.1.1
Address: 10.1.1.1#53
Name: bbs.momowu.cc
Address: 10.1.1.254
host www.momowu.cc
www.momowu.cc has address 10.1.1.2
host bbs.momowu.cc
bbs.momowu.cc has address 10.1.1.254
dig www.momowu.cc
需求2:
www.momowu.cc——>10.1.1.2
10.1.1.2——>www.momowu.cc
bbs.momowu.cc——>10.1.1.254
10.1.1.254——>bbs.momowu.cc
zone “momowu.cc” IN {
type master;
file “momowu.cc.zone”;
allow-update { none; };
};
zone “1.1.10.in-addr.arpa” IN {
type master;
file “10.1.1.zone”;
allow-update { none; };
};
cat 10.1.1.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS abc.momowu.cc.
abc A 10.1.1.1
2 PTR www.momowu.cc.
254 PTR bbs.momowu.cc.
1009 nslookup 10.1.1.2
1010 nslookup 10.1.1.254
1011 nslookup
1012 host -x 10.1.1.2
1013 host -t ptr 10.1.1.2
1014 host -t ptr 10.1.1.254
1015 dig -x 10.1.1.2
1016 dig -x 10.1.1.254
定义多域:
test.momowu.cc dns 10.1.1.2
bbs.redhat.net dns 10.1.1.254
vim /etc/named.rfc1912.zones
…
zone “momowu.cc” IN {
type master;
file “momowu.cc.zone”;
allow-update { none; };
};
zone “redhat.net” IN {
type master;
file “redhat.net.zone”;
allow-update { none; };
};
zone “1.1.10.in-addr.arpa” IN {
type master;
file “10.1.1.zone”;
allow-update { none; };
};
cat momowu.cc.zone
$TTL 1D
@ IN SOA momowu.cc rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.momowu.cc.
dns1 A 10.1.1.1
www A 10.1.1.2
bbs A 10.1.1.254
test A 10.1.1.2
cat redhat.net.zone
$TTL 1D
@ IN SOA redhat.net rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.redhat.net.
dns1 A 10.1.1.1
www A 10.1.1.254
bbs CNAME www.redhat.net.
cat 10.1.1.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.redhat.net.
2 PTR test.momowu.cc.
254 PTR bbs.redhat.net.
注意:
1、正向区域文件中,A记录不能省略;反向区域文件中A记录可以省略,但是NS后面所指的主机名必须能代表你的dns服务器
课堂练习:
test.momowu.cc dns 10.1.1.2
bbs.redhat.org dns 192.168.1.1
DNS主从同步:
环境:
vm1:10.1.1.1 DNS master
vm2:10.1.1.2 DNS slave
时间同步服务器:
ntp udp 123 时间同步服务
vm1:时间同步服务器
vim /etc/ntp.conf
Hosts on local network are less restricted.
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
restrict 10.1.1.0 mask 255.255.255.0 nomodify notrap
允许哪个网段来同步时间
client:
ntpdate 10.1.1.1 需要外网,需要等待几分钟
另一种同步方法:
vim time-dgram 和 vim time-stream
service time
{
This is for quick on or off of the service
disable = no 打开时间同步
client:
rdate -s 10.1.1.1 不需要等待,不依赖外网,一般用于局域网中
步骤:
1、保证两台主机的系统时间一致
vm1:crontab -e
/2 * * * rdate -s 10.1.1.254
vm2:crontab -e
/2 * * * rdate -s 10.1.1.254
2、vm1搭建dns服务器
vim /etc/named.conf
allow-transfer { 10.1.1.2;};
/etc/named.rfc1912.zones 不动
cat momowu.cc.zone
$TTL 1D
@ IN SOA momowu.cc rname.invalid. (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.momowu.cc.
dns1 A 10.1.1.1
www A 10.1.1.2
bbs A 10.1.1.254
test A 10.1.1.2
abc CNAME bbs.
@ NS dns2.momowu.cc.
dns2 A 10.1.1.2
cat redhat.net.zone
$TTL 1D
@ IN SOA redhat.net rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.redhat.net.
dns1 A 10.1.1.1
www A 10.1.1.254
bbs CNAME www.redhat.net.
@ NS dns2.redhat.net.
dns2 A 10.1.1.2
cat 10.1.1.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.redhat.net.
2 PTR test.momowu.cc.
254 PTR bbs.redhat.net.
@ NS dns2.redhat.net.
dns2 A 10.1.1.2
3、vm2直接下载vm1上的zone文件
1》vim /etc/named.conf
2》vim /etc/named.rfc1912.zones
zone “momowu.cc” IN {
type slave;
masters {10.1.1.1;};
file “slaves/momowu.cc.zone”;
allow-update { none; };
};
zone “1.1.10.in-addr.arpa” IN {
type slave;
masters {10.1.1.1;};
file “slaves/10.1.1.zone”;
allow-update { none; };
};
3》启动服务,测试验证
ll
total 8
-rw-r–r–. 1 named named 400 Apr 27 15:36 10.1.1.zone
-rw-r–r–. 1 named named 418 Apr 27 15:41 momowu.cc.zone
[root@node2 slaves]# pwd
/var/named/slaves
DHCP:动态主机分配协议 端口67 udp协议
原理:
1、dhcpdiscover(发现):
客户端以0.0.0.0作为自己的ip地址,以255.255.255.255做为广播地址
2、dhcpoffer(提供):dhcpserver端接受到信息后,自身检查,有将ip、netmask等隔离起来
3、dhcprequest(请求):client端收到dhcp服务端的消息后,以广播的形式发送一个请求:我的dhcp的ip地址是xxx
4、dhcpack(确认):server端将ip、netmask、租约等信息给客户端