如何在Linux 7.4中配置DNS? (linux7.4 dns配置)

DNS是互联网上最基础的服务之一,它的作用是将域名转化为IP地址,以便网络上的计算机可以相互通信。在Linux系统中,配置DNS服务对于网络的稳定和安全起着至关重要的作用。本文将介绍如何在Linux 7.4中配置DNS。

1. 确认DNS服务器地址

在配置DNS之前,需要查询和确认DNS服务器的地址。通常情况下,DNS服务器的地址由网络管理员或ISP提供,可以在网络设置中找到。也可以使用命令行工具dig来查询DNS服务器的地址,例如:

$ dig example.com

这条命令将查询example.com的DNS信息,其中包括DNS服务器的地址。

2. 配置/etc/resolv.conf文件

在Linux系统中,DNS配置信息存储在/etc/resolv.conf文件中。该文件定义了系统将要使用的DNS服务器地址、搜索域、以及DNS解析的超时时间等参数。可以使用vim或nano等文本编辑器打开resolv.conf文件进行编辑。例如:

$ sudo vim /etc/resolv.conf

在该文件中,可以添加以下格式的DNS服务器地址:

nameserver

例如:

nameserver 8.8.8.8

nameserver 8.8.4.4

这里配置了两个Google的DNS服务器。

也可以添加搜索域,例如:

search example.com

这里搜索的是example.com域名及其子域名的DNS信息。

其它可配置的选项有:

domn:设置域名,相当于添加了search和别名信息

sortlist:依次测试多个名字解析服务器时,先使用前几个(选项格式要求比较严格)

options:其它可选配置项,如指定查询类型(A、MX、NS等)以及缓存大小等。详见man页。

可以根据需要进行配置,保存后退出即可。

3. 重启网络服务

在修改配置文件之后,需要重启Linux系统以使其生效。可以使用以下命令重启网络服务:

$ sudo systemctl restart network

这条命令会执行系统服务的重启操作。完成后,DNS配置就会生效。

4. 使用nslookup工具进行测试

nslookup是一种常用的DNS查找工具,可以使用它来测试系统的DNS解析是否正常。使用以下命令查询主机的IP地址:

$ nslookup example.com

这里查询的是example.com的IP地址,如果DNS解析成功,应该能够看到类似以下的输出:

Server: 8.8.8.8

Address: 8.8.8.8#53

Non-authoritative answer:

Name: example.com

Address: 93.184.216.34

这里的Server信息是DNS服务器的地址,而Name和Address信息则是查询到的DNS记录。

相关问题拓展阅读:

linux下如何配置DNS服务器,

答案给出的很详细,可是那是老版本redhat9的配置了。 现在通用的bind9.0使用的是chroot环境,就是说你安装RHEL5.4的时候,在/etc/下面是找不到named.conf文件的.简要说下过程 如果你用的RHEL5的yum库1.安装#yum install bind* -y#yum install caching-nameserver2.配置主配文件#cd /var/named/chroot/etc/ #cp -a named.caching-nameserver.conf named.conf# vim named.conf主游雀要参饥磨滚数和以前的bind差不多,都烂余是写明正向和方向域文件。allow-query 这行要匹配any 否则服务器就只能你本地使用

linux DNS服务器配置

基本理论:

DNS系统的作用是把域名和IP对应起来。

正向解析:根据域名(主机名)查找对应的IP地址。

反向解析:根据IP地址查询对应的域名(主机名)。

查询

递归查询:大多数客户机向芦前DNS服务器解析域名的方式。

迭代查询:大多数DNS服务器向其它DNS服务器解析域名的方式。

DNS服务器的类型

缓存域名服务器:也称唯高速缓存服务器。通过向其它域名服务器查询获得域名与IP地址的对应孙伏记录,将域名查询结果缓存到本地,提高重复查询时的速度。

主域名服务器:特定DNS区域的官方服务器陪凯清,具有唯一性。负责维护该区域内的所有域名与IP的映射记录。

从域名服务器:也称辅助域名服务器。其维护的域名与IP地址的映射记录来源于主域名服务器。

环境准备:

临时关闭selinux和iptables

#setenforce 0

#service iptables stop

查询相关软件包:

# yum search bind

Loaded plugins: product-id, refresh-packagekit, subscription-manager

Updating Red Hat repositories.

====================================================================================== N/S Matched: bind ======================================================================================

PackageKit-device-rebind.i686 : Device rebind functionality for PackageKit

bind.i686 : The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) server

bind-chroot.i686 : A chroot runtime environment for the ISC BIND DNS server, named(8)

bind-utils.i686 : Utilities for querying DNS name servers

其中各软件包的作用如下:

