热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Linux域名服务DNS配置方法

DNS全称是DomainNameSystem,大意是域名解析系统,它的职责是把域名翻译成一个一个可以识别的IP供不同的计算机设备连接。这篇文章主要介绍了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.conf
options {
    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.zones
zone "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  ::1
www  IN A 192.168.81.1
mail  IN A 192.168.81.2
ftp  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.conf
nameserver 192.168.81.133
nameserver 114.114.114.114
nameserver 8.8.8.8

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

nslookup

总结

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


推荐阅读
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • CentOS 7 磁盘与文件系统管理指南
    本文详细介绍了磁盘的基本结构、接口类型、分区管理以及文件系统格式化等内容,并提供了实际操作步骤,帮助读者更好地理解和掌握 CentOS 7 中的磁盘与文件系统管理。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 解决网站乱码问题的综合指南
    本文总结了导致网站乱码的常见原因,并提供了详细的解决方案,包括文件编码、HTML元标签设置、服务器响应头配置、数据库字符集调整以及PHP与MySQL交互时的编码处理。 ... [详细]
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
author-avatar
BLUE1352_126
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有