Linux系统管理实战-DNS
DNS
域名解析
DNS(domain name system)
解析方式
1.本地解析
/etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
2.使用DNS服务器 domain name server/service/system
了解 : 解析方式先后顺序 nsswitch.conf
客户端设置(指定)DNS:
#vim /etc/resolv.conf
域名空间
. 根域
---------------------------------------------------------------------------------------------------
(职能) com gov org edu (国家) cn us uk hk 顶级域名 (一级域名)
| |
qianfeng tigerfive 二级域名
| |
ftp www 主机名称
ftp.qianfeng.com
ftp是主机名称
qianfeng.com 域名
FQDN
Fully Qualified Domain Name 完全合格域名,比如:www.baidu.com.
查询方式
1.递归查询 直接把结果给客户端
2.迭代查询 如果知道结果,把结果告诉客户端,如果不知道结果会把查询转发到下一台DNS服务器
缓存dns服务器
域名服务器的权威性:
权威名称服务器
有区域配置文件
非权威名称服务器
cache only
dns解析过程
www.qianfeng.com
client拿到域名之后,首先访问/etc/hosts 文件
/etc/resolv.conf 里边记录dns 202.106.0.20
根
com
qianfeng
DNS服务器知识点:
SOA 记录:起始授权记录
NS 记录:指定管理某一个域的服务器是谁子域授权
A 记录:正向解析 把域名解析成ip
PTR 记录:反向解析 (自己作实验) 为保证mail服务器的安全性
MX 记录:指定邮件服务器 会添加A记录
CNAME:别名
泛域名解析
负载均衡
主从
主DNS master
有自己的区域配置文件
从DNS slave
没有自己的区域配置文件,他的区域配置文件是从主DNS缓存过来的
只缓存
也是一台dns,没有自己的区域配置文件
转发
有自己的区域配置文件,如果收到自己解析不了的请求会转发到其他DNS
全球13 台DNS 根服务器分布:
美国VeriSign 公司 2 台
网络管理组织IANA(Internet Assigned Number Authority) 1 台
欧洲网络管理组织RIPE-NCC(Resource IP Europeens Network Coordination Centre)1 台
美国PSINet 公司 1 台
美国ISI(Information Sciences Institute) 1 台
美国ISC(Internet Software Consortium) 1 台
美国马里兰大学(University of Maryland) 1 台
美国太空总署(NASA) 1 台
美国国防部 1 台
美国陆军研究所 1 台
挪威NORDUnet 1 台
日本WIDE(Widely Integrated Distributed Environments)研究计划 1 台
配置DNS - 正向解析
正向解析:由域名到IP
反向解析:由IP到域名
环境准备:
DNS服务端: 192.168.10.11
客户端: 192.168.10.10
1 安装软件
# yum install bind -y
2 修改主配置文件
# vim /etc/named.conf
options {
listen-on port 53 { any; };
allow-query { any; };
};
zone "mynet.com" IN { #正向解析"mynet.com"
type master; #类型为主区域
file "mynet.com.zone"; #指定区域数据文件为 mynet.com.zone ,
#数据配置文件 默认在 /var/named/ 目录下。文件>记录了 主机名和ip地址的映射关系
allow-update { none; };
};
3 编写区配置文件
# cd /var/named/
# cp -p named.localhost mynet.com.zone
$TTL 1D #有效解析记录的生存周期
@ IN SOA mynet.com. admin.mynet.com. ( # @ 表示变量,代表当前DNS 区域名
# mynet.com. 域名是要完整合格域名 "." 不可以少
# admin.mynet.com 管理员邮箱
0 ; serial # 更新序列号,可以是 10位数 以内的整数。主从服务器不可以一样
1D ; refresh # 刷新时间,重新下载地址数据的间隔
1H ; retry # 重试延时,下载失败后的重试间隔
1W ; expire # 失效时间,超过该时间仍无法下载则放弃
3H ) ; minimum # 无效解析记录的生存周期
NS mynet.com. # NS 用于记录当前区域的 DNS 名称, 使用完整合格域名
A 192.168.23.11 # 记录 主机的 IP 地址, 也就是 服务器IP 地址
www IN A 192.168.23.10 # 设置正向解析 www.mynet.com 对应的 IP
mail IN A 192.168.23.11 # 设置正向解析 mail.mynet.com 对应的 IP
ftp IN CNAME www # CNAME 使用别名 ,设置 ftp 是www 的别名
* IN A 192.168.23.12 # 泛域名解析,"*" 代表任意主机名 ,代表除了上面设置的主机名,其他主机名
资源记录:
NS - 用来指定操作的DNS服务器主机名称,NS记录是不允许用主机IP地址来表示的
SOA - 标记权威记录的开始
A - IPV4正向解析记录
AAAA - IPV6正向解析记录
MX - 邮件服务器主机记录
CNAME - 别名
PTR - 反向解析记录
主机名 A IPv4 的 IP 位址
主机名 AAAA IPv6 的 IP 位址
IP位址 PTR 主机名+域名
别名 CNAME 主机名
例:
www IN A 122.128.109.86
news IN AAAA CDCD:910A:2222:5498:8475:1FF1:3900:2027
86 IN PTR www.qf.net.
ftp IN CNAME www
4 检查文件是否有语法错误
# named-checkconf
# named-checkzone .com /var/named/.com.zone
5 启动服务
# systemctl start named
6 客户端验证
# vim /etc/resolv.conf
nameserver 192.168.10.11 #指定dns服务器
# host www.qf.com
www.qf.com has address 192.168.23.10
配置文件详细解析
1、软件安装
# yum install bind -y
bind:服务器端软件
-----------------------------------------------
bind-chroot:牢笼软件
主: /var/named/chroot/etc/named.conf
zone: /var/named/chroot/var/named/
2、配置文件
主配置文件:/etc/named.conf
区配置文件在:/var/named/
配置文件模板所在位置:
/usr/share/doc/bind-9.8.2/sample
3、使用的协议及端口
tcp 53:主要用于主从同步,需要的是可靠的数据传输
udp 53:主要用于客户端查询域名
4、配置文件简介
# grep -v ^\/ /etc/named.conf | grep -v ^$
options { #全局选项配置
listen-on port 53 { 127.0.0.1; }; #监听套接字
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; }; #允许哪些客户端进行查询,可写成any,172.16.0.0/16等形式
recursion yes; #允许递归查询
dnssec-enable yes; #启用dns安全策略
dnssec-validation yes; #启用dns的valid安全策略
bindkeys-file "/etc/named.iscdlv.key"; #密钥文件
managed-keys-directory "/var/named/dynamic"; #管理密钥的目录
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key"; #会话密钥文件
};
logging { #和日志等相关的
channel default_debug {
file "data/named.run"; #日志路径
severity dynamic; #动态
};
};
zone "." IN { #域设置
type hint; #域类型:根域
file "named.ca"; #域文件名称
};
include "/etc/named.rfc1912.zones"; #包含的子配置文件
include "/etc/named.root.key"; #包含的密钥文件
排错
c/s架构
client server
b/s架构
browser server
1.防火墙/selinux
硬件防火墙/云安全
端口转发 地址转发 统计服务流量
安全和性能成反比
100G网卡
100000M
(OPA)
2.配置
权限
配置文件
空格
. " ' `
顶格
3.网络能否通
4.服务状态
5.看错误日志
启动服务的时候
#systemctl status 服务名称 -l
#journalctl -xeu 服务名称
看/var/log/messages和服务本身的独立日志
6.问问题
干什么
7.配置
最新文章
- Foreach 原理
- Genesis2000用c#开发外挂
- android面试题
- 解决UITableView上计时器(Timer)的滑动问题
- 调试SQLSERVER (一)生成dump文件的方法
- 57. Jump Game &;&; Jump Game II
- Android事件分发机制完全解析,带你从源码的角度彻底理解
- gdb使用_转
- LR之Java虚拟用户
- C++程序设计实践指导1.3求任意整数降序数改写要求实现
- xmpp总结
- python实现断点续传下载文件
- Eclipse 快捷键和模板设置
- Grafana+Prometheus系统监控之webhook
- tornado+jsonrpc
- LSTM-自然语言建模
- 2017-2018-2 20155225《网络对抗技术》实验一 PC平台逆向破解
- Hibernate的使用技巧②
- 单台centos7.3 虚拟机实现主从复制和哨兵集群
- oracle系统包——DBMS_PIPE用法
热门文章
- 思科IPsecVPN建立
- Docker学习笔记-02 常用命令
- 解题报告:Codeforces 768B Code For 1
- 使用HttpClient4.5 使用MultipartEntityBuilder 类发送 multipart/formdata 格式给第三方接口 失败的原因
- 关闭 Microsoft Compatibility Telemetry
- drf从入门到飞升仙界 07
- LP1-3:一支钢笔的测试
- WDA学习(25):DateNavigator使用
- Python3之并发(四)---线程锁
- Qt的QString转换问题