bind: 提供域名服务的主要程序及相关文件。

bind-chroot:为bind提供一个伪装的根目录以增强安全性。

bind-utils:提供对DNS服务器测试的工具程序(如nslookup、dig等)。

安装BIND软件包#yum install *bind*

配置DNS服务器:

bind服务器端程序

主要执行程序:/usr/in/named

服务脚本:、etc/init.d/named

默认监听端口:53

主配置文件: /etc/named.conf

保存DNS解析记录的数据文件: /var/named/chroot/var/named

查询bind程序的配置文件列表

# rpm -qc bind

/etc/logrotate.d/named

/etc/named.conf

/etc/named.iscdlv.key

/etc/named.rfc1912.zones

/etc/named.root.key

/etc/rndc.conf

/etc/rndc.key

/etc/sysconfig/named

/var/named/named.ca

/var/named/named.empty

/var/named/named.localhost

/var/named/named.loopback

查看主配置文件named.conf

#vim /etc/named.conf

主配置文件解析:

全局配置部分:

默认的全局配置项如下:

10 options {

listen-on port 53 { 127.0.0.1; }; //监听的端口和接口IP地址

listen-on-v6 port 53 { ::1; };

directory”/var/named”;//dns区域的数据文件默认存放位置

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 { localhost; }; //允许dns查询的客户机列表,any表示所有

recursion yes;//是否允许客户机进行递归查询

19

dnssec-enable yes;

dnssec-validation yes;

dnssec-lookaside auto;

23

/* Path to ISC DLV key */

bindkeys-file “/etc/named.iscdlv.key”;

26 };

全局配置中还有如下选项:

forwarders {202.102.24.68;12.3.3.3;};//将本域名服务器不能解析的条目转发给其它DNS服务器的IP地址

默认的区域配置项如下:

35 zone “.” IN {

type hint; //区域类型。hint为根区域;master为主区域; slave为辅助区域

file “named.ca”;//该区域对应的区域数据配置文件名

38 };

区域配置中还有如下选项:

allow-transfer {189.98.90.23;};//允许下载区域数据库的从域名服务器IP地址

allow-update {none;};//允许动态更新的客户端IP地址(none表示全部禁止)

添加如下区域配置:

zone “my.com” IN {

type master;//主区域

file “my.com”; //该区域对应的区域数据配置文件名

allow-transfer {192.168.153.1;};//允许下载区域数据库的从域名服务器IP地址

allow-update {none;};

};

zone “153.168.192.in-addr.arpa” IN { //表示针对IP192.168.153.130反向解析

type master;//主区域

file “192.168.153.my.arpa”;//该区域对应的区域数据配置文件名

};

配置完了,可以执行如下命令对named.conf文件进行语法检查。

#named-checkconf

注意:倒序网络地址.in-addr.arpa 表示反向区域

主配置文件最后还有一行是:

include “/etc/named.rfc1912.zones”//该文件包含/etc/named.rfc1912.zones文件

区域数据配置文件:

先看一下named.localhost的内容:

$TTL 1D//time to live 生存时间

@IN SOA @ rname.invalid. ( //”rname.invalid”DNS区域地址

; serial //更新序列号

D ; refresh //更新时间

H ; retry //重试延时

W ; expire //失效时间

H ) ; minimum//无效地址解析记录的默认缓存时间

NS @//name server 域名服务记录

A.0.0. //address 只用在正向解析的区域数据文件中

AAAA ::1

新建2个对应的区域数据配置文件:

#touch my.com

#touch 192.168.153.my.arpa

#vim my.com

$TTL 86400

@ IN SOA my.com. admin.my.com (//admin.myNaN为该区域管理员的邮箱地址

201

H

M

W

D

)

@IN NS ns1.my.com.//当前域的DNS服务器地址

IN MXmail.my.com.//用于设置当前域的邮件服务器域名地址,数字10表示优先级别,数字越大优先级越低

ns1 IN A.168.153.130

mail IN A.168.153.130

www IN A.168.153.130

ftp IN CNAME www //CNAME别名(canonical name)记录,表示ftp.my.com和

www.my.com

对应同一个IP.

# vim 192.168.153.my.arpa

$TTL 86400

@ IN SOA my.com. admin.my.com (

201

H

M

W

D

)

@IN NS ns1.my.com.

INPTR ftp.my.com

启动DNS服务

# service named start

测试:

配置一台ftp服务器用于测试:

#service vsftpd start//启动vsftpd服务

当前网卡的配置:

eth0: 192.168.0.1/24

eth1: 192.168.153.130/24

# nslookup 192.168.153.130

Server: 127.0.0.1

Address: 127.0.0.1#53

