linux下DNS服务器的搭建
- 格式:docx
- 大小:171.50 KB
- 文档页数:7
Linux下DNS配置文件祥解最近,为了配置DNS服务器我收集了不少有关配置DNS服务器方面的资料。
在这里我将这些资料加上我在配置DNS服务器时的一些经验进行一下整理。
希望能对和我一样在配置DNS服务器时遇到困难的朋友一些启示。
DNS服务器软件即BIND的安装应该说是比较容易的,正常情况下是不会出现什么问题的。
因此,本文在着重要讨论的是DNS服务器的几个配置文件的配置问题。
本文将以REDHA T8.0自带的BIND9.2.1为依据进行讨论。
以下是本人这次配置DNS服务器的几个配置文件:/etc/named.conf/在NAMED.CONF配置文件中使用//和/* */来进行注释,options { /*OPTIONS选项用来定义一些影响整个DNS服务器的环境,如这里的DI RECTORY用来指定在本文件指定的文件的路径,如这里的是将其指定到/var/named 下,在这里你还可以指定端口等等。
不指定则端口是53*/directory "/var/named";}; ////// a caching only nameserver config//controls {inet 127.0.0.1 allow { localhost; } keys { rndckey; };};zone "." IN { //在这个文件中是用zone关键字来定义域区的,一个zone关键字定义一个域区type hint;/*在这里type类型有三种,它们分别是master,slave和hint它们的含义分别是:master:表示定义的是主域名服务器slave :表示定义的是辅助域名服务器hint:表示是互联网中根域名服务器*/file "named.ca"; //用来指定具体存放DNS记录的文件};zone "localhost" IN { //定义一具域名为localhost的正向区域type master;file "localhost.zone" ;allow-update { none; };};zone "" IN { //指定一个域名为的正向区域type master;file "”allow-update { none;};};zone "0.0.127.in-addr.arpa" IN { //定义一个IP为127.0.0.*的反向域区type master;file "named.local";allow-update { none; };};zone "0.192.168.in-addr.arpa" IN { //定义一个IP为168.192.0.*反向域区type master;file "168.192.0";/var/named/文件@ IN SOA . . ( SOA表示授权开始/*上面的IN表示后面的数据使用的是INTERNET标准。
linux dns实验报告《Linux DNS实验报告》在网络通信中,DNS(Domain Name System)扮演着重要的角色,它负责将域名解析为对应的IP地址,使得用户能够通过简单易记的域名来访问网站或服务。
在Linux系统中,搭建和管理DNS服务器是一项重要的任务,本文将介绍一次针对Linux DNS服务器的实验报告。
实验目的:1. 了解DNS的基本工作原理2. 掌握在Linux系统上搭建和配置DNS服务器的方法3. 实现域名解析和反向解析实验环境:- 操作系统:Ubuntu 20.04- 软件:Bind9 DNS服务器实验步骤:1. 安装Bind9 DNS服务器在终端中输入以下命令来安装Bind9 DNS服务器:```sudo apt updatesudo apt install bind9```2. 配置DNS服务器编辑Bind9的配置文件`/etc/bind/named.conf.options`,设置DNS服务器的参数,如监听的IP地址、允许递归查询等。
3. 添加域名解析记录编辑`/etc/bind/named.conf.local`文件,添加域名解析的区域配置,包括域名、IP地址对应关系等。
4. 配置反向解析编辑`/etc/bind/named.conf.local`文件,添加反向解析的区域配置,将IP地址解析为域名。
5. 启动DNS服务器在终端中输入以下命令来启动Bind9 DNS服务器:```sudo systemctl start bind9```实验结果:通过以上步骤,成功搭建了一个简单的DNS服务器,并实现了域名解析和反向解析的功能。
在本地主机上进行域名解析测试和反向解析测试,均能正确地解析出对应的IP地址和域名。
实验总结:通过本次实验,我们深入了解了DNS服务器的工作原理,掌握了在Linux系统上搭建和配置DNS服务器的方法。
DNS服务器的搭建和管理对于网络通信至关重要,能够提高网络访问的效率和安全性,是每个系统管理员都应该掌握的技能之一。
Linux下搭建DNS服务器和配置文件(named.conf)祥解配置之前先了解一下bind DNS服务器软件:BIND是一种开源的DNS(Domain Name System)协议的实现,包含对域名的查询和响应所需的所有软件。
它是互联网上最广泛使用的一种DNS服务器,对于类UNIX系统来说,已经成为事实上的标准。
为了构架DNS服务器来解析域名或ip地址,我们得安装BIND和caching-nameserver。
为了TCP和UDP53数据包能通过,我们也有必要配置路由器。
安装 BIND 软件包1、安装# yum -y install bind caching-nameserver2、配置下面的例子是以公网IP(172.16.0.80/29),局域网IP (192.168.0.0/24),域名()作说明。
在配置你自己的服务器时,请使用你自己的IP和域名。
# vim /etc/named.confoptions {directory "/var/named";# query rangeallow-query { localhost; 192.168.0.0/24; };# transfer rangeallow-transfer { localhost; 192.168.0.0/24; };# recursion rangeallow-recursion { localhost; 192.168.0.0/24; };};controls {inet 127.0.0.1 allow { localhost; } keys { rndckey; };};# here is the section for internal informationsvimew "internal" {match-clients {localhost;192.168.0.0/24;};zone "." IN {type hint;file "named.ca";};# set zones for internalzone "" IN {type master;file "n";allow-update { none; };};# set zones for internalzone "0.168.192.in-addr.arpa" IN { type master;file "0.168.192.db";allow-update { none; };};zone "localdomain" IN {type master;file "localdomain.zone";allow-update { none; };};zone "localhost" IN {type master;file "localhost.zone";allow-update { none; };};zone "0.0.127.in-addr.arpa" IN { type master;file "named.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; };};};vimew "external" {match-clients {any;};zone "." IN {type hint;file "named.ca";};# set zones for externalzone "" IN {type master;file ".wan";allow-update { none; };};# set zones for external *notezone "80.0.16.172.in-addr.arpa" IN {type master;file "80.0.16.172.db";allow-update { none; };};};include "/etc/rndc.key";# *note : For How to write for reverse resolvimng, Write network address reversely like below.the case for 192.168.0.0/24network address? 192.168.0.0range of network? 192.168.0.0 - 192.168.0.255how to write? 0.168.192.in-addr.arpacase of 172.16.0.80/29network address? 172.16.0.80range of network? 172.16.0.80 - 172.16.0.87how to write? 80.0.16.172.in-addr.arp设置Zones创建zone文件以便服务器能解析域名IP。
——————学院信息工程系——2013届计算机专业毕业论文姓名:班级:设计课题:Linux平台下搭建DNS服务器指导教师:2012年11 月25日摘要Linux是一套免费使用和自由传播的类UNIX操作系统,是由世界各地成千上万的程序员设计和实现的,其目的是建立一个不受任何商品化软件版权制约的、全世界都能自由使用的操作系统。
如今Linux在全球大热,LINUX操作系统以其具备自主开发和高效灵活的特点已成为全球增长最快的操作系统之一,在LINUX操作平台上搭建各类网络服务器真正意义上实现多任务、多用户服务,具备了稳定性、安全性和高效性,基于LINUX的DNS服务器的搭建是非常重要的。
Linux最大的特点在于GNU的一员,遵循公共版权许可证(GPL)及开放源代码的原则,使其成为发展最快,拥有用户最多的操作系统之一。
也是硬件平台支持最广泛的操作系统它不仅稳定可靠,而且还具有良好的兼容性和可移植性。
随着Linux技术和产品的不断发展和完善,其影响和应用日益广泛,特别实在中小型信息化技术应用Linux习系统下占据越来越重要的地位。
Linux操作系统主要有DHCP、DNS、Samba、WWW、FTP服务器配置,本文主要对DNS服务器的配置进行详细的解说。
关键词:Linux、DNS、搭建、服务器目录第一章:Linux系统概述 ...................................................................................................... 错误!未定义书签。
1.1Linux系统的起源及发展 ................................................................................................ 错误!未定义书签。
1.1.1Linux的起源 ................................................................................................ 错误!未定义书签。
linux下dns配置详解dns配置详解大全DNS简介在Linux中,域名服务(DNS)是由柏克莱网间名域(Berkeley Internet Name Domain——BIND)软件实现的。
BIND是一个客户/服务系统,它的客户方面称为转换程序(resolver),它产生域名信息的查询,将这类信息发送给服务器,DNS软件回答转换程序的查询。
BIND的服务方面是一个称为named (读作“name”“d”)的守护进程。
我们将讨论三种基本BIND配置任务:配置BIND转换程序。
配置BIND域名服务。
建立服务器数据库文件,称为“区文件(zone file)。
前面我们介绍过,术语“区(zone)”往往可以与单词“域(domain)”互换使用,但这里却有一些区别,“区”是指域数据库文件,而“域”则比较通用。
在本书中,域是用域名定义的域结构中的一部分,而区则是域数据库文件中包含域信息的集合,包含域信息的文件称为“区文件”。
DNS的作用是把IP地址转化为代表主机、网络和邮件别名的助记名。
它把整个Internet IP地址和名字空间分解为不同的逻辑组来做这项工作。
每个组对它所拥有的计算机和其他信息具有控制权。
DNS服务器的类型BIND可以配置成以几种不同的方法运行的DNS,常见的BIND配置是唯转换程序系统、唯高速缓存系统、主服务器和辅助服务器。
转换程序是一段要求域名服务器提供域信息的程序,在Linux系统中,它是作为一个库程序来实现的,不是一个单独的客户程序。
在唯转换程序系统中,仅使用转换程序,并不运行域名服务器。
这种系统是很容易配置的,最多只需要设置/etc/resolv.conf文件。
其它三个BIND配置选项都是用于named服务软件的。
唯高速缓存服务器唯高速缓存服务器(caching-only server)可运行域名服务器软件但是没有域名数据库软件。
它从某个远程服务器取得每次域名服务器查询的回答,一旦取得一个答案,就将它放在高速缓存中,以后查询相同的信息时就用它予以回答。
Linux下DNS服务器的配置1,安装DNS服务器安装DNS服务器Red Hat Linux 9 自带有版本号为9.2.1的BIND(即目前使用最广泛的域名服务器软件)。
在Red Hat Linux 9的第1张安装光盘中提供了与BIND服务相关的两个rpm包,bind-9.2.1-16.i386.rpm和bind-utils-9.2.1-16.i386.rpm。
另外一个相关的软件包caching-nameserver-7.2-7.noarch.rpm在第2张安装盘上。
1. 检查系统是否已安装了BIND软件包方法:rpm -q bind图1-1 检查BIND软件包是否已安装通过输出bind-9.2.1-16,说明当前系统已经安装了该软件包。
此外,还可检查BIND的样本配置文件(/etc/named.conf)和根域文件(/var/named/named.ca)是否存在,来判断BIND软件包的安装与否。
2. 安装BIND软件包如果BIND软件包并未安装,则用下述命令进行安装。
(注意,执行下述命令时要先将目录切换到rpm包所在的目录下)rpm -ivh bind-9.2.1-16.i386.rpmrpm -ivh bind-utils-9.2.1-16.i386.rpmrpm -ivh caching-nameserver-7.2-7.noarch.rpm图1-2 切换到BIND软件包所在的目录图1-3 安装BIND软件包BIND软件包安装后,还将创建名为named的用户和用户组,并自动设置相关目录的权属关系。
named守护进程默认使用named用户身份运行。
可以在passwd和group文件中查看named用户和用户组。
也可以看到DNS工作目录/var/named和/var/run/named目录的所有者和权限。
图1-4 查看named用户和用户组1.2.2配置DNS服务器BIND的配置文件包括:主配置文件/etc/named.conf,根域文件/var/named/named.ca,正向解析文件/var/named/localhost.zone,反向解析文件/var/named/named.loca,用于管理BIND守护进程的rndc程序的配置文件/etc/rndc.conf,用户自定义正向区域文件和用户自定义反向区域文件。
DNS服务器的配置——实用教程04.07.29 需求:建立本校域名的DNS解析。
分别为:域名解析地址为192.168.1.100域名解析地址为192.168.1.101环境:操作系统:Redhat linux6.4 服务器IP:192.168.1.1步骤一:安装LINUX 6.4,并选择必要的服务器安装组件步骤二:进入linux,配置服务器的IP地址,dns等网络参数;检查DNS的组件是否安装1、配置服务器ip为192.168.1.1,DNS为192.168.1.12、检查DNS组件bind是否安装。
(安装时如果已安装,可跳过第2步)▲#rpm –qa |grep bindbind-9.8.2…….(必备组件)如没有,找到相应的RPM包,并安装▲rpm –ivh bind-9.8.2…..3、配置DNS服务器,依次配置如下三个文件:a、/etc/named.conf #此文件为DNS引导文件,用于定义DNS工作目录、根区域、正向解析和反向解析的文件名等;b、/var/named/.zone #此文件为DNS正向解析区域文件,可自定义文件名,但必须和named.conf中指定的文件名一致;c、/var/named/1.168.192.arpa #此文件为反向解析区域文件;可自定义文件名,但必须和named.conf中指定的文件名一致;4、步骤四:配置named.conf文件说明:在安装完bind软件后,在/etc下面会生成一个named.conf的模板文件,可以在该文件上修改,增加zone ”” IN 到file “192.168.1.arpa” ; };部分。
5、进入/var/named目录下,找到named.localhost文件。
6、打开另存为“.zone”保存在桌面。
打开文件,更改相关配置,如图。
下面是解释了,我就不多说了,也不懂。
7、进入/var/named目录下,找到named.localhost文件,另存为“192.168.1.arpa”保存在桌面。
运行环境redhat 9.0 ,IP地址172.18.121.35,实现的域名为1.安装DNS所要的软件包.查看是否安装bind软件,在终端中输入代码如下:[root@localhost root]# rpm -qa|grep bindredhat-config-bind-1.9.0-13bind-9.2.1-16bind-utils-9.2.1-16ypbind-1.11-4若出现以上的文字则表示安装成功,若没有出现以上东西插入正确的光盘,进行安装.或者通过下载源代码进行安装。
2.设定好IP地址与DNS在终端中输入netconfig,回车,在第一行中输入IP,172.18.121.35.第二行输入子网掩码255.255.255.0第三行输入网关地址:172.18.121.1,最后一行输入DNS 172.18.121.35.再确定.再在终端中输入下面的命令代码如下:[root@localhost root]#service network reload[root@localhost root]#service network restart通过ifconfig查看IP信息3.配置DNS配置DNS正向搜索,配置文件如下:代码如下:[root@localhost root]#cp /var/named/localhost.zone /var/named/代码如下:[root@localhost root]# vi /var/named/$TTL 86400$ORIGIN .@ 1D IN SOA . . (42 ; serial (d. adams)3H ; refresh15M ; retry1W ; expiry1D ) ; minimum1D IN NS @1D IN MX 5 .www 1D IN A 172.18.121.35mail 1D IN A 172.18.121.35ftp 1D IN A 172.18.121.35pop3 IN CNAME .smtp IN CNAME .保存退出,先按ESC ,再:wq.配置DNS正向搜索,配置文件如下:代码如下:[root@localhost root]#cp /var/named/named.local /var/named/172.18.121.rev代码如下:[root@localhost root]# vi /var/named/172.18.121.rev$TTL 86400@ IN SOA . . (1997022700 ; Serial28800 ; Refresh14400 ; Retry3600000 ; Expire86400 ) ; MinimumIN NS .< p;35 IN PTR .35 IN PTR .35 IN PTR .配置本机DNS的一个主文件,安装好后它有一个模板,修改它,修改的部分是粗线表示代码如下:[root@localhost root]# vi /etc/named.conf// generated by named-bootconf.ploptions {directory /var/named;/** 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 localhost IN {type master;file localhost.zone;allow-update { none; };};zone 0.0.127.in-addr.arpa IN {type master;file named.local;allow-update { none; };};zone IN{type master;file ;};zone 121.18.172.in-addr.arpaIN{type master;file 172.18.121.rev;};include /etc/rndc.key;/etc/named.conf [已转换] 45L, 894C配置本机的域名转换程序的顺序代码如下:[root@localhost root]# vi /etc/host.conf order bind,hostsmulti offtrim [root@localhost root]# vi /etc/resolv.confnameserver 218.196.42.2namedsever 218.196.42.2domain search option nochecknames rotate4.启动named服务.代码如下:[root@localhost root]#service named start5.检查配置是否成功代码如下:[root@localhost root]# nslookupNote: nslookup is deprecated and may be removed from future releases. Consider using the `dig' or `host' programs instead. Run nslookup with the `-sil[ent]' option to prevent this message from appearing.; Server: 172.18.121.35Address: 172.18.121.35#53Name: Address: 172.18.121.35; 172.18.121.35Server: 172.18.121.3535.121.18.172.in-addr.arpa name = .35.121.18.172.in-addr.arpa name = .35.121.18.172.in-addr.arpa name = .;ctrl +D退出若出现上面的情况的文字表示已经配置成功.6.其实在配置的过程中,查看自己是否配置正确可以通过named –g 进行查看你的配置文件到底错在那个地方,再进行修改PS:DNS相关配置文件说明. /etc/host.conf当系统中同时存在DNS域名解析和/etc/hosts主机表机制时,由该/etc/host.conf确定主机名解释顺序。
Linux1 DNS服务器构建从域名服务器
从域名服务器作为主域名服务器的冗余备份,可以与主域名服务器一起,同时提供本域内计算机名到IP地址的解析,从域名服务器的地址数据库需要从主域名服务器中定期更新。
从域名服务器的主配置文件也是“/etc/named.conf”,也需要设置服务器的“options”主语句和根区域,方法与配置主域名服务器的方法相同。
但在配置区域时,只需要提供区域名和主域名服务器的IP地址,而不需要建立相应的区域文件。
因为一个从域名服务器不需要在本地建立各种资源记录,而是通过一个区域复制过程来得到主域名服务器上的资源记录。
本节将延续上一节中的实例,网络环境如下。
●为主域名服务器搭建一台从域名服务器,提供相同的域名解析功能。
●从域名服务器的IP地址“192.168.0.16”,计算机名为“”。
1.设置DNS服务器地址
在从域名服务器上,必须将DNS服务器地址指向主域名服务器,如图6-63所示。
图6-63 设置DNS
2.建立主配置文件named.conf
在从域名服务器的“named.conf”配置文件中,将zone的类型设置为“slave”,并使用“masters{};”语句指定主域名服务器的地址,如图6-64所示。
图6-64 从域名服务器配置文件
然后,需要执行“services named restart”命令启动named服务,如果配置正确,named将会自动从主域名服务器中下载区域数据库文件,并保存在“slaves”目录中。
成功启动named服务后,在系统日志里面可以看到下载区域数据库文件的记录,如
图6-65所示。
图6-65 查看系统日志文件。
DNS服务器的搭建
准备工作
实验环境:CentOS6
设置好IP,DNS,,网关(要连接外网的)
(我这次的IP为静态192.168.3.70)
rpm –q bind 检查有无安装DNS服务器
1.安装DNS服务器功能
yum install bind*(加-y 就是默认选择yes)
2编辑DNS主配置文件
vim /etc/name.conf 修改主配置文件
options {
# listen-on port 53 { 127.0.0.1; };
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
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 { localhost; };
allow-query {any;};
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
红色的是要修改的
3.修改named.rfc1912.zones文件
vim /etc/named.rfc1912.zones 编辑文件
添加两个新域名解析(一个正向一个反向)
zone "" IN{
type master;
file ".zone";
allow-update {none};
};
zone "3.168.192.in-addr.arpa" IN{
type master;
file "192.168.3.zone";
allow-update {none};
};
后面每一句话都要加分号;
第一个红色字体的是域名
第二个红色字体是前三位IP地址倒写
蓝色字体的是等一下的配置文件名(以方便为主,在后面加上“.zone”)
4.添加DNS本机正向解析文件
vim /var/named/.zone创建配置文件
输入
$TTL 84600
@ IN SOA @ . (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS .
@ IN MX 5 .
ns IN A 192.168.3.70
www IN A 192.168.3.70
mail IN A 192.168.3.70
pop3 IN CNAME 192.168.3.70
hello IN A 192.168.3.70
smtp IN CNAME mail
zone配置文件简单说明:
常见的正解文件RR 相关信息
[domain] IN [[RR type] [RR data]]
主机名. IN A IPv4 的IP 地址
主机名. IN AAAA IPv6 的IP 地址
领域名. IN NS 管理这个领域名的服务器主机名字.
领域名. IN SOA 管理这个领域名的七个重要参数(如上说明)
领域名. IN MX 顺序数字接收邮件的服务器主机名字
主机别名. IN CNAME 实际代表这个主机别名的主机名字.
单位:W= 周、D= 日、H= 小时、M= 分钟。
$TTL 86400
@ IN SOA . root ( # ns.test.web. 是DNS服务器的名称
0 ; serial (d. adams) 仅作为序列号而已
1D ; refresh 服务器的更新时间
15M ; retry 重新更新时间间隔
1W ; expiry 多久之后宣布失败
1H ) ; minimum 相当于缓存记忆时间
@ IN NS .
@ IN MX 5 . (5为优先级别)
ns IN A 192.168.32.131
www IN A 192.168.32.131
mail IN A 192.168.32.131
(根据需要填写)
5.反向解析
添加反向解析文件
vim /var/named/192.168.3.zone
输入
$TTL 3H
@ IN SOA @ . (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS .(域名)
80(这里写第四位IP地址)IN PTR .(主机名)
6.启动DNS服务器
service named start 或者/etc/init.d/named strat 启动chkconfig named on 设置开机启动(虽然我觉得没什么必要)
7.配置路由器的DNS
在路由器上配置第一个DNS 地址为:192.168.3.70
第二个DNS地址为正常的DNS地址。
这样,公司内部访问特定的域名,就会解析到内部服务器。
同时还可以访问外网。
额外选项
8、测试检测域信息是否正常(重要)
检查之前先看下配置文件有没有读取权限ll /var/named (如果没有读取权限,chmod +r /var/named/* 即可)
9.更改防火墙设置和selinux设置
Getenforce(查看selinux是否开启)
setenforce 0
vi /etc/sysconfig/iptables #配置防火墙端口
-AINPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-AINPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
-AINPUT -m state --state NEW -m tcp -p tcp --dport 953 -j ACCEPT
service iptables restart #重启防火墙,使规则生效
10.检查bind文件配置过程中容易出错
以下命令用以检查bind配置文件及zone文件语法named-checkconf /etc/named.conf
named-checkzone /var/named/ .zone
11.启动重启DNS服务,查看服务状态
service named restart
service network restart
用户端测试解析,通过nslookup进行测试。
nslookup
>192.168.3.80
Server: 192.168.3.70
Address: 192.168.3.70#53
80.3.168.192.in-addr.arpa name = . >
Server: 192.168.3.70 Address: 192.168.3.70#53
Name: Address: 192.168.3.70。