> 技术文档 > 二十八、【Linux系统域名解析】DNS安装、子域授权、缓存DNS、分离解析、多域名解析

二十八、【Linux系统域名解析】DNS安装、子域授权、缓存DNS、分离解析、多域名解析


DNS服务深度解析:缓存、分离与多域名管理

    • 一、DNS服务架构全景
      • DNS核心组件关系
      • DNS服务器类型对比
    • 二、基础DNS服务配置
      • 1. Bind9核心配置文件
      • 2. 区域文件结构解析
        • 区域文件记录类型表
    • 三、子域授权与分层解析
      • 子域授权原理
      • 子域配置流程
        • 1. 父域配置
        • 2. 子域配置
      • 递归与迭代查询对比
    • 四、缓存DNS实战配置
      • 缓存DNS工作原理
      • 配置示例
      • 缓存策略优化表
    • 五、分离解析技术详解
      • 分离解析应用场景
      • 基础分离解析配置
      • 区域文件示例
    • 六、多域名分离解析实战
      • 多域名分离架构
      • 配置模板
      • 区域文件内容

一、DNS服务架构全景

DNS核心组件关系

#mermaid-svg-vkMQAMWQblIjCi8W {font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-vkMQAMWQblIjCi8W .error-icon{fill:#552222;}#mermaid-svg-vkMQAMWQblIjCi8W .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-vkMQAMWQblIjCi8W .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-vkMQAMWQblIjCi8W .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-vkMQAMWQblIjCi8W .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-vkMQAMWQblIjCi8W .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-vkMQAMWQblIjCi8W .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-vkMQAMWQblIjCi8W .marker{fill:#333333;stroke:#333333;}#mermaid-svg-vkMQAMWQblIjCi8W .marker.cross{stroke:#333333;}#mermaid-svg-vkMQAMWQblIjCi8W svg{font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-vkMQAMWQblIjCi8W .label{font-family:\"trebuchet ms\",verdana,arial,sans-serif;color:#333;}#mermaid-svg-vkMQAMWQblIjCi8W .cluster-label text{fill:#333;}#mermaid-svg-vkMQAMWQblIjCi8W .cluster-label span{color:#333;}#mermaid-svg-vkMQAMWQblIjCi8W .label text,#mermaid-svg-vkMQAMWQblIjCi8W span{fill:#333;color:#333;}#mermaid-svg-vkMQAMWQblIjCi8W .node rect,#mermaid-svg-vkMQAMWQblIjCi8W .node circle,#mermaid-svg-vkMQAMWQblIjCi8W .node ellipse,#mermaid-svg-vkMQAMWQblIjCi8W .node polygon,#mermaid-svg-vkMQAMWQblIjCi8W .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-vkMQAMWQblIjCi8W .node .label{text-align:center;}#mermaid-svg-vkMQAMWQblIjCi8W .node.clickable{cursor:pointer;}#mermaid-svg-vkMQAMWQblIjCi8W .arrowheadPath{fill:#333333;}#mermaid-svg-vkMQAMWQblIjCi8W .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-vkMQAMWQblIjCi8W .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-vkMQAMWQblIjCi8W .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-vkMQAMWQblIjCi8W .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-vkMQAMWQblIjCi8W .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-vkMQAMWQblIjCi8W .cluster text{fill:#333;}#mermaid-svg-vkMQAMWQblIjCi8W .cluster span{color:#333;}#mermaid-svg-vkMQAMWQblIjCi8W div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-vkMQAMWQblIjCi8W :root{--mermaid-font-family:\"trebuchet ms\",verdana,arial,sans-serif;} 缓存查询 递归查询 子域授权 转发查询 区域数据 客户端 本地DNS 缓存DNS 权威DNS 子域DNS 区域文件

DNS服务器类型对比

类型 功能 数据来源 查询响应 适用场景 权威DNS 管理域名解析 本地区域文件 权威应答 域名注册商 缓存DNS 加速查询 缓存记录 非权威应答 企业内网 转发DNS 代理查询 上游服务器 非权威应答 小型网络 递归DNS 完整解析 各级服务器 最终答案 ISP服务