130.153.168.192.in-addr.arpaname =

www.my.com

.

# nslookup ftp.my.com

Server: 127.0.0.1

Address: 127.0.0.1#53

ftp.my.comcanonical name =

www.my.com

.

Name:

www.my.com

Address: 192.168.153.130

测试成功

 在linux下配置DNS服务器,下面是配置过程中设置过的一些文件,

  /etc/hosts 文件的具体内容如下:

  # Do not remove the following line, or various programs

  # that require network functionality will fail.

  127.0.0.1 localhost.localdomain localhost fc4

  192.168.1.3 a.test.com a

  192.168.1.1 b.test.cn b

  /etc/host.conf 文件:

  order hosts,bind

  表示先用hosts文件做解析,春改在用DNS解析

  /etc/resolv.conf 文件:

  ; generated by NetworkManager, do not edit!

  search test.com

  nameserver 127.0.0.1

  search test.cn

 扒谈判 nameserver 192.168.1.1

  nameserver 61.144.56.100

  /etc/named.conf 文侍氏件:

  //

  // named.conf for Red Hat caching-nameserver

  //

  options {

  directory “/var/named”;

  dump-file “/var/named/data/cache_dump.db”;

  statistics-file “/var/named/data/named_stats.txt”;

  /*

  * If there is a firewall between you and nameservers you want

  * to talk to, you might need to uncomment the query-source

  * directive below. Previous versions of BIND always asked

  * questions using port 53, but BIND 8.1 uses an unprivileged

  * port by default.

  */

  // query-source address * port 53;

  };

  //

  // a caching only nameserver config

  //

  controls {

  inet 127.0.0.1 allow { localhost; } keys { rndckey; };

  };

  zone “.” IN {

  type hint;

  file “named.ca”;

  };

  zone “test.com”IN {

  type master;

  file “test.com”;

  allow-update { none; };

  };

  zone “1.168.192.in-addr.arpa”IN {

  type master;

  file “192.168.1.rev”;

  allow-update { none; };

  };

  zone “test.cn”IN {

  type master;

  file “test.cn”;

  allow-update { none; };

  };

  zone “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.ip6.local”;

  allow-update { none; };

  };

  zone “255.in-addr.arpa” IN {

  type master;

  file “named.broadcast”;

  allow-update { none; };

  };

  zone “0.in-addr.arpa” IN {

  type master;

  file “named.zero”;

  allow-update { none; };

  };

  include “/etc/rndc.key”;

  在/var/name/test.com 文件下:

  $TTL

  @ IN SOA a.test.com. root.a.test.com (

  42 ; serial (d. adams)

  3H ; refresh

  15M ; retry

  1W ; expiry

  1D ) ; minimum

  IN NS a.test.com.

  IN MX 10 mail.test.com.

  a IN A 192.168.1.3

  mail IN A 192.168.1.3

  //其中root.a.test.com的含义是管理员的邮箱

  /var/name/test.cn 文件下:

  $TTL

  @ IN SOA b.test.cn. root.a.test.com (

  42 ; serial (d. adams)

  3H ; refresh

  15M ; retry

  1W ; expiry

  1D ) ; minimum

  IN NS b.test.cn.

  IN MX 10 mail.test.cn.

  b IN A 192.168.1.1

  mail IN A 192.168.1.1

  /var/name/192.168.1.rev 文件下:

  $TTL

  @ IN SOA 1.168.192.in-addr.arpa. root.test.com. (

; Serial

; Refresh

; Retry

; Expire

) ; Minimum

  IN NS a.test.com.

  IN NS b.test.cn.

  IN MX 10 mail.test.com.

  IN MX 10 mail.test.cn.

  3 IN PTR a.test.com.

  3 IN PTR mail.test.com.

  1 IN PTR b.test.cn.

  1 IN PTR mail.test.cn.

  然后用/etc/init.d/named restart重启DNS服务,在重启过程中,我曾经出现过好几次的错误,按照出错的提示,会提示是named.conf文件第几行出错的。或者提示在那些包含文件例如test.cn这些文件里面的问题,然后一个一个排除。

  最后还有一些nslookup的命令比较有用:

  set all用于显示使用nslookup工具这台机器上的DNS服务器的一些信息

  set type=any会显示完整信息包括域中邮件服务器和主从DNS服务器的名字和IP地址

  server 192.168.0.1更换查询的DNS服务器地址

linux7.4 dns配置的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux7.4 dns配置,如何在Linux 7.4中配置DNS?,linux下如何配置DNS服务器,的信息别忘了在本站进行查找喔。


数据运维技术 » 如何在Linux 7.4中配置DNS? (linux7.4 dns配置)