Linux:DNS服务器搭建
程序员文章站
2022-05-18 20:40:34
DNS简介 DNS(Domain Name System)域名系统: 是一种采用客户端/服务器机制,负责实现计算机名称与IP地址转换的系统。DNS作为一种重要的网络服务,既是国际互联网工作的基础,同时在企业内部网络中也得到了广泛地应用。 DNS服务器的作用 正向解析:根据主机名称(域名)查找对应的I ......
dns简介
dns(domain name system)域名系统:
是一种采用客户端/服务器机制,负责实现计算机名称与ip地址转换的系统。dns作为一种重要的网络服务,既是国际互联网工作的基础,同时在企业内部网络中也得到了广泛地应用。
dns服务器的作用
正向解析:根据主机名称(域名)查找对应的ip地址
反向解析:根据ip地址查找对应的主机域名
dns系统的分布式数据结构
dns查询方式
递归查询:大多数客户机向dns服务器解析域名的方式 迭代查询:大多数dns服务器向其他dns服务器解析域名的方式
dns服务器的类型
缓存域名服务器
缓存域名服务器:也称唯高速缓存服务器,通过向其他域名服务器查询获得域名->ip地址记录,将域名查询结果缓存到本地,提高重复查询时的速度。
主域名服务器
主域名服务器:特定dns区域的官方服务器,具有唯一性,负责维护该区域内所有域名->ip地址的映射记录。
从域名服务器
从域名服务器:也称为辅助域名服务器,其维护的域名->ip地址记录来源于主域名服务器。
bind域名服务基础
bind(berkeley internet name daemon)伯克利internet域名服务。 官方站点:https://www.isc.org/ bind服务器端程序 主要执行程序:/usr/sbin/named 服务脚本:/etc/init.d/named 默认监听端口:53 主配置文件:/etc/named.conf 保存dns解析记录的数据文件位于:/var/named/chroot/var/named/
配置文件分析
/etc/named.conf
options { #选项 listen-on port 53 { 127.0.0.1; }; #服务监听端口为53 listen-on-v6 port 53 { ::1; }; #服务监听端口为53(ipv6) 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; }; #允许连接的客户机 recursion yes; #递归查找 dnssec-enable yes; #dns加密 dnssec-validation yes; #dns加密高级算法 dnssec-lookaside auto; #dns加密的相关东西 /* path to isc dlv key */ bindkeys-file "/etc/named.iscdlv.key"; #加密用的key(私钥公钥的加密,很强) }; logging { #日志 channel default_debug { file "data/named.run"; #运行状态文件 severity dynamic; #静态服务器地址(根域) }; }; zone "." in { #根域解析 type hint; master slave file "named.ca"; #根域配置文件 }; include "/etc/named.rfc1912.zones"; #扩展配置文件(新开域名)
/etc/named.rfc1912.zones
zone "localhost.localdomain" in { #本地主机全名解析 type master; #类型为主域 file "named.localhost"; #域配置文件(文件存放在/var/named目录中) allow-update { none; }; #不允许客户端更新 }; zone "localhost" in { #本地主机名解析 type master; file "named.localhost"; allow-update { none; }; }; zone ".0.ip4.arpa" in { #ipv6本地地址反向解析 type master; file "named.loopback"; allow-update { none; }; }; zone "1.0.0.127.in-addr.arpa" in { #本地地址反向解析 type master; file "named.loopback"; allow-update { none; }; }; zone "0.in-addr.arpa" in { #本地全网地址反向解析(和/域更新用的) type master; file "named.empty"; allow-update { none; }; };
/var/named/named.localhost
$ttl 1d #更新为最长1天 @(使用域的域名) in soa(权威dns服务器) @(权威dns服务器的名称) rname.invalid.(rname@invalid的邮件) ( 0 ; serial #(更改号)十位数的序列号 1d ; 更新频率 1h ; 失败重新尝试时间 1w ; 失效时间 3h ) ; 缓存时间 ns(域名服务器) @(域名服务器名称) a(正向解析记录) 127.0.0.1(正向解析的ip) aaaa(ipv6正向解析) ::1(ipv6正向解析的ip)
搭建dns服务器
安装dns服务器
安装bind程序包
yum install bind
启动服务
systemctl start named.service
设置自启动状态
systemctl enable named.service
配置文件
配置主配置文件
vim /etc/named.conf 改动为 listen-on-v6 port 53 { any; }; allow-query { any; };
配置zones文件
正向解析配置
添加 正向解析 zone "lzy.com." in { type master; file "lzy.com.zone"; allow-update { none; }; };
反向解析配置
添加反向解析 zone "134.168.192.in-addr.arpa" in { tpye master; file "134.168.192.zone"; allow-update { none; }; };
配置区域配置文件
复制文件
cp /var/named/named.empty /var/named/lzy.com.zone cp /var/named/named.empty /var/named/134.192.168.zone
修改权限
chown :named zlt.com.zone
正向解析配置
为excesoft.com域名设计正向解析,将/var/named/named.empty复制重命名为excesoft.com.zone, 修改文件属组为named,并对其内容进行修改 $ttl 3h @ in soa lzy.com. root.lzy.com. ( 0 ; serial 1d ; refresh 1h ; retry 1w ; expire 3h) ; minimum ns dns.lzy.com. dns a 192.168.134.139 www a 192.168.134.139
反向解析配置
为excesoft.com域名设计反向解析,将/var/named/named.empty复制重命名为137.168.192.zone,修 改文件属组为named,并对其内容进行修改。
配置网卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33 bootproto=static ipaddr1=192.168.134.139 netmask=255.255.255.0 gateway=192.168.134.2 dns1=192.168.134.139
启动dns服务器
systemctl start named.service
检查配置文件
named-checkconf
配置客户端
修改配置文件
修改配置文件:#vim /etc/resolv.conf。 写入以下内容: excesoft. nameserver 192.168.137.22
测试dns服务器
测试dns服务器 在客户端计算机上使用命令 nslookup进行测试。
上一篇: 计算π的近似值
下一篇: Android.mk语法说明