一、下载二进制文件linux
wget https://github.com/coredns/coredns/releases/download/v1.5.0/coredns_1.5.0_linux_amd64.tgz tar zxf coredns_1.5.0_linux_amd64.tgz -C /usr/bin/
二、建立用户git
useradd coredns -s /sbin/nologin
三、编辑/etc/coredns/Corefilegithub
.:53 { # 绑定interface ip bind 127.0.0.1 # 先走本机的hosts # https://coredns.io/plugins/hosts/ hosts { # 自定义sms.service search.service 的解析 # 由于解析的域名少咱们这里直接用hosts插件便可完成需求 # 若是有大量自定义域名解析那么建议用file插件使用 符合RFC 1035规范的DNS解析配置文件 10.6.6.2 sms.service 10.6.6.3 search.service # ttl ttl 60 # 重载hosts配置 reload 1m # 继续执行 fallthrough } # file enables serving zone data from an RFC 1035-style master file. # https://coredns.io/plugins/file/ # file service.signed service # 最后全部的都转发到系统配置的上游dns服务器去解析 forward . /etc/resolv.conf # 缓存时间ttl cache 120 # 自动加载配置文件的间隔时间 reload 6s # 输出日志 log # 输出错误 errors }
更新插件使用:https://github.com/coredns/coredns缓存
四、编辑/usr/lib/systemd/system/coredns.service服务器
[Unit] Description=CoreDNS DNS server Documentation=https://coredns.io After=network.target [Service] PermissionsStartOnly=true LimitNOFILE=1048576 LimitNPROC=512 CapabilityBoundingSet=CAP_NET_BIND_SERVICE AmbientCapabilities=CAP_NET_BIND_SERVICE NoNewPrivileges=true User=coredns ExecStart=/usr/bin/coredns -conf=/etc/coredns/Corefile ExecReload=/bin/kill -SIGUSR1 $MAINPID Restart=on-failure [Install] WantedBy=multi-user.target
五、启动corednsspa
systemctl enable coredns
systemctl start coredns
systemctl status coredns