当前位置: 首页 > news >正文

DNS 服务器与 DHCP 服务器详解及配置指南

文章目录

  • DNS 服务器与 DHCP 服务器详解及配置指南
    • 一、DNS 服务器
      • 1. DNS 服务基础
        • 1.1 DNS 层次结构
        • 1.2 DNS 资源记录
      • 2. 配置权威名称服务器(BIND)
        • 2.1 准备工作
        • 2.2 配置 BIND 核心参数
          • 2.2.1 定义地址匹配列表(ACL)
          • 2.2.2 配置访问控制
        • 2.3 配置正向区域文件(liujn.cloud.zone)
        • 2.4 配置反向区域文件(10.1.8.zone)
        • 2.5 启动并验证
    • 二、DHCP 服务器
      • 1. DHCP 服务器部署(基于 dhcpd)
        • 1.1 安装与基础配置
        • 1.2 基于 MAC 地址预留 IP

DNS 服务器与 DHCP 服务器详解及配置指南

一、DNS 服务器

DNS(Domain Name System,域名系统)是互联网的核心服务之一,用于将易于记忆的域名转换为计算机可识别的 IP 地址,同时也是存储网络主机和资源目录的分层命名系统。

1. DNS 服务基础

1.1 DNS 层次结构

DNS 采用分层结构,从上到下依次为:

  • 根域:层次结构最顶层,用.表示;
  • 顶级域:如.com.net.org等;
  • 二级域:如liujn.cloudredhat.com,由组织或个人使用;
  • 子域:二级域的子树,如lab.liujn.cloudliujn.cloud的子域。
    在这里插入图片描述
1.2 DNS 资源记录

DNS 资源记录(RR)是 DNS 区域中存储信息的基本单位,格式为:

owner-name			TTL 	class 	type 	data
# 示例:server.liujn.cloud. 	300 	IN 		A 		192.168.1.10

各字段含义:

  • owner-name:资源记录对应的名称;
  • TTL:缓存时间(秒),表示记录在 DNS 解析器中缓存的时长;
  • class:几乎均为IN(互联网);
  • type:记录类型,常见类型如下:
记录类型作用示例
A将主机名映射到 IPv4 地址server.liujn.cloud. 86400 IN A 172.25.254.254
AAAA将主机名映射到 IPv6 地址a.root-servers.net. 604800 IN AAAA 2001:503:ba3e::2:30
CNAME将一个名称别名到另一个规范名称(需最终解析为 A/AAAA 记录)www-dev.liujn.cloud. 30 IN CNAME lab.liujn.cloud.
MX指定接收域名邮件的邮件服务器(优先级:数字越小越优先)liujn.cloud. 86400 IN MX 10 mail.liujn.cloud.
PTR将 IP 地址反向映射到主机名(用于反向解析)10.8.1.10.in-addr.arpa. 3600 IN PTR server.liujn.cloud.
SOA起始授权机构记录,每个区域必须包含,定义区域基本信息liujn.cloud. 86400 IN SOA dns.liujn.cloud. root.dns.liujn.cloud. (2024010101 3600 300 604800 60)
NS指定区域的权威名称服务器liujn.cloud. 86400 IN NS dns.liujn.cloud.

2. 配置权威名称服务器(BIND)

权威名称服务器负责存储并提供特定域名的 DNS 记录,以下以liujn.cloud域为例,基于 BIND 工具配置。

2.1 准备工作
  1. 安装 BIND:dnf install -y bind bind-utils
  2. 创建区域文件目录并设置权限:
