因最近须要安装一个dns,原本选择安装bind dns。可是鉴于bind dns 哪复杂的配置文件,选择了unbound dns.centos
unbound的说明就不写了网上一搜一大堆的。下面就写下安装步骤bash
我使用的是centos 7.0的系统。若是你们是全新安装的话建议选择这个版本的。有不少新的更新改进。服务器
软件仓库默认是包含有unbound dns的。不过版本比较老了是1.4.x的。因此最后手动下载编译安装。网络
yum install -y wget
wget http://www.unbound.net/downloads/unbound-latest.tar.gz
tar zxvf unbound-latest.tar.gz
安装须要的插件tcp
yum install gcc openssl-devel expat-devel
我没有本身定义安装就是直接使用了默认的安装目录ide
cd unbound-1.5.7/ ./configure && make && make install
添加用户名和用户组测试
groupadd unbound useradd -m -g unbound -s /bin/false unbound
编辑配置文件centos7
vi /usr/local/etc/unbound/unbound.conf verbosity: 1 interface: 0.0.0.0 do-ip4: yes do-udp: yes do-tcp: yes access-control: 0.0.0.0/0 allow local-data: "xxx.xx A 10.10.10.10" forward-zone: name: "." forward-addr: 119.29.29.29 forward-addr: 114.114.114.114
配置文件很简单大多数默认就能够了。若是有须要的话能够本身查看配置文件。都有恨详细的说明spa
local-data: 这个部分能够添加多条 每条的格式都是这样 .net
local-data: "xxx.xx A 10.10.10.10"
这里是监听全部的网络,要是你有多张网卡配置了不一样的ip 能够修改为你想对外服务的那个ip地址 interface: 0.0.0.0
access-control: 0.0.0.0/0 allow 这部分是对那些ip地址提供服务,若是只想给特定的ip地址段如192.168.0.0/24 这样的 修改一下就好
还有一个就是防火墙的问题,centos7 默认的防火墙是firewall 不是iptables。开始的时候没有注意这个。检查没有安装iptables 就没有去管最后致使只能本地访问。能够都检查下。
systemctl stop firewalld
启动服务
unbound-checkconf unbound
unbound-checkconf 这个是用来检查配置文件 unbound.conf有没有错误的。
最后测试下
echo "nameserver 127.0.0.1" > /etc/resolv.conf ping qq.com
若是正常解析就说明服务器正常了