DNS域名解析服务

什么是DNS,Domain Name Service的缩写,也叫域名服务器,用来将已知的域名解析为IP地址或 将已知的IP地址解析为域名,今天我们就来了解一下关于DNS服务器的配置和使用吧。

工作原理

客户端如何解析域名呢,一般域名及其对应的IP地址都会存储在本地DNS缓存、本地hosts文件、其他的DNS服务器中,当我们需要通过域名访问IP时就会通过这些路径查找对应的IP或域名而查询也分为两种包括递归查询和迭代查询。递归查询直接给出解析结果,客户机与本地DNS服务器之间的查询。迭代查询没有给出解析结果,本地DNS服务器与根等其他DNS服务器之间的查询。

服务器配置

基础配置

上面我们介绍了DNS服务器的工作原理,大家应该能猜到我们接下来要干些什么了,由于其他的DNS服务器我们无法干涉,hosts文件也不必多说,所以我们就对DNS本地缓存进行配置,那么想要对DNS缓存进行配置,首先我们要知道DNS缓存在什么地方,这样我们才能对他进行配置。

在安装了bind(DNS服务安装包)后会生成一些文件,我们的主配置文件即/etc/named.conf里面包含了基本的DNS服务配置

options {

listen-on port 53 { 127.0.0.1; }; (监听的地址和端口号)

listen-on-v6 port 53 { ::1; };(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";

recursing-file "/var/named/data/named.recursing";

secroots-file "/var/named/data/named.secroots";

allow-query { localhost; }; (能够访问的客户端)

/etc/named.rfc1912.zones

解析记录文件,/etc/named.rfc1912.zones

zone "localhost.localdomain" IN { 正向解析区域文件的定义

type master; 服务器的类型,master或者slave

file "named.localhost"; 区域文件的文件路径及名称

allow-update { none; }; 是否允许对该区域文件的更新

};

zone "1.0.0.127.in-addr.arpa" IN { 反向解析区域文件

type master;

file "named.loopback";

allow-update { none; };

};

这么一来DNS的主配置就完成了,接下来我们就通过对解析记录进行填写就相当于在"通行名单"上添加名字,也就是一个名单,在这个名单里的域名就可以被解析包括正向解析、反向解析

解析记录的类型

正向解析文件中:

A:IPv4正向解析记录

AAAA:IPV6正向解析记录

NS:DNS服务器解析记录

MX:邮件解析记录

CNAME:别名解析记录

反向解析文件中:

PTR:反向解析记录

这样就可以进行DNS地址解析了

为了DNS服务器能够更加稳定,我们还可以设置主从架构,设置起来也是比较方便的,只需添加一些东西即可

在主服务器上添加从服务器IP

再把从机的配置好

再重启一下,这样在主服务器失效的时候从服务器也可以正常的提供服务。

相关推荐
不搞学术柒柒18 分钟前
vscode、cursor无密码ssh远程连接服务器(配置密钥)
服务器·ssh·github
猫头虎1 小时前
新手小白如何快速检测IP 的好坏?
网络·人工智能·网络协议·tcp/ip·开源·github·php
NeilNiu3 小时前
开源工具FossFLOW,绘制技术图表
github
qianmoQ4 小时前
GitHub 趋势日报 (2025年07月30日)
github
Albert_Lsk7 小时前
【2025/08/01】GitHub 今日热门项目
人工智能·开源·github·开源协议
shilim8 小时前
这位老哥提交了一个12万行代码的PR,程序员看了都说LGTM
人工智能·github·代码规范
大前端之旅8 小时前
探索 DCloud 的技术生态:uniapp的跨平台开发宝藏
github
用户4099322502128 小时前
FastAPI后台任务:是时候让你的代码飞起来了吗?
后端·github·trae
寻月隐君14 小时前
Rust 泛型 Trait:关联类型与泛型参数的核心区别
后端·rust·github