|NO.Z.00017|——————————|LinuxNetwork|——|Linux&DNS服务.V06--|
附录一:DNS软件信息
### --- DNS软件信息
### --- 软件名称:
bind
### --- 服务名称:
named
### --- 软件端口:
~~~ UDP 53 数据通信(域名解析)
~~~ TCP 53 数据同步(主从同步)
### --- 配置文件:
~~~ 主配置文件:/etc/named.conf(服务器运行参数)
opetions {
listen-on port 53 {127.0.0.1; }; // 设置服务器监听网卡(可以写具体某一个IP,也可以写any)
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt"; // 数据文件位置
memstatistics-file "/var/named/data/named mem stats.txt";
allow-query { localhost;}; // 设置可以访问服务器的客户端IP(可用any)
recursion yes;
### --- 局域配置文件: /etc/named.rfc1912.zones // 服务器解析的局域配置,正反向局域定义信息)
zone "localhost.localdomain" IN { // 正向局域配置文件标签,修改为要解析的域
type master; // DNS服务器类型(master/slave)
file "named.localhost"; // 正向数据配置文件名称(默认保存在/var/name/下)
allow-update { none; }; // 允许数据更新的列表(填写IP地址)
};
zone "1.0.0.127.in-addr.arpa" IN { // 反向局域配置文件标签,仅修改IP位置,并且将IP反写,例如:0.168.192.in-addr.arpa
type master; // DNS服务器类型(master/slave)
file "named.loopback";
allow-update { none; };
};
### --- 数据配置文件:/var/named/xx.xx (主机名和IP地址的对应解析关系,及主从同步信息)
$TTL 1D // 域名有效解析生存周期
@ IN SOA @ rname.invalid. ( // @表示域名本身,SOA:SOA标记(起始授权机构的资源记录,描述了域名的管理员,电子邮件地址,和一些时间参数)
0 ; serial // 配置文件修改版本(如:20210205
1D ; refresh // 更新频率(从向主查询周期)(一般每天一同步)
1H ; retry // 更新失败的重试时间周期
1W ; expire // 无法更新时失效周期
3H ) ; minimum // 缓存服务器无法更新时的时的失效时间。
NS @ // 设置DNS服务器的域名
A 127.0.0.1 // IPV4域名IP解析记录
AAAA ::1 // IPV6域名解析记录
记录类型:
A: | 地址记录,用来指定域名IPV4地址的记录 |
CNAME: | 将渔民指向另一个域名;再由另一个域名提供IP地址,就需要添加CNAME记录 |
TXT: | 可填写任何东西,长度限制255。绝大多数的TXT记录是用来做SPF的(反垃圾邮件) |
NS: | 域名服务器记录,如果需要把子域名交给其他DNS服务商解析,就需要添加NS记录 |
AAAA: | 地址记录,用来指定域名的IPV6地址的记录 |
MX: | 邮件交换记录,如果需要设置邮箱,让邮箱能收到邮件,就需要添加MX记录 |
附录二:DNS实验搭建
### --- DNS服务搭建
~~~ 先关闭服务器和客户机上的防火墙和SELinux
### --- 软件安装
yum install -y bind
### --- 配置文件(/etc/named.conf)
### --- 配置局域文件(/etc/named.rfc1912.zones)
~~~ 注:先对局域文件进行备份,删除多余的模板,只留下一个正向和一个反向
~~~ (反向修改时,网络位的反写格式:如192.168.100.2——>100.168.192.)
### --- 配置数据文件/var/named/
~~~ A、先复制生成正向解析文件和反向解析文件
~~~ B、编辑正向解析文件(注意域名结尾的".")
~~~ C、编辑反向解析文件(注意域名结尾的".")
### --- 重启DNS服务
service named restart
### --- 客户端测试
~~~ 在网卡配合文件中添加DNS服务器的地址,然后用nslookup测试。
附录三:主从DNS服务器
### --- 主从DNS服务器
~~~ #实验目的:
~~~ 减轻主服务器的压力
~~~ 先关闭服务器和客户机上的防火墙和Selinux
~~~ 实验准备:一台主服务器,一台从服务器,一台测试机
### --- 搭建过程:
### --- 搭建主服务器步骤(同上,不截图了)
~~~ 安装bind软件
~~~ 主配置文件的修改
~~~ 局域配置文件的修改
~~~ 配置数据文件
~~~ ~正向数据文件
~~~ ~反向数据文件(可选做)
~~~ 启动anmed服务
~~~ 注意:主DNS的局域配置文件中allow-updata参数添加从服务器IP地址
### --- 搭建从服务器步骤
~~~ 安装bind软件
~~~ 修改主配置文件/etc/named.conf
~~~ 配置局域文件(/etc/named.rfc1912.zones)
~~~ 注意:从配置文件的类型需要修改为slave,并且需要填写主服务器的地址,如下
type slave;
masters { 192.168.0.10; }; // 大括号两侧留有空格
### --- 文件保存位置修改为 file "slaves/atyanqi.localhost";
~~~ 重启服务器
~~~ 在测试机上填写从服务器的IP,并使用nslookup测试
附录四:DNS缓存服务器
### --- DNS缓存服务器
~~~ 先关闭后服务器和客户机上的防火墙和selinux
~~~ #实验作用:
~~~ 加快解析速度,提高工作效率
### --- 实验软件:
dnsmasq
### --- 配置文案:
/etc/dnsmasq.conf
domian=域名 // 需要解析的域名
server=ip // 主DNS服务器IP
cache-size=15000 // 声明缓存条数
### --- 重启服务器
service dnsmasq restart
### --- 测试效果:
~~~ 在测试机上填写DNS缓存服务器的IP地址
附录五:智能DNS(分离解析)
### --- 智能DNS(分离解析)
### --- 实验原理:
~~~ DNS分离解析即将相同域名解析为不同的IP地址,
~~~ 显示网络中一些网站为了让用户有更好的体验效果解析速度更快,
~~~ 就把来自不同运营商的用户解析到相对应的服务器这样就大大提升了访问速度。
### --- 实验环境:
~~~ 一台内网测试机(单网卡)
~~~ 一台网关+DNS(双网卡)
~~~ 一台外网测试机(但网卡)
~~~ 一台web服务器(双网卡)
~~~ 先关闭服务器和客户机的防火墙和selinux
### --- 实验步骤:
~~~ 安装bind软件
~~~ 内核陪孩子文件开启路由转发,修改/etc/sysctl/conf
~~~ 修改主配置文件/etc/named.conf
~~~ 注意:不同的解析放在了各自的局域配置文件(便于区分和维护更新)
view lan {
match-clients { 192.168.10.0/24; };
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/lan.zones";
};
view wan {
match-clients { any; };
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/wan/zones";
};
#include "/etc/named.rfc1912.zones";
inclued "/etc/named.root.key";
### --- 生成自己定义的局域文件(方向解析省略掉了)
cp -a named.rfc1912.zones lan
cp -a named.rfc1912.zones wan
### --- 配置数据文件
~~~ 配置内网的正向解析文件
~~~ 配置外网的正向解析文件
### --- 重启服务
service named restart
### --- 效果测试
~~~ 内网客户端网卡配置
~~~ 将DNS和网关都指向为网关服务器的内网口地址
~~~ 外网客户端网卡配置
~~~ 将DNS和网关都指向为网关服务器的外网口地址
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
cdv007-network
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通