千家信息网

Linux域名服务DNS配置方法

发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,什么是 DNSDNS 全称是 Domain Name System,大意是域名解析系统,它的职责是把域名翻译成一个一个可以识别的 IP 供不同的计算机设备连接。linux 有关 DNS 解析的配置和文
千家信息网最后更新 2025年01月25日Linux域名服务DNS配置方法

什么是 DNS

DNS 全称是 Domain Name System,大意是域名解析系统,它的职责是把域名翻译成一个一个可以识别的 IP 供不同的计算机设备连接。

linux 有关 DNS 解析的配置和文件

linux 中有三个文件是关于 dns 解析的:

  • /etc/hosts 记录 hostname 对应的ip地址
  • /etc/resolv.conf 设置DNS服务器的ip地址
  • /etc/host.conf 指定域名解析的顺序(是从本地的hosts文件解析还是从DNS解析)
  • /etc/hosts 的存在是早期网络并不是特别发达,仅仅在 hosts 中保存主机名和 ip 地址的对应关系即可满足需要,随着网络的发展逐渐出现分布式 DNS 服务,但是 /etc/hosts 形式保留下来了。

/etc/resolv.conf 是配置DNS 域名和 ip 地址的,网上有很多资料可以参考一下。

一个域名是如何被解析的

How the Domain Name System (DNS) Works这篇大致解释了域名被解析的过程,基本可以分为:

  • 向根域名服务请求顶级域名所在所在域名服务
  • 向顶级域名服务请求二级域名服务
  • 向二级域名服务请求具体的 ip 地址

简易DNS配置案例(基于CentOs7)

服务器端

1.安装bind

yum install bind

2.修改/etc/named.conf配置文件

vim /etc/named.confoptions {    listen-on port 53 { any; };  //开启监听端口53,接受任意IP连接    listen-on-v6 port 53 { ::1; };  //支持IP V6    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   { 0.0.0.0/0; };  //允许任意IP查询    recursion yes;    dnssec-enable yes;    dnssec-validation yes;    dnssec-lookaside auto;    /* Path to ISC DLV key */    bindkeys-file "/etc/named.iscdlv.key";    managed-keys-directory "/var/named/dynamic";};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";

3.修改/etc/named.rfc1912.zones文件,添加duiyi.com的正向区域

vim /etc/ named.rfc1912.zoneszone "localhost.localdomain" IN {    type master;    file "named.localhost";    allow-update { none; };};zone "localhost" IN {    type master;    file "named.localhost";    allow-update { none; };};zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {    type master;    file "named.loopback";    allow-update { none; };};zone "1.0.0.127.in-addr.arpa" IN {    type master;    file "named.loopback";    allow-update { none; };};zone "0.in-addr.arpa" IN {    type master;    file "named.empty";    allow-update { none; };};//duiyi.com的正向区域zone "duiyi.com" IN {    type master;    file "duiyi.com.zone";    allow-update { none; };};

4.创建正向区域资源文件

vim /var/named/duiyi.com.zone$TTL 1D@  IN SOA duiyi.com. rname.invalid. (                    0    ; serial                    1D   ; refresh                    1H   ; retry                    1W   ; expire                    3H )  ; minimum    NS   @    A    127.0.0.1    AAAA  ::1www  IN A 192.168.81.1mail  IN A 192.168.81.2ftp  IN A 192.168.81.3

5.启动named服务

systemctl start named

6.开机自启动

systemctl enable named

## 客户端
操作系统:windows和linux都可以
IP地址:能够ping通DNS服务器的IP(192.168.81.133)都可以,
作用:测试DNS服务器是否正常工作。

1.修改DNS:


2.ping 服务端ip(192.168.81.133),测试能否访问服务器


3.使用nslookup命令测试三个DNS解析能否成功


如图所示则表示DNS正向解析成功

Linux作为客户端测试:

1. 安装bind-utils包,以便能使用nslookup、dig和host工具

yum install bind-utils

2. 修改DNS配置使用我们的DNS服务器

vim /etc/resolv.confnameserver 192.168.81.133nameserver 114.114.114.114nameserver 8.8.8.8

3. 正向解析测试,使用nslookup命令(与windows测试一致)

nslookup

总结

以上所述是小编给大家介绍的Linux域名服务DNS配置方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

0