Debian——DNS


前言

版本Debian10.7,三台机子,server/node1/node2

一、环境

192.168.26.10 server server.zedd.com
192.168.26.11 node1 node1.zedd.com
192.168.26.12 node2 node2.zedd.com

二、主机名修改、安装

1.修改主机名

root@debian:~# echo server > /etc/hostname
root@debian:~# vim /etc/hosts
127.0.1.1       server.zedd.com server //修改
//保存退出,更新主机名
root@debian:~# hostname -F /etc/hostname
root@debian:~# hostname
server
root@debian:~# hostname -f
server.zedd.com
root@debian:~# bash
root@server:~#

node1/node2 相同操作

2.安装

root@server:~# apt install bind9 dnsutils -y
root@node1:~# apt install dnsutils -y
root@node2:~# apt install dnsutils -y

二、配置

1.修改工作目录路径

root@server:~# cd /etc/bind/
root@server:/etc/bind# vim named.conf.options
directory "/etc/bind/";		//修改

2.添加区域

root@server:/etc/bind# vim named.conf

在这里插入图片描述
正向区域文件创建

root@server:/etc/bind# cp db.empty db.zedd
root@server:/etc/bind# vim db.zedd

在这里插入图片描述

反向区域文件创建

root@server:/etc/bind# cp db.127 db.ddez
root@server:/etc/bind# vim db.ddez

在这里插入图片描述
权限
chown -R bind:bind /etc/bind
DNS域名各项解析记录
https://www.cnblogs.com/bluestorm/p/10345334.html


三、测试

//重启服务,添加DNS
root@server:/etc/bind# systemctl restart bind9
root@server:/etc/bind# cat /etc/resolv.conf
nameserver 192.168.26.10		//添加
nameserver 8.8.8.8
root@node1:~# cat /etc/resolv.conf
nameserver 192.168.26.10
root@node2:~# cat /etc/resolv.conf
nameserver 192.168.26.10

server
在这里插入图片描述
node1
在这里插入图片描述


### 配置DNS以解决应用服务器相关问题 当遇到应用服务器的DNS解析问题时,合理的DNS配置可以有效解决问题。以下是几种常见且有效的解决方案: #### 1. **编辑 `/etc/resolv.conf` 文件** 修改 `/etc/resolv.conf` 是最直接的方法之一。通过指定合适的DNS服务器地址,可以显著提高域名解析的速度和可靠性。 - 打开 `/etc/resolv.conf` 文件进行编辑: ```bash sudo nano /etc/resolv.conf ``` - 添加内网DNS服务器地址,并将其放置在原有DNS地址之前。例如,如果使用的是华为云环境中的内网DNS地址,则可以这样写入: ``` nameserver <内网DNS地址> nameserver <其他备用DNS地址> ``` 具体的内网DNS地址可以根据实际情况获取[^1]。 - 完成修改后保存退出,并测试新的DNS配置是否生效: ```bash nslookup example.com ``` #### 2. **持久化 DNS 设置以防重启丢失** 在某些情况下,系统重启可能会覆盖掉手动修改的 `/etc/resolv.conf` 文件内容。为了避免这一问题,可以在网络接口配置文件中加入静态DNS设置。 对于基于Debian/Ubuntu的操作系统,可以通过编辑 `/etc/network/interfaces` 来完成此操作: ```bash auto eth0 iface eth0 inet static dns-nameservers <内网DNS地址> <其他备用DNS地址> ``` 而对于RedHat/CentOS系列系统,则需要编辑对应的网络脚本文件(通常是 `/etc/sysconfig/network-scripts/ifcfg-eth0`),添加或修改以下字段: ```plaintext DNS1=<内网DNS地址> DNS2=<其他备用DNS地址> PEERDNS=no ``` #### 3. **利用 DHCP 自动分配 DNS 地址** 如果不想手动干预每台服务器上的DNS配置,也可以让DHCP自动分发正确的DNS信息给客户端设备。这种方法特别适合大规模部署场景下的统一管理需求。 - 确保DHCP服务已正确安装并启动; - 编辑DHCP配置文件(如 `/etc/dhcp/dhcpd.conf`),确保其中包含了适当的选项声明: ```plaintext option domain-name-servers <内网DNS地址>, <其他备用DNS地址>; ``` - 更新完成后重新加载DHCP服务使其生效: ```bash systemctl restart dhcpd ``` #### 4. **优化本地缓存机制减少外部查询次数** 尽管已经设置了可靠的上游DNS服务器,但如果频繁对外发送相同的请求仍会带来额外负担。为此引入一个高效的本地DNS缓存代理不失为明智之举——比如dnsmasq就是一个轻量级的选择。 - 安装 dnsmasq 并开启服务: ```bash apt-get install dnsmasq # Debian/Ubuntu下执行命令 yum install dnsmasq # RedHat/CentOS环境下执行命令 systemctl start dnsmasq systemctl enable dnsmasq ``` - 同样记得调整 `/etc/resolv.conf` 中的内容指向 localhost 的监听端口即可享受加速效果: ``` nameserver 127.0.0.1 ``` --- 以上方法均有助于改善应用服务器所面临的DNS解析障碍状况,具体选用哪种取决于实际运维条件和个人偏好等因素综合考量决定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值