如何在ubuntu上建立DNS服务器

如何在ubuntu上建立DNS服务器,第1张

这时在/etc/bind下会出现(这里跟其他的UNIX/LINUX不同,一般其他的UNIX/LINUX默认是把配置文件放

在/etc/named下,数据文件放在/var/named或/var/bind下的,而UBUNTU都一起放在这个目录下了)

db.0 db.255 db.root named.conf.local

db.127 db.local named.conf named.conf.options

其中named.conf为主配置文件,named.conf.local和named.conf.options这两个文件在其他的UNIX/LINUX

系统里默认是没有的,UBUNTU的这种想法很不错,把各个部分都分开管理;其余的部分都是默认生成的几

个数据文件。这里需要稍微讲一下区数据文件里的几个资源记录的含义:

SOA记录:指示该区的权威

NS记录:列出该区的一个名字服务器

A记录:名字到地址的映射 (也就是正向解析)

PTR记录:地址到名字的映射 (也就是反向解析)

CNAME:规范名字 (别名记录)

下面开始服务配置

缓存域名服务器设置 (Cache-only server)

缓存域名服务器顾名思义其自身是没有域名记录的,仅仅从别的DNS上获取记录并做高速缓存。

安装好DNS服务后,不需要任何配置,只需要把服务起起来就是缓存域名服务器了。

代码:

sudo /etc/init.d/bind start

主DNS配置

安装好DNS后,配置named.conf.local,如下例:

代码:

zone "163.com" {

type master

file "/etc/bind/db.163.com"

}

zone "sohu.com" {

type master

file "/etc/bind/db.sohu.com"

}

zone "sina.com" {

type master

file "/etc/bind/db.sina.com"

}

查看/etc/resolv.con 我们会发现dns服务器为127.0.1.1,记住不是127.0.0.1

好奇葩的一个地址

这是个什么呢,这个 https://segmentfault.com/q/1010000002443769 回答了你的问题

ubuntu下有一个本地的dns服务叫做dnsmasq,它是由NetworkManager控制的

它监听的本地地址,--listen-address=127.0.1.1 (ubuntu12.04及之前的版本 是 127.0.0.1), 这个地址是一个本地回环地址

而你真实的dns服务器地址,是被这个服务管理维护着的

由一张图表示就是:

local process ->local dnsmasq ->router ->ISP dns

(百度百科)

DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。它服务那些只在本地适用的域名,这些域名是不会在全球的DNS服务器中出现的。DHCP服务器和DNS服务器结合,并且允许DHCP分配的地址能在DNS中正常解析,而这些DHCP分配的地址和相关命令可以配置到每台 主机 中,也可以配置到一台核心设备中(比如路由器),DNSmasq支持静态和动态两种DHCP配置方式。

其中:

DNSmasq把因特网地址和地址-域名映射关系放入cache中,减少服务器负担的同时也提升了性能

DNSmasq能配置来自动用PPP或DHCP配置请求从上行域名解析服务器中获取地址信息,如果信息发生改变,它会自动重载这些信息。

DNSmasq能被配置用来向特定的上行服务器发送特定的域名解析请求,从而可以简单的与私有的DNS服务器结合使用。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/370286.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-13
下一篇2023-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存