linux的DNS企业级域名解析
一、什么是DNS服务?
DNS服务器是计算机域名系统 (Domain Name System 或Domain Name Service) 的缩写,它是由解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。其中域 名必须对应一个IP地址,而IP地址不一定有域名。域名系统采用类似目录树的等级结构。域名服务器为客户机/服务器模式中的服务器方,它主要有两种形式: 主服务器和转发服务器。将域名映射为IP地址的过程就称为“域名解析”。客户端上的 Stub 解析器 将查询发送至 /etc/resolv.conf 中的名称服务器
如果名称服务器对于请求的信息具有权威性 , 会将权威答案发
送至客户端否则 , 如果名称服务器在其缓存中有请求的信息 ,
则会将非权威答案发送至客户端
DNS协议运行在UDP协议之上,使用端口号53。
缓存 DNS 服务器:
- BIND 是最广泛使用的开源名称服务器
- 在 RHEL 中 , 通过 bind 软件包提供
- 防火墙开启端口 53/TCP 和 53/UDP
- BIND 的主配置文件是 /etc/named.conf
- /var/named 目录包含名称服务器所使用的其他数据文件
二、DNS的高速缓存
实验:
1.再真机上操作:
[root@localhost10 ~]# systemctl start firewalld //真机上开启火墙[root@localhost10 ~]# firewall-cmd --list-all //查看火墙列表
public (default, active)interfaces: br0 enp0s25 wlp3s0sources: services: dhcpv6-client ftp http sshports: masquerade: noforward-ports: icmp-blocks: rich rules: [root@localhost10 ~]# firewall-cmd --add-masquerade //添加伪装
[root@localhost10 ~]# firewall-cmd --list-all
public (default, active)interfaces: br0 enp0s25 wlp3s0sources: services: dhcpv6-client ftp http sshports: masquerade: yes //路由表添加成功forward-ports: icmp-blocks: rich rules:
此实验用虚拟机server来做服务机,用desktop做测试机
2.服务机设置: 主机连接wifi
1) 设置server虚拟机上的ip为110
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0TYPE=Ethernet
BOOTPROTO=none
IPADDR0=172.25.254.110
PREFIX0=24
NAME=eth0
ONBOOT=yes
DEVICE=eth0
GATEWAY=172.25.254.10[root@localhost ~]# systemctl restart network
2) 设置虚拟机上的外网解析
vim /etc/resolv.conf
[root@localhost ~]# vim /etc/resolv.conf //外网解析为114.114.114.114nameserver 114.114.114.114
3) 配置yum源
此实验用的是主机172.25.254.250
[root@localhost ~]# vim /etc/yum.repos.d/rhel_dvd.repo[rhel_dvd]
gpgcheck = 0
enabled = 1
baseurl = http://172.25.254.250/rhel7
name = Remote classroom copy of dvd[root@localhost ~]# yum clean all //清除yum源的缓存
4)下载dns
[root@localhost ~]# yum search dns //查看dns的软件
[root@localhost ~]# yum install bind.x86_64 -y //下载安装bind.x86_64
[root@localhost ~]# systemctl start named //开启dns服务
[root@localhost ~]# systemctl stop firewalld //关闭火墙
[root@localhost ~]# rpm -qc bind //查找DNS的配置文件
[root@localhost ~]# vim /etc/named.conf //打开DNS的配置文件11 listen-on port 53 { any; }; // 将 11行的 本地的回环接口改为所有人any
17 allow-query { any; }; // 将 17行 主机名称该为所有人any
18 forwarders { 114.114.114.114; }; //添加18行 如果是客户机访问服务机服务机不知道的情况下,访问114.114.114.114
32 dnssec-validation no; //认证备案修改为no
5) 重启网络服务和DNS服务
systemctl restart network //重启网络
systemctl restart named //重启DNS服务
3.客户机设置
1) 设置ip
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0
DNS1=172.25.254.110 //加 ip110 的DNS
BOOTPROTO=none
IPADDR0=172.25.254.210
PREFIX0=24
ONBOOT=yes
NAME=eth0
2) 重启网络
systemctl restart network
3) 测试
dig www.baidu.com
三、DNS的正向解析
用于域名到IP地址的映射,当DNS客户端请求解析某个域名时,DNS服务器通过正向查找,并返回给DNS客户端对应的IP地址。
1. 设定服务机的配置文件
vim /etc/named.conf 再DNS服务的配置文件中“//” "/*" 为注释的意思
2.添加域
vim /etc/named.rfc1912.zones
复制样本,修改为以下参数
zone "westos.com" IN {type master;file "westos.com.zone";allow-update { none; };
};
3.配置westos.com.zone文件
[root@localhost ~]# cd /var/named
[root@localhost ~]# cp -p named.localhost westos.com.zone
[root@localhost ~]# vim westos.com.zone
$TTL 1D
@ IN SOA dns.westos.com. root.westos.com. (0 ; serial1D ; refresh1H ; retry1W ; expire3H ) ; minimumNS dns.westos.com.
dns A 172.25.254.110
www A 172.25.254.120
music A 172.25.254.112[root@localhost ~]# systemctl restart named
4.重启服务
systemctl restart named
5.客户端测试
dig www.westos.com
四、DNS的反向解析
用于IP地址到域名的映射,当DNS客户端请求解析某个IP地址时,DNS服务器通过反向查找,并返回给DNS客户端对应的域名。
1.服务端修改配置为键参数
取消 /etc/named.conf 主配置文件中 的外网解析,该为本地解析(大约18行)
再修改配置文件 /etc/named.rfc1912.zones
[root@localhost ~]# vim /etc/named.rfc1912.zones
zone "254.25.172.in-addr.arpa" IN {type master;file "westos.com.inter";allow-update { none; };
};
2.创建反向解析的配置文件
[root@localhost ~]# cd /var/named/
[root@localhost named]# cp -p named.loopback westos.com.inter
[root@localhost named]# vim /var/named/westos.com.inter
$TTL 1D
@ IN SOA dns.westos.com. root.westos.com. (0 ; serial1D ; refresh1H ; retry1W ; expire3H ) ; minimumNS dns.westos.com.
dns A 172.25.254.110
10 PTR www.westos.com. ###PTR IP转换至名称
12 PTR music.westos.com.
[root@localhost named]# systemctl restart named
3.重启服务
systemctl restart named
4.客户机检测
dig -x 172.25.254.12
五、DNS的双向解析
DNS双向解析指内网与外网解析分离
1.创建外网域名编辑文件
[root@localhost ~]# cd /var/named/
[root@localhost named]# cp -p westos.com.zone westos.com.inter
[root@localhost named]# vim westos.com.inter
2.编辑外网配置文件
[root@localhost named]# cp -p /etc/named.rfc1912.zones /etc/named.rfc1913.zones
[root@localhost named]# vim /etc/named.rfc1912.zones
3.编辑配置文件使内外网分离
[root@localhost named]# vim /etc/named.conf49 view localnet {50 match-clients { localhost; };51 zone "." IN {52 type hint;53 file "named.ca";54 };55 56 include "/etc/named.rfc1912.zones";57 };58 59 view internet {60 match-clients { any; };61 zone "." IN {62 type hint;63 file "named.ca";64 };65 include "/etc/named.rfc1913.zones";66 };
4.设置dns
设置服务端(内网)的dns为172.25.254.110
设置客户端的(外网)dns为172.25.254.110
5.测试:
六、DNS的主从集群
辅助DNS主要是为了减轻主DNS服务器的工作负荷,可以配置多台辅助DNS服务器。
1.先注释掉主配置文件双向解析的参数
vim /etc/named.conf
2.辅助机设置
yum install bind -y 下载dns服务软件包
[root@localhost named]# vim /etc/named/conf 设置主配置文件11 listen-on port 53 { any; }; 将本地的回环接口改为所有人any
17 allow-query { any; }; 将主机名称该为所有人any
32 dnssec-validation no; 认证备案修改为no[root@localhost named]# vim /etc/named.rfc1912.zoneszone "westos.com" IN {type slave; 修改类型masters { 172.25.254.110; };file "slaves/westos.com.inter"; 文件指定地址allow-update { none; };
};[root@localhost named]# vim /etc/resolv.conf 设置他的DNS为110nameserver 172.25.254.110
[root@localhost named]# systemctl restart named 重启
3.服务机设置
[root@localhost named]# vim /etc/named.rfc1913.zoneszone "westos.com" IN {type master;file "westos.com.inter";allow-update { none; };also-notify { 172.25.254.210; }; 同步
};[root@localhost named]# vim /var/named/westos.com.inter 外网解析的配置文件$TTL 1D
@ IN SOA dns.westos.com. zhou.westos.com. (2018110302 ; serial2018110503 (每修改一次ip,就要变更一次数字,他的辅助设备才能同步) 1D ; refresh1D ; refresh1H ; retry1W ; expire3H ) ; minimumNS dns.westos.com.
dns A 192.168.0.110
news A 192.168.0.20
www CNAME shuilong.westos.com.
shuilong A 192.168.0.12
shuilong A 192.168.0.121
westos.com. MX 1 192.168.0.10.
[root@localhost named]# vim /etc/resolv.conf 外网解析
nameserver 172.25.254.20
[root@localhost named]# systemctl restart named 重启服务
测试辅助机:
七、DNS客户端的更新
1.服务机设置
[root@localhost named]# vim /etc/named.rfc1913.zones
zone "westos.com" IN {type master;file "westos.com.inter";allow-update { 172.25.254.77; }; 77主机可更新also-notify { 172.25.254.20; };
};
[root@localhost named]# systemctl restart named
[root@localhost named]# systemctl stop firewalld
[root@localhost named]# chmod 770 /var/named/
[root@localhost named]# setsebool -P named_write_master_zones 1 打开selinux对功能的开关
[root@localhost named]# cp -p /var/named/westos.com.inter /mnt 备份
2.77主机上的更新操作
3.检测:
[root@localhost named]# cd /var/named/
[root@localhost named]# ls
data named.ca named.localhost slaves westos.com.inter.jnl
dynamic named.empty named.loopback westos.com.inter westos.com.zone
4.删除刚才的更新
[root@foundation77~]# nsupdate
> server 172.25.254.110
> update del hello.westos.com
> send
服务机上删除文件
rm -fr westos.com.inter.jnl westos.com.inter
cp -p /mnt/westos.com.inter /var/named/ //恢复之前的文件
八、DNS的密钥更新
1.在服务机上
[root@localhost named]# cd /mnt
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST dnskey -a加密类型;-b加密长度;-n加密用途(dns解析);密钥名字
[root@localhost mnt]# ls
Kdnskey.+157+09137.key Kdnskey.+157+09137.private
[root@localhost mnt]# cat Kdnskey.+157+09137.key
dnskey. IN KEY 512 3 157 CEZZCDhlrmIk26H3ZEKUGA==
[root@localhost mnt]# cp -p /etc/rndc.key /etc/westos.key
[root@localhost mnt]# vim /etc/westos.key
key "dnskey" { 加密名字algorithm hmac-md5; 加密类型secret "CEZZCDhlrmIk26H3ZEKUGA==";
};
[root@localhost mnt]# vim /etc/named.conf 将锁与dns服务关联
43行 include "/etc/westos.key";
[root@localhost mnt]# vim /etc/named.rfc1913.zones
allow-update { key dnskey; };
[root@localhost mnt]# systemctl restart named
[root@localhost mnt]# scp Kdnskey.+157+09137.* root@172.25.254.77:/mnt/
2.在指定的主机上更新
[root@localhost mnt]# cd /mnt
[root@localhost mnt]# timedatectl set-timezone Asia/Shanghai
[root@localhost mnt]# vim /etc/chrony.conf
server 172.25.254.77 iburst
[root@localhost mnt]# systemctl restart chronyd //在进行密钥更新前先要进行时间同步
[root@localhost mnt]# nsupdate -k Kdnskey.+157+03137.private 用钥匙更新
> server 172.25.254.110
> update add hello.westos.com 86400 A 172.25.254.112 添加hello.westos.com域名对应IP为172.25.254.112
> send
>quit
[root@localhost mnt]#
3.测试
dig hello.westos.com //测试实验是否成功
linux的DNS企业级域名解析相关推荐
- 3.Linux网络DNS域名解析服务
1.DNS系统的作用及类型 DNS系统的作用 正向解析:根据域名查找对应的IP地址 反向解析:根据IP地址查找对应的域名 DNS系统的分布式数据结构 全球13台DNS根服务器分布: 美国VeriSig ...
- Linux网络 DNS域名解析服务
目录 1. DNS域名解析服务 (1)DNS系统的作用及类型 (2)缓存域名服务器 (3)DNS系统类型 (4)BIND的安装和配置文件 (1)BIND软件安装 (2)DNS的分布式互联网解析库 (5 ...
- linux下DNS配置及域名解析服务
一.DNS(Domain Name System,域名系统) 因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通过主机名, ...
- 云服务器dns配置文件,linux服务器dns配置文件
linux服务器dns配置文件 内容精选 换一换 裸金属服务器硬件损坏,SDI卡损坏等原因,导致裸金属服务器无法正常使用时,您可以申请裸金属服务器重建功能.裸金属服务器重建过程不是自动化的,您需要联系 ...
- 如何为linux服务器配置DNS解析?
点击上方"方志朋",选择"设为星标" 做积极的人,而不是积极废人 来源:编程三分钟 ID:coding3min 作者:小熊爱编程 本文建立在已经搭建好DNS服务 ...
- Linux网络DNS分离解析
Linux网络DNS拓展:分离解析 一.配置网关服务器搭建DNS分离解析 1.为网关服务器配置双网卡 2.安装bind软件包 3.修改主配置文件 4.修改区域配置文件 5.修改区域数据配置文件 6.启 ...
- linux下DNS配置详解
linux下DNS配置详解 DNS 是域名系统 (Domain Name Server) 的缩写,该系统用于命名组织到域层次结构中的计算机和网络服务.在Internet上域名与IP地址之间是一一对应的 ...
- 一文看懂:网址,URL,域名,IP地址,DNS,域名解析
今天给大家梳理一篇关于网址.URL.IP地址.域名.DNS.域名解析的白话长文,并以简单的提问-解答形式让读者更加深刻理解网址.URL.IP地址.域名.DNS.域名解析,希望有助于读者的学习,面试和工 ...
- linux的dns怎么配置正向区域文件,linux系统下部署DNS正向解析
DNS服务概述: DNS(Domain Name System)域名系统,能够提供域名与IP地址的解析服务. 正向解析 正向解析是指域名到IP 地址的解析过程. 部署DNS正向解析 DNS服务的三个配 ...
最新文章
- 小技巧之chm文件无法显示
- 【数据中台】你的企业是否需要建设数据中台?
- c语言多线编程程序,C语言之多线编程 来看看?
- MySQL高级 - MyISAM特性
- primeNG DataTable中Templating ng-template标签报错
- php怎么查自己的文件编码,php检测文件编码的方法示例
- Jeecg-P3 1.0.1版本发布,轻量级微服务框架
- .Net Core下使用MQTT协议直连IoT平台
- android系统功耗优化(1)---高通平台功耗优化的基础知识
- 缝衣间走出来的创始人,他的开源软件公司被 340 亿美元收购了
- idea卡顿的解决方法_《王者荣耀》卡顿及无法下载资源解决方法说明 5周年祈愿活动出错了怎么办...
- WPF:Documents文档--Annomation批注(1)
- SecureCRT连接Ubuntu,centos失败解决
- SecureCRT下载和破解
- 为什么远程计算机后会黑屏,解决Win10电脑远程桌面黑屏的问题
- 万娟 白话大数据和机械学习_白话大数据与机器学习 (高扬著) 带书签目录 完整pdf扫描版[71MB]...
- Web 前端必会的 PhotoShop 技能
- sql及DDL语句操作
- Scene Management --- Culling
- Linux学习——文件权限及文件查找
热门文章
- Python 與數據資料分析3.1-資料視覺化-基本圖表類型
- Linux Debian利用Dockefile将Python的py文件项目代码打包为Docker Podman镜像
- 吾爱破解2023安卓中级题
- 如何保障员工的培训效果
- 树莓派 python 蜂鸣器_树莓派3b强行驱动无源蜂鸣器
- python编码转换在线_Python字符编码转换Unicode和str
- python玩转android_Python Xplorer
- ProgressBar(进度条)-常用属性讲解与基础实例
- 微博依靠什么重返中国互联网中心舞台?
- SQL索引建立原则和使用