linux的DNS服务器

DNS:Domain Name Server[域名解析协议]
DNS工作在上4层:
端口号:53
监听的协议有那些:TCP/UDP ->53端口
DNS定义:名称解析协议
将一种格式的信是转化为另一种格式,以某个关键字为标准查找某一数据库的过程
nsswitch:name-server switch
它将为login提供服务
配置文件的路径:/etc/nsswitch.conf
hosts:存放的主机名和ip地址及别名
域名是一种分布式数据库进行分发:
将数据切割,放在不同的服务器上[解析不同主机时,使用不同的服务器]
上级数据库只负责下级数据库的授权,并且在有人查询时,完成路径指引
根域[.] ->一级域名[ICANN]->二级域名[组织域、公司申请]…
namespace:名称空间[整个DNS倒形状称为名称空间
一级域:
组织域:.com,.org,.mil,.gov,.edu,.net,
国家域:.cn,.hk,.tw,.jp,.ir(伊朗),.iq(伊拉克),.us,.uk
反向域:.in-addr.arpa ->将ip地址解析成主机名
正向解析:域名 -> ip
反向解析:ip -> 域名
FQDN:Fu11 Qualified Domain Name完全域名解析
FQDN –> IP 正向解析
IP –> FQDN 反向解析
查询:
递归查询:只发起一次请求,最终能得到答案
迭代查询:发起一次请求,不一定得到答案[DNS服务器才能迭代] ->向上级域名提交申请
特点:
1、递归能够得到最终的答案,但是,特别消耗资源;
2、迭代提交一次申请但是不一定能得到答案,比较快捷[只有DNS服务器才能做迭代]
3、客户端主机指向的DNS服务器,一定是允许给本地主机做递归的;
比如:8.8.8.8 –>G00GLE的DNS地址

资源记录的类型:[表示资源的功能]
S0A:Start of Authority[起始授权]
[指明某一块区域划分给谁管理]
NS:Name Server[域名服务器]
NS记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。
MX:Mail eXchanger[邮件交换器]
是邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位
邮件服务器。MX记录也叫做邮件路由记录,用户可以将该域名下的邮件服务器指向到自己的
mail server上,然后即可自行操控所有的邮箱设置。
A:Address,(作用:FQDN–>IP)地址记录
PTR:PoiTeR,(作用:IP–>FQDN)指针记录
AAAA:Address,FQDN–>IPv6
CNAME:Canonical Name,正式名称(别名记录)[定义多个别名] ->一个主机有多个名字
注意:DNS的服务软件为:BIND[即为实现dns配置的软件]
资源记录的格式:
name [ttl(缓存时间)] IN 资源记录类型(RRtype)Value
例子:[语法格式]
www 600(单位s)IN A 1.2.3.4
www.laohigh.com. 600 IN A 1.2.3.4 ->注意:1aohigh.com后一定加.
SOA:[只能有一个]
name:只能是区域名称,通常可以简写为@,例如:laohigh.com.
value:有n个数值,最主要的是主DNS服务器的FQDN,点不可省略
注意:S0A必须是区域数据库文件第一条记录
例子:
@ 600 IN SOA na.laohigh.com.管理员邮箱(dnsadmin.1aohigh.com.)(
序列号(serial number);注释内容,十进制数据,不能超过10位,通常使用日期,
例如2017083001
刷新时间(refresh time);即每隔多久到主服务器检查一次
重试时间(retry time);应该小于refresh time
过期时间(expire time);
netgative answer ttl;否定答案的tt1
)
注意:以上可以写在同一行中,使用空格分隔
NS:可以有多条
name:区域名称,通常可以简写为@
value:DNS服务器的FQDN(可以使用相对名称)
例子:@ 600 IN NS ns

A:只能定义在正向区域数据文件中
    name:FQDN(可以使用相对名称)
    value:IP

    例子:[多个主机使用同一个名字]        ->可以做负载均衡
        www 600(单位s)INA1.2.3.4
        www 600(单位s)INA1.2.3.5
    可做轮询

        www 600(单位s)INA1.2.3.4
        ftp 600(单位3)INA1.2.3.4      ->此为以下机器有多个名称
但凡以FQDN做为其值的记录,应该给这个值做一条A记录

AAAA:
MX:[可以有多个]
    name:区域名称,用于标识smtp服务器
    value:包含优先级和FQDN
        优先级:0-99,数字越小,级别越高,
例子:
    @ 600 IN MX 10 mail
    @ 600 IN MX 20 mail2
CNAME:别名
name:FQDN
value:FQDN
例子:
    ftp IN CHANE www        ->ftp的真实名字为www
但凡value上是FQDN的,都必须拥有A记录
PTR:[可以拥有多条]
IP --> FQDN,能定义在反向区域数据文件中,反向区域名称为逆向网络地址加.in.addr.arpa.后缀组成
name:IP,逆向的主机地址,例如172.16.100.7的name为7.100,完全格式为7.100.16.172.in-addr-arpa.
value:FQDN
完整地址192.16.10.200的name为200.10.16.192.in-addr-arpa.
    例子:
        4.3.2. 600 IN PTR www.laohigh.com.

注查,以上各种资源记录的定义格式

区域传送:
辅助DNS服务器从主DNS服务器或其他的辅助DNS服务器请求数据传输过程
完全区域传送:传送区域的所真数据:AXFR
增量区域传送:传送区域中改变的数据部分,IXFR
BIND:isc(www.isc.org) DHCP 都是有isc机构提供
4:功能简单,安全
9:
注意:任何一种组织不透明运作,出了一点问题。就认为它有阴谋,如:方滨兴[北邮校长]、张召忠
协议DNS,实现BIND,进程named

chroot为安全提供的机制
    #yum list all bind*
    #yum install bind -y
    #rpm -ql bind

案例:1aohigh.com[向万网、新网注册申请域名,它们是域名分配上,向工信部备案]
192.16.10.x
准备提供的服务:mail、www、pop、ftp、dns
mail 192.16.10.3
www 192.16.10.4
pop –>mail
ftp –>www
dns:192.16.10.200
注意:智能DNS解析[将来自解析不同地区的名称解析,使用不同的网络进行]
如:南电信,北联通 这就是CDN
CDN[Content Delivery Network],即内容分发网络[核心就是智能DNS,完成用户请求]
其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。
通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据
网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近
的服务节点上。其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应
速度。国内也有免费提供DNS解析的站点;如:DNSPOD[好像被腾讯收购了]一流的运营是玩用户
用户体验需做好
使用bind配置DNS服务器:
主配置文件:定义区域 /etc/named.conf
至少有三个区域:根、1ocahost[正向解析]、127.0.0.1[方向解析]
区域数据文件:/var/named/
注意:那么全球的13个根节点在哪里
# dig -t NS . –>解析全球根节点
# dig -t NS . @j.root-servers.net. –>通过某个dns去解析
# cat /var/named/named.ca –>安装bind包后自动生成对应的记录
# vim /etc/named.conf –>查看相关named.conf配置文件
注意:查看var/named/named.ca文件发现安装了bind包后,会自动导入到named.conf配置文件中
named
用户:named
组:named

vim /etc/named.conf

vim /etc/named.rfc1912.zones

主配置文件:
options{
//全局选项
}
zone “zone name[区域名称]” {
//定于区域
}
logging{
//定义日志文件系统
}
include:加载别的文件
注意:语法规定[每一行都必须有;且在{}里面的内容必须有空格隔开且后面必须跟;]

还可以通过ACL来定义配置文件

自定义配置文件:

cp /etc/named.conf /etc/named.conf.original ->备份原始配置文件

vim /etc/named.conf

options{
directory “/var/named”;
};
zone “.” IN {
type hint;
file “named.ca”;
};
zone “localhost” IN {
type master;
file “named.localhost”;
};

logging {
zone “1.0.0.127.in-addr.arpa.” IN {
type master;
file “named.loopback”;
};
注意:此处的方向解析,可以参照/etc/named.rfc1912.zones文件的格式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值