推广网站优化怎么做泰安城建吧
接上一部分 14-域名解析DNS 自我总结_linux 查看dns-CSDN博客
1.DNS自解析

1.在DNS SERVER 上实域名解析
 vim /etc/bind/named.conf.default-zones 
  ...... 
 
 复制内容再进行相应的修改 
 
  设置具体解析规则 
 
  修改权限,修改属主属组 
  chmod 644 /etc/bind/db.baidu.com 
  chown root:root /etc/bind/db.baidu.com 
  语法检查 
  named-checkzone baidu.com /etc/bind/db.baidu.com 
  重载生效 
  rndc reload 
 2.后端web(10.0.0.13)
apt update;apt install -y nginx   #部署nginx
 echo "this page from 10.0.0.13" > /var/www/html/index.html  #更改首页内容
 curl127.1 #测试页面内容
3.客户端主机测试(10.0.0.12)
 修改客户端主机的 DNS 服务器地址 
  vim /etc/resolv.conf    
  # Generated by NetworkManager  
  search localdomain 
  nameserver  10.0.0.13 
  测试结果如下(第二个是泛域名解析):  
 
4.DNS自解析脚本实现
#!/bin/bash# 提示用户输入相关信息
read -p "请输入DNS客户端IP(如10.0.0.12): " dns_client_ip
read -p "请输入DNS服务器IP(如10.0.0.13): " dns_server_ip
read -p "请输入要解析的域名(如baidu.com): " domain_name
read -p "请输入WEB服务对应的解析IP(这里同DNS服务器IP): " web_resolve_ip
read -p "请输入泛域名的ip,同一网段不与dns服务器或web服务的ip相同: " web_broad_ip# BIND主配置文件路径,Ubuntu下默认,其他系统如CentOS可能是/etc/named.conf等,需调整
named_conf_path="/etc/bind/named.conf.default-zones"
# 正向解析区域文件路径 /etc/bind/db.baidu.com 自己创建
zone_file_path="/etc/bind/db.${domain_name}"# 添加正向解析区域到named.conf.default-zones
cat << EOF >> ${named_conf_path}
zone "${domain_name}" {type master;file "${zone_file_path}";
};
EOF# 创建正向解析区域文件并写入内容
cat << EOF > ${zone_file_path}
\$TTL 86400
@   IN  SOA     ${dns_server_ip}. admin.${domain_name}. (2025061301  ; Serial3600        ; Refresh1800        ; Retry604800      ; Expire86400 )     ; Minimum TTL
@    IN  NS      dns1
dns1   IN  A       ${web_resolve_ip}
www IN  A       ${web_resolve_ip}
*   IN  A       ${web_broad_ip}
EOF# 调整区域文件权限,让BIND可以读取
chown root:root ${zone_file_path}
chmod 640 ${zone_file_path}# 重启BIND服务使配置生效
rndc reload
echo "DNS 自解析配置完成!"
echo "接下来在客户端("$dns_client_ip",Rocky9系统)配置DNS:"
echo "编辑 /etc/resolv.conf 文件,添加或修改 nameserver 为 ${dns_server_ip}"
echo "之后就可以通过解析的域名(如 ${domain_name}、www.${domain_name} )访问WEB服务啦" 2.DNS主从复制
前提条件和要求

1.主DNS服务器配置(10.0.0.13)
(1) vim /etc/bind/named.conf.default-zones (增加下面的内容)
zone "baidu.com" {type master;file "/etc/bind/db.baidu.com";allow-transfer { 10.0.0.15; };allow-update { none; };
};
 (2) vim /etc/bind/db.baidu.com