二、基础DNS服务配置

1. Bind9核心配置文件

# /etc/named.conf 关键配置options { directory \"/var/named\"; # 区域文件目录 listen-on port 53 { any; }; # 监听设置 allow-query { any; }; # 访问控制};zone \"lol.com\" IN { # 主区域声明 type master; file \"lol.com.zone\"; # 区域文件};

2. 区域文件结构解析

; /var/named/lol.com.zone$TTL 1D@ IN SOA ns1.lol.com. admin.lol.com. ( 2023090101 ; serial 1H ; refresh 15M ; retry 1W ; expire 3H ) ; minimum NS ns1.lol.com. ; 域名服务器记录ns1 A 192.168.4.7 ; 服务器地址www A 1.2.3.4 ; 主机记录
区域文件记录类型表
记录类型 作用 示例 说明 SOA 起始授权 ns1.lol.com. admin.lol.com. 区域管理信息 NS 域名服务器 ns1.lol.com. 必需记录 A IPv4地址 www A 1.2.3.4 主机记录 CNAME 别名 web CNAME www 域名别名 MX 邮件交换 @ MX 10 mail.lol.com. 邮件服务 TXT 文本记录 @ TXT “v=spf1…” 验证用途

三、子域授权与分层解析

子域授权原理

子域配置流程

1. 父域配置
; lol.com.zone 添加子域授权bj.lol.com. NS ns.bjns.bj A 192.168.4.207
2. 子域配置
# /etc/named.confzone \"bj.lol.com\" IN { type master; file \"bj.lol.com.zone\";};# /var/named/bj.lol.com.zone@ IN SOA ns.bj.lol.com. admin.bj.lol.com. (...) NS ns.bj.lol.com.ns A 192.168.4.207www A 2.2.2.2

递归与迭代查询对比

特性 递归查询 迭代查询 混合查询 响应方式 最终答案 下一个服务器 部分答案 客户端负载 低 高 中 服务器负载 高 低 中 响应速度 慢 快 中等 典型场景 客户端查询 服务器间查询 现代DNS

四、缓存DNS实战配置

缓存DNS工作原理

配置示例

# /etc/named.confoptions { forwarders { 192.168.4.7; }; # 指定转发服务器 forward only; # 仅转发模式};

缓存策略优化表

参数 默认值 优化值 作用 风险 max-cache-size 90%内存 1G 限制缓存大小 可能溢出 max-cache-ttl 1周 86400 最大缓存时间 数据过期 min-cache-ttl 0 300 最小缓存时间 频繁查询 cleaning-interval 60分钟 30分钟 清理间隔 CPU消耗

五、分离解析技术详解

分离解析应用场景

场景 配置方式 优势 案例 地理位置 IP段区分 就近访问 CDN加速 内外网 内网/外网IP 安全隔离 企业应用 负载均衡 多组解析 流量分配 大型网站 灰度发布 用户分组 逐步发布 应用更新

基础分离解析配置

# /etc/named.confview \"internal\" { match-clients { 192.168.4.0/24; }; zone \"lol.com\" { type master; file \"lol.com.internal\"; };};view \"external\" { match-clients { any; }; zone \"lol.com\" { type master; file \"lol.com.external\"; };};

区域文件示例

; lol.com.internalwww A 192.168.4.100; lol.com.externalwww A 1.2.3.4

六、多域名分离解析实战

多域名分离架构

配置模板

view \"internal\" { match-clients { 192.168.4.0/24; }; zone \"lol.com\" { type master; file \"lol.com.int\"; }; zone \"qq.com\" { type master; file \"qq.com.int\"; };};view \"external\" { match-clients { any; }; zone \"lol.com\" { type master; file \"lol.com.ext\"; }; zone \"qq.com\" { type master; file \"qq.com.ext\"; };};

区域文件内容

; lol.com.intwww A 192.168.4.100; qq.com.intwww A 192.168.4.200; lol.com.extwww A 1.2.3.4; qq.com.extwww A 10.20.30.40