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

再把从机的配置好

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

相关推荐
zachhere21 小时前
构建你的第一个 ChatGPT 应用 | 使用 Apps SDK 的逐步教程
github
HelloGitHub1 天前
降薪跳槽,投身开源!只为 AI 落地“最后一公里”
开源·github
百锦再1 天前
第5章 所有权系统
运维·git·python·eclipse·go·github·负载均衡
赵文宇(温玉)1 天前
构建内网离线的“github.com“,完美解决内网Go开发依赖
开发语言·golang·github
牛奶咖啡131 天前
利用Github与Hexo搭建属于自己的在线个人博客
github·hexo创建静态博客·免费部署博客到公网上·创建自定义静态博客·将静态博客上传到github·将自己的网站发布到网上
散峰而望1 天前
C++入门(一)(算法竞赛)
c语言·开发语言·c++·编辑器·github
qq_5470261791 天前
OAuth 2.0 安全授权
git·安全·github
uhakadotcom2 天前
基于 TOON + Next.js 来大幅节省 token 并运行大模型
前端·面试·github
孟陬2 天前
别再社死了!`includeIf` 一招搞定 Git 提交者信息错乱,守护你的邮箱隐私
git·github
Cyril_KI2 天前
大模型长文生成中的幻觉与事实性:研究进展综述
大模型·llm·github·综述·幻觉