;
; BIND reverse data file for broadcast zone
;
$TTL    604800
@       IN      SOA     baidu-dns. admin.baidu.com. (81         ; Serial604800         ; Refresh86400         ; Retry2419200         ; Expire604800 )       ; Negative Cache TTL
;
@       IN      NS      dns1NS      dns2
dns1    IN      A       10.0.0.13
dns2    IN      A       10.0.0.15
www     IN      A       10.0.0.18 rndc reload #重载配置 此命令只能用在ubuntu
2.从DNS服务器配置(10.0.0.15)
 mkdir -p /var/named/slaves #创建目录 
 
 (1) vim /etc/named.rfc1912.zones (增加下面的内容)
zone "baidu.com" IN {type slave;masters {10.0.0.13;};file "slaves/db.baidu.com";
}; (2) vim /etc/named.conf
...
listen-on port 53 { 10.0.0.15; };   # 开放本地IP地址入口
allow-query     { any; };  # 允许其他主机正常访问
... 
 systemctl restart named  重启服务 
   检测效果: 
  解析文件己经同步了     ll /var/named/slaves/ 
 
  且该文件是个数据文件   file /var/named/slaves/db.baidu.com 
 
 3.web服务器配置(10.0.0.18)
yum install nginx -y     #安装软件
echo 'myself nginx web' > /usr/share/nginx/html/index.html  #定制首页
systemctl start nginx  #启动服务
curl localhost  #测试效果 4.客户机测试(10.0.0.12)
 vim /etc/resolv.conf       # 修改客户端的配置 
 # Generated by NetworkManager
search www.baidu.com
nameserver 10.0.0.15   # 定制备用DNS服务器地址 查看域名默认的DNS host www.baidu.com

 测试主从DNS地址的分别解析效果    得出来结果和预期的不一样(大家有发现哪里有错误吗) 
 
5.异常测试
 vim /etc/resolv.conf     修改客户端(10.0.0.12)的配置 填写下面的内容配置 
 # Generated by NetworkManager
nameserver 10.0.0.13 # 定制主DNS服务器地址
nameserver 10.0.0.15 # 定制从DNS服务器地址  rndc stop  #关闭 主DNS(10.0.0.13)上的服务 
nslookup www.magedu.com 10.0.0.13 # 客户端(10.0.0.12)主机检查效果
 nslookup www.magedu.com 10.0.0.13 # 客户端(10.0.0.12)主机检查效果
  DNS Master 异常的情况下, SLAVE 节点 还能提供正常的dns域名解析功能 
 
 
  
 3.主从同步数据实践
 systemctl start named           #主服务器(10.0.0.13)启动服务 
  vim /etc/bind/db.baidu.com     #在主 DNS 增加一条 db 解析记录  红框圈起来的,以及更改serial。 
 
 
 
  rndc reload   #重启服务 
   测试效果  得出结论:主从更改时间相同,DNS同步成功
ll /etc/bind/db.baidu.com #主DNS进行查看
 ll /etc/bind/db.baidu.com #主DNS进行查看
 ls -lh /var/named/slaves/   #从DNS进行查看 
 (1)测试TCP端口异常效果
 iptables -A INPUT -p tcp --dport 53 -j REJECT  # 在主DNS   和  从DNS  上禁用 TCP53 
iptables - vnL #查看防火墙规则
  iptables - vnL #查看防火墙规则
 vim /etc/bind/db.baidu.com  #主DNS增加nene(10.0.0.200 )解析记录 并修改serial号 
  rndc reload   # 重载 dns 服务配置 
  同理检测得出来 禁用了 tcp 的 53 端口,从 DNS 上不会同步数据 
   异常恢复 
  iptables -F   #主从DNS操作此命令来 取消防火墙策略 
  从 dns没有同步,不过主 dns 修改 dns 解析记录后,更改一下序列号 ,就又实现数据同步操作了 
  (2)强制同步数据
从节点DNS操作的命令 
  rm -f /var/named/slaves/db.baidu.com  #删除 从 dns 服务器删除旧数据 
systemctl restart named #重启服务后,ls -lh /var/named/slaves/发现数据又回来了
   systemctl restart named #重启服务后,ls -lh /var/named/slaves/发现数据又回来了