touch /var/named/liujn.cloud.zone  # 正向区域文件(域名→IP)
touch /var/named/10.1.8.zone       # 反向区域文件(IP→域名)
chmod 640 /var/named/*.zone        # 权限设置
chown root:named /var/named/*.zone # 属主属组设置
chcon -t named_zone_t /var/named/*.zone  # SELinux标签(若启用)
2.2 配置 BIND 核心参数

BIND 主要配置文件为/etc/named.conf,需完成以下关键配置:

2.2.1 定义地址匹配列表(ACL)

在配置文件开头使用acl指令定义 IP 地址或网络列表,简化访问控制配置:

[root@server ~]# vim /etc/named.conf
#2.1 增加监听iplisten-on port 53 { 127.0.0.1;10.1.8.8; };#2.2 放行客户端allow-query     { localhost;10.1.8.0/24; };// allow-query     { localhost;any; };#2.3 关闭安全认证dnssec-enable yes;dnssec-validation no;#2.4 最后添加正向解析和反向解析配置zone "liujn.cloud." IN {type master;file "liujn.cloud.zone";
};zone "8.1.10.in-addr.arpa" IN {type master;file "10.1.8.zone";
};

BIND 内置四个预定义 ACL:

ACL描述
none不匹配任何主机
any匹配所有主机
localhost匹配 DNS 服务器自身的所有 IP 地址
localnets匹配 DNS 服务器所在的本地子网
2.2.2 配置访问控制

options块中配置客户端访问权限:

options {# 监听地址(本地回环及服务器IP)listen-on port 53 { 127.0.0.1; 10.1.8.8; };# 允许所有主机查询(公开权威服务器需设置)allow-query { any; };# 权威服务器建议关闭递归,防止攻击recursion no;# 限制区域传输(仅允许从服务器和本地主机)allow-transfer { trusted-nets; localhost; };
};
2.3 配置正向区域文件(liujn.cloud.zone)

正向区域文件用于将域名映射到 IP 地址及其他记录,示例:

$TTL 3600  # 默认TTL为1小时
@ IN SOA dns.liujn.cloud. root.dns.liujn.cloud. (2024010101  # 序列号(每次修改需递增)3H          # 刷新时间(从服务器向主服务器同步频率)15M         # 重试时间(刷新失败后重试间隔)1W          # 过期时间(同步失败后停止用旧数据的时间)15M         # 否定缓存时间(记录不存在时的缓存时长)
)IN NS dns.liujn.cloud.  # 区域的权威DNS服务器
dns     IN A 10.1.8.8          # dns.liujn.cloud的IPv4地址
server  IN A 10.1.8.8          # server.liujn.cloud的IPv4地址
client  IN A 10.1.8.9          # client.liujn.cloud的IPv4地址
student IN CNAME client.liujn.cloud.  # student别名指向client
@       IN MX 10 mail.liujn.cloud.   # 邮件服务器,优先级10
mail    IN A 10.1.8.253         # mail.liujn.cloud的IPv4地址
www     30 IN A 10.1.8.200      # 自定义TTL为30秒的A记录
  • @代表当前区域(即liujn.cloud);
  • 未以.结尾的名称会自动拼接区域名(如dns等价于dns.liujn.cloud.)。
2.4 配置反向区域文件(10.1.8.zone)

反向区域文件用于将 IP 地址映射到域名,IPv4 反向区域格式为x.x.x.in-addr.arpa(IP 段反转),示例(对应 10.1.8.0/24 网段):

$TTL 3600
@ IN SOA dns.liujn.cloud. root.dns.liujn.cloud. (20240101013H15M1W15M
)IN NS dns.liujn.cloud.
10      IN PTR server.liujn.cloud.  # 10.1.8.8 → server.liujn.cloud
10      IN PTR dns.liujn.cloud.     # 10.1.8.8 → dns.liujn.cloud(同一IP可对应多个域名)
11      IN PTR client.liujn.cloud.  # 10.1.8.9 → client.liujn.cloud
11      IN PTR student.liujn.cloud. # 10.1.8.9 → student.liujn.cloud(CNAME对应的PTR)
200     IN PTR www.liujn.cloud.     # 10.1.8.200 → www.liujn.cloud
253     IN PTR mail.liujn.cloud.    # 10.1.8.253 → mail.liujn.cloud
2.5 启动并验证
  1. 配置/etc/named.conf,添加区域声明后启动服务:
systemctl start named
systemctl enable named
# 使用 getent 尝试解析相关域名
[root@client ~ ]# getent hosts student
10.1.8.9       client.liujn.cloud student.liujn.cloud
[root@client ~ ]# getent hosts dns
10.1.8.8       dns.liujn.cloud
[root@client ~ ]# getent hosts www
10.1.8.200      www.liujn.cloud
  1. 验证:使用dig工具查询记录是否生效:
dig A server.liujn.cloud @10.1.8.8  # 查询A记录
dig PTR 10.8.1.10.in-addr.arpa @10.1.8.8  # 查询反向PTR记录

反向查询失败(缺少 PTR 记录)

  • 影响:SSH 连接延迟、邮件服务器拒绝连接等。
  • 解决:在反向区域文件中添加对应的 PTR 记录(如11 IN PTR client.liujn.cloud.)。
  1. 权威服务器答案不一致
    • 原因:从服务器未同步主服务器的最新区域数据。
    • 排查:
      • 检查 SOA 记录序列号(主服务器需大于从服务器);
      • 确认主服务器允许区域传输(allow-transfer配置);
      • 检查主从服务器网络连通性及防火墙规则。
  2. FQDN 格式错误
    • 错误示例:区域文件中 FQDN 未以.结尾(如server.liujn.cloud而非server.liujn.cloud.)。
    • 后果:自动拼接区域名导致解析错误(如server.liujn.cloud.liujn.cloud)。
    • 解决:确保 FQDN 以.结尾。
  3. 通配符记录导致的误解析
    • 若存在*.liujn.cloud. IN A 172.25.254.254,删除具体记录后仍会返回通配符 IP。
    • 解决:按需删除或调整通配符记录。

二、DHCP 服务器

DHCP(Dynamic Host Configuration Protocol)用于自动分配 IP 地址、子网掩码、网关、DNS 等网络参数,简化网络管理。

1. DHCP 服务器部署(基于 dhcpd)

1.1 安装与基础配置
  1. 安装:dnf install -y dhcp-server
  2. 配置文件(/etc/dhcp/dhcpd.conf)示例:
subnet 10.1.8.0 netmask 255.255.255.0 {range 10.1.8.81 10.1.8.130;  # IP地址池范围option domain-name-servers 223.5.5.5, 8.8.8.8;  # DNS服务器option domain-name "liujn.cloud";  # 域名option routers 10.1.8.2;  # 网关option broadcast-address 10.1.8.255;  # 广播地址default-lease-time 600;  # 默认租期(10分钟)max-lease-time 7200;  # 最大租期(2小时)
}
  1. 启动服务:
systemctl start dhcpd
systemctl enable dhcpd
1.2 基于 MAC 地址预留 IP

为特定设备分配固定 IP,在/etc/dhcp/dhcpd.conf中添加:

# 查看客户端MAC地址
[root@client ~]# ip link show ens33
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000link/ether 00:0c:29:26:13:b5 brd ff:ff:ff:ff:ff:ff# 配置固定IP
host client.linux.fun {hardware ethernet 00:0c:29:26:13:b5;  # 客户端MAC地址fixed-address 10.1.8.30;  # 分配的固定IP
}

重启服务生效:systemctl restart dhcpd

http://www.dtcms.com/a/405810.html

相关文章:

  • 中国建设银行官网站招聘频道如何不花钱做网站
  • 恢复快照(需先暂停 / 关闭虚拟机,避免数据不一致)
  • 九、OpenCV中视频的录制
  • ASP.NET网站建设实战企业网页模板图片
  • 分布式机器人多机协同巡检系统设计
  • 滑动窗口题目:统计「优美子数组」
  • list 迭代器:C++ 容器封装的 “行为统一” 艺术
  • 专题:2025年AI Agent智能体行业洞察报告|附110+份报告PDF、数据仪表盘汇总下载
  • docker部署使用
  • 信息安全基础知识:05物理与环境安全
  • 【双机位A卷】华为OD笔试之【队列】双机位A-篮球游戏【Py/Java/C++/C/JS/Go六种语言】【欧弟算法】全网注释最详细分类最全的华子OD真题题解
  • 考研复习-线性代数-第二章-矩阵
  • wordpress主题样式表绵阳做seo网站公司
  • Answer+cpolar:企业知识共享的远程协作方案
  • 在SSL证书是有效的前提下,依旧显示“资源不安全
  • 鸿蒙NEXT系统Picker全解析:安全高效的用户资源访问之道
  • Gin + JWT 认证机制详解:构建安全的Go Web应用
  • VS要求的.NET 9 SDK需求、安装注意事项及VS版本搭配
  • SSL证书安全的几个问题
  • 4种安全方法:将一加手机联系人传输到电脑
  • 网站建设盐城北安网站建设
  • Guidde:AI驱动的视频文档创建工具
  • 29.Linux防火墙管理
  • 记账本|基于SSM的家庭记账本小程序设计与实现(源码+数据库+文档)
  • DHCP 服务器
  • K8s学习笔记(七) yaml
  • K8S的StorageClass使用节点本地LVM逻辑卷怎么进行PVC扩容
  • 软件开发公司如何通过 UI 设计服务打造差异化竞争力
  • 【源码剖析】5-生产者-RecordAccumulator分析
  • PHP编程基础