linux做DNS服务器
- 格式:docx
- 大小:191.72 KB
- 文档页数:9
Linux1 DNS服务器构建主域名服务器主域名服务器通常架设在Internet环境中,主要目的是为客户端提供本域内计算机名域IP地址的解析。
本节将通过实例的形式学习主域名服务器的搭建与配置。
在本节实例中,基本的网络环境如下:●主域名服务器位于Internet中,IP地址为“192.168.0.8”。
●所负责的DNS域为“”。
●为“”域内的计算机提供泛域名解析,对应的IP地址为“192.168.0.9”。
●网站服务器“”,IP地址为“192.168.0.10”。
●邮件服务器“”,IP地址为“192.168.0.11”。
●主域名服务器“”,IP地址为“192.168.0.8”。
●从域名服务器“”,IP地址为“192.168.0.16”。
实验环境如图6-54所示。
图6-54 构建主域名服务器1.确定本机的计算名、IP地址将主服务器的IP地址设为“192.168.0.5”,计算机名称为“”,通过修改“/etc/sysconfig/network”文件的实现,如图6-55所示。
图6-55 设置计算机名为了提高域名的解析速度,建议将两个DNS服务器的地址映射直接写入到“/etc/hosts”文件中,同时在“/etc/resolv.conf”文件中指定DNS服务器的地址,如图6-56所示。
图6-56 设置hosts和resolv.conf文件2.建立主配置文件named.conf主域名服务器不仅提供对“”域内计算机的地址解析,还需要提供解析Internet上计算机及的功能,所以根域也是必须配置的,如图6-57所示。
图6-57 配置named.conf 文件3.建立区域数据库文件根据“named.conf”文件中的zone设置,分别建立正向区域、反向区域和根区域的数据库文件。
建立正向区域数据库文件在该文件中设置域名、SOA记录、NS记录和A记录,如图6-58所示。
图6-58 正向区域数据库文件建立反向区域数据库文件在反向区域数据库文件中,同样需要域名,SOA记录,同时还需要配置PTR 指针记录,如图6-59所示。
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。
linux dns 原理
LinuxDNS原理是指在Linux操作系统中实现DNS (DomainNameSystem)服务的基本原理。
DNS是一种将域名转换为IP 地址的系统,它允许我们使用易于记忆的域名来访问互联网上的服务器,而不是使用难以记忆的 IP 地址。
在 Linux 中,我们可以使用各种 DNS 服务器软件来提供 DNS 服务,例如 BIND、dnsmasq 等。
这些软件的基本原理是通过将域名映射到相应的 IP 地址,使得客户端能够访问所需的服务器。
DNS 服务的实现过程包括以下几个步骤:
1. 客户端向本地 DNS 服务器发送 DNS 查询请求,请求解析某个域名的 IP 地址。
2. 本地 DNS 服务器查询缓存中是否已经存在该域名的解析结果,如果存在则直接返回。
3. 如果缓存中没有该域名的解析结果,则本地 DNS 服务器向顶级 DNS 服务器发送查询请求,顶级 DNS 服务器返回该域名的权威DNS 服务器的 IP 地址。
4. 本地 DNS 服务器向权威 DNS 服务器发送查询请求,权威DNS 服务器返回该域名的 IP 地址。
5. 本地 DNS 服务器将该域名的解析结果存储到缓存中,并将解析结果返回给客户端。
通过了解 Linux DNS 原理,我们可以更好地理解 DNS 服务的实现过程,从而更好地配置和管理 DNS 服务器。
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,用户自定义正向区域文件和用户自定义反向区域文件。
Linux系统怎么查看和修改DNS配置如果没有设置DNS服务器的话,那么系统就不能正常上网了。
,那么Linux系统怎么查看和修改DNS配置呢?下面店铺就为大家带来了Linux系统查看和修改DNS配置的方法。
Linux系统查看和修改DNS配置方法查看服务器的DNS信息:1:查看/etc/resolv.con文件[root@localhost ~]# cat /etc/resolv.confnameserver 192.168.xxx.xxx#search localdomain[root@localhost ~]#2:使用nslookup命令查看DNS信息[root@localhost ~]# nslookup 127.0.0.1 | grep ServerServer: 192.168.xxx.xxx[root@localhost ~]#3:使用dig命令来查看DNS信息[root@localhost ~]# dig; 《《》》 DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 《《》》;; global options: printcmd;; Got answer:;; -》》HEADER《《- opcode: QUERY, status: NOERROR,id: 36888;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY:0, ADDITIONAL: 3;; QUESTION SECTION:;。
IN NS;; ANSWER SECTION:。
86163 IN NS .。
86163 IN NS .。
86163 IN NS .。
86163 IN NS .。
86163 IN NS .。
86163 IN NS .。
86163 IN NS .。
86163 IN NS .。
86163 IN NS .。
86163 IN NS .。
linux中nameserver参数作用-回复在Linux操作系统中,nameserver参数是指定域名解析服务器(DNS 服务器)的配置选项。
DNS服务器在互联网中扮演着关键的角色,它们负责将用户输入的域名翻译成对应的IP地址,以便能够正确地建立连接和访问相应的网站或网络服务。
通过调整nameserver参数,我们可以配置系统使用特定的DNS服务器来解析域名。
本文将逐步解释nameserver参数的作用和如何进行配置。
首先,让我们了解一下DNS的工作原理。
当用户在浏览器中输入一个域名时,操作系统会尝试将其解析为IP地址。
为了完成这个解析过程,操作系统需要向DNS服务器发起查询。
这个查询请求会在本地配置的DNS服务器列表中依次进行,直到找到能够提供正确解析的DNS服务器。
在Linux中,我们可以通过/etc/resolv.conf文件来配置系统的DNS 服务器。
该文件包含了一系列的配置选项,其中之一就是nameserver。
nameserver参数用于指定DNS服务器的IP地址。
可以指定多个DNS 服务器地址,每行一个。
当系统发起域名解析请求时,它将按顺序尝试这些DNS服务器,直到找到能提供正确解析的DNS服务器为止。
接下来,我们来看看如何配置nameserver参数。
首先,打开终端并切换到超级用户模式,运行以下命令:bashsudo nano /etc/resolv.conf这将打开一个文本编辑器,在其中我们可以修改resolv.conf文件的内容。
找到类似以下的行:bashnameserver DNS_IP_Address在此行中,将DNS_IP_Address替换为所需的DNS服务器的实际IP 地址。
可以添加多个nameserver行以提供备用的DNS服务器地址。
例如:bashnameserver 8.8.8.8nameserver 8.8.4.4这将配置系统使用Google公共DNS服务器作为DNS解析服务器。
运行环境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确定主机名解释顺序。
linux服务器域名解析到指定ip的方法在Linux服务器上,您可以使用DNS服务器和相关工具将域名解
析到指定的IP地址。
以下是一种常见的方法:
一、准备工作
1. 确保您的Linux服务器已经安装了DNS服务器软件,如BIND
(Berkeley Internet Name Domain)。
2. 确保服务器上已正确配置了DNS区域文件(zone file),其
中包含了域名和对应的IP地址信息。
二、配置DNS服务器
1. 打开DNS区域文件进行编辑,可以使用任何文本编辑器,如
vi、nano等。
2. 添加您想要解析的域名记录,包括主记录(A记录)和反向
DNS(PTR)记录。
指定要解析的域名和指定的IP地址。
3. 保存并退出编辑器,并重新启动DNS服务器以使更改生效。
三、设置域名解析
1. 在您的域名注册商处,获取或更新域名解析设置。
通常,您需
要将域名的主机记录(A记录)指向您的Linux服务器的IP地址。
2. 确保您的Linux服务器能够被外部访问,可以通过防火墙配置
或虚拟专用网络(VPN)来保证连接性。
四、测试域名解析
1. 在本地或外部网络中,尝试访问您的域名,确保能够解析到指
定的IP地址。
2. 检查服务器日志,以确认是否有任何与域名解析相关的错误或
警告信息。
总之,通过以上步骤,您可以在Linux服务器上将域名解析到指定的IP地址。
请注意,这只是一个基本的方法,具体步骤可能因您的环境和需求而有所不同。
此外,确保您对Linux服务器和DNS服务器的配置有足够的了解,以避免潜在的安全风险。
在RedHatLinux9.0下配置DNS服务器Bind9.2.6在RedHat Linux 9.0下配置DNS服务器Bind 9.2.6因为单位的DNS 服务器放在网通,近来网通那边路由有问题,需要配置一台电信的服务器做DNS服务器,因此就在网上搜罗了一些资料,虽然不太完整,但是自己边测边配,弄出来啦,整理出来给大家分享,应该是目前比较完整的Bind教程了:下载稳定版的bind服务器:卸载原来系统自带的bind服务# rpm -qa|grep bind # rpm -e --nodeps bind编译安装BIND# tar zxvf bind-9.2.6.tar.gz # cd bind-9.2.6# ./configure -sysconfdir=/etc/bind # make # make install修改配置文件# mkdir /etc/bind # mkdir /var/bind# vi /etc/bind/named.conf 在named.conf 加入以下内容:options { directory “/var/bind"; };zone "." { type hint; file "named.ca"; };查询根DNS服务器# dig -t NS .; DiG 9.2.6 -t NS . ;; global options: printcmd ;; Got answer:;; -HEADER- opcode: QUERY, status: *****, id: *****;; flags: qr rd ra; QUERY: 1, ANSWER: 13, *****TY: 0, *****NAL: 13在RedHat Linux 9.0下配置DNS服务器Bind 9.2.6;; *****N *****: ;. IN NS;; ANSWER *****:. ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** INNS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS .;; *****NAL *****:. ***** IN A 198.41.0.4 . ***** IN A 192.228.79.201 . ***** IN A192.33.4.12 . ***** IN A 128.8.10.90 . ***** IN A 192.203.230.10 . ***** IN A 192.5.5.241 . ***** IN A 192.112.36.4 . ***** IN A 128.63.2.53 . ***** IN A 192.36.148.17 . ***** IN A 192.58.128.30 . ***** IN A 193.0.14.129 . ***** IN A 198.32.64.12 . ***** IN A 202.12.27.33;; Query time: 1 msec;; SERVER: 127.0.0.1# 53(127.0.0.1) ;; WHEN: Tue Oct 10 23:34:53 20XX 年;; MSG SIZE rcvd: 436将跟记录加入到/etc/resolv.conf文件中# echo "nameserver 192.58.128.30" /etc/resolv.conf将跟服务器的信息导入到/var/bind/named.ca文件中在RedHat Linux 9.0下配置DNS服务器Bind 9.2.6# dig -t NS . /var/bind/named.ca # cat /var/bind/named.ca; DiG 9.2.6 -t NS . ;; global options: printcmd ;; Got answer:;; flags: qr aa rd; QUERY: 1, ANSWER: 13, *****TY: 0, *****NAL: 13;; *****N *****: ;. IN NS;; ANSWER *****:. ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS . . ***** IN NS .;; *****NAL *****:. ***-***** IN A 198.41.0.4 . ***-***** IN A 128.63.2.53 . ***-***** IN A 192.33.4.12 . ***-***** IN A 192.112.36.4 . ***-***** IN A 192.5.5.241 . ***-***** IN A 192.228.79.201 . ***-***** IN A 192.58.128.30 . ***-***** IN A 193.0.14.129 . ***-***** IN A 198.32.64.12 . ***-***** IN A 202.12.27.33 . ***-***** IN A 192.36.148.17 . ***-***** IN A 192.203.230.10 . ***-***** IN A 128.8.10.90;; Query time: 107 msec;; SERVER: 192.58.128.30# 53(192.58.128.30)在RedHat Linux 9.0下配置DNS服务器Bind 9.2.6;; WHEN: Tue Oct 10 10:16:47 20XX年;; MSG SIZE rcvd: 436配置rndc# rndc-confgen /etc/bind/rndc.conf # cat -n /etc/bind/rndc.conf1 # Start of rndc.conf2 key "rndc-key" {3 algorithm hmac-md5;4 secret "6wVd+yM4v80YJuIdp0o+vg==";5 }; 68 default-key "rndc-key"; 9 default-server 127.0.0.1; 10 default-port 953; 11 };12 # End of rndc.conf 1314 # Use with the following in named.conf, adjusting the allow list as needed: 15 # key "rndc-key" { 16 # algorithm hmac-md5;17 # secret "6wVd+yM4v80YJuIdp0o+vg=="; 18 # }; 19 #20 # controls {21 # inet 127.0.0.1 port 95322 # allow { 127.0.0.1; } keys { "rndc-key"; }; 23 # };24 # End of named.conf将rndc中的部分记录导入到/etc/bind/named.conf文件中,并修改/etc/bind/named.conf,将导入的配置前面的注释去掉。
配置DNS服务一.DNS简介1.IP地址和主机名的转换方法主机名便于记忆类UNIX中有3种技术来实现主机名到IP地址的转换host解析:主要指本地/etc/host 例192.168.88.57 ping 在一个大型网络中Hosts文件较繁琐而又复杂,在DNS中起备份作用NIS,NetWork Information System网络信息服务系统,NIS将所有主机数据都保存在中央主机上,由中央主机将所需数据分配给所有的服务器,简单数据库适用于像局域网这样的中型网络DNS,Domain Name system它使用一种层次的树型结构的分布式数据库来处理Internet上的主机和IP地址的转换2.DNS 的组成:DNS是基于C/S模型设计的,每个服务器包含指向其他域名服务器的信息,DNS包括3个部分域名空间:标识一组主机并提供他的有关信息的树结构的详细说明,树上的每一个结点都有其控制下的主机的有关信息的数据库域名服务器:保持和维护域名空间中数据的程序,一个域名服务器拥有其控制范围(区域)内的完整信息解析器:解析器是简单的程序或子程序库,它从服务器中提取信息以获得对域名空间中主机的查询,用于DNS客户3.域名注册:例当子网需连接Internet并且需要由自己管理这个域时,InterNIC 会把相应信息放进.com域的服务器上,使其传播,DNS服务器周期性和其他DNS服务器上的各种数据库同步,并检查其他服务器上的新表项,一个新的域名大约会在3~4天完成传播二.DNS域名空间的分层结构FQDN(Full Qualified Domain Name),域名是层次的,位于右边,左边是主机名,"域"是DNS域名空间的基本单位1.根域(Root Domain):全世界的IP地址和DNS域名空间都是由位于美国的InterNIC负责管理或进行授权管理,全世界共有13台根域服务器,根域服务器中只保存着顶级域的DNS 服务器和IP地址的对应数据,根域是默认的不需要表示出来2.顶级域(top-level domain,TLD):顶级域由InterNIC统一管理,数目有限且不能轻易变动.顶级域有两种划分:地理域和机构域只包括顶级的服务器和IP地址负责解析顶级域的IP地址。
DNS服务器配置指南一、主服务器配置1.假设服务器所服务的区””,有三台主机,IP地址为192.168.50.1(当前主机),IP地址为192.168.50.2,IP地址为192.168.50.3下面配置正向解析服务器和反向解析服务器2.查询是否安装了软件包:# rpm –q bind bind-utils bind-chroot3.配置主服务器,添加域,编辑/etc/named.conf或者/etc/named.rfc1912.zones,添加如下内容:zone “” IN {type master;file “.zone”;};4.根据上面的配置添加新域的数据库# cd /var/named/chroot/var/named# cp –a named.localhost .zone# vi .zone (加入如下内容)$TTL 86400@ IN SOA @ root (42 ; serial3H ; refresh15M ; retry1W ; expiry1D ) ; minimumIN NS @IN A 192.168.50.1www IN A 192.168.50.1ftp IN A 192.168.50.2mail IN A 192.168.50.35.检查文件权限,若上面的cp指令忘记加-a选项,需要修正数据库文件权限# ls –l .zone# chown d .zone6.激活并重新启动服务器# chkconfig named on# service named restart7.使用自己的IP地址作为DNS服务器,测试解析# echo nameserver 192.168.50.1 > /etc/resolv.conf# host 二、辅助服务器配置1. 另外找一台主机,确认安装过相关软件包后,修改/etc/named.conf或者/etc/named.rfc1912.zones,加入下面的信息:zone “” IN {type slave;file “slaves/.zone”;masters { 192.168.50.1; };};2. 激活并重新启动辅助服务器# service named restart# chkconfig named on3. 检查是否有数据库文件生成,若没有,检查步骤1的内容是否正确,重新配置后测试。
配置主DNS服务器DNS是Domain Name System,它能够把形如 本站域名转换为219.136.249.93这样的IP地址;没有DNS,浏览时,就必须用219.136.249.93这么难记的数字来访问。
提供DNS服务的就是DNS服务器。
DNS服务器可以分为三种,高速缓存服务器(Cache-only server)、主服务器(Primary Name server)、辅助服务器(Second Name Server)。
[1]配置主DNS服务器首先我们做以下假设:A服务器为的主域名服务器,其IP地址为10.0.0.1,B服务器为的辅助域名服务器,其IP地址为10.0.0.2;下面我们配置服务器10.0.0.1为的主DNS服务器Linux下的dns功能是通过bind软件实现的。
bind软件安装后,会产生几个固有文件,分为两类,一类是配置文件在/etc目录下,一类是dns记录文件在/var/named目录下。
加上其他相关文件,共同设置dns 服务器。
下面是所有和dns设置相关文件的列表与说明。
位于/etc目录下主要有:resolv.conf,named.conf。
1、“resolv.conf”文件,“nameserver 10.0.0.211”。
文件内容:nameserver 10.0.0.1 //它的首选DNS,和WINDOWS类似2、named.conf文件。
named.conf是dns配置的核心文件。
# named.conf - configuration for bind## Generated automatically by bindconf, alchemist et al. controls {inet 127.0.0.1 allow { localhost; } keys { rndckey; };};include "/etc/rndc.key";options {directory "/var/named/";};zone "." {type hint;file "named.ca";};zone "0.0.127.in-addr.arpa" {type master;file "0.0.127.in-addr.arpa.zone";};zone "localhost" {type master;file "localhost.zone";zone "" {type master;file ".zone";};添加下面一段内容就好,如上:zone "" {type master;file "zone";};以上语句表示域的DNS数据存放在/var/named/目录下的.zone中;#vi /var/named/,写入下面内容:$TTL 86400@ IN SOA . . (20071103 ; serial28800 ; refresh7200 ; retry604800 ; expire86400 ; ttl)@ IN NS www IN A 11.0.0.10该文件的前部分是相应的参数设置,此部分不需要改动,后面的部分就是具体的DNS数据;例如:www IN A 11.0.0.10将 解析到地址11.0.0.10;[2]配置辅助DNS服务器配置服务器11.0.0.2为辅助dns服务器辅助DNS服务器,可从主服务器中转移一整套域信息。
Linux下DNS 的配置,委派和转发1. 简单DNS的搭建。
(1)修改主配制文件 # vi /etc/named.conf ,复制以下区域:自己想要建的区域,我这里做保存退出:wq!(2)建立正向,反向区域,并且添加纪录。
PS.如果是第九版就要先进入这个目录 #cd /var/named , 如果是企业版的话呢就要进入这个目录 #cd /var/named/chroot/var/named进入编辑筐后首先要做的就是替换,把原来的复制过来的localhost全部改为自己要建立的,在末行模式输入 :1,$ s/localhost//g 进行替换。
PS.每添加一条纪录后要记得打上一个点,否则会出错。
把复制一分到benet.rev反向区域 #cp benet.rev 重新启动服务一下: #service named start这里要注意的是如果做完要重启服务的话是要想 #killall named 然后在 #servicenamed start 而不是restart , 这是一个特殊的地方。
OK一个简单的DNS就搭建完成。
DNS委派(1)先建立一个区域文件 #vi /etc/named.conf我现在把委派给172.16.0.124(正向反向区域的建立及填写纪录)在受委派方建立以下区域:(主配制文件中)受委派方正向区域受委派方反向区域:现在我找一台客户机器来验证一下,我把真机的DNS指向委派方来解析一下。
OK 委派成功!!!转发1.首先我在172.16.0.124上来解析一下172.16.0.123 上上的纪录。
2.发现解析不了,现在我来做一下转发,这个很简单的:在172.16.0.124的主配制文件里Options选项后添加一条指令forwarders { 172.16.0.123; };重启一下服务后再来解析一下:Ok 转发完成,要注意的是forwarders { 172.16.0.123; }; IP是转发的目的IP,而且IP两边都有空格后面的都是分号。
Linux配置DNS服务器Linux配置DNS服务器⼀、构建⽹络环境1.安装DNS服务器操作系统(略)2.设置DNS服务器IP地址[root@localhost ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33[root@localhost ~]#nmcli c down ens33[root@localhost ~]#nmcli c up ens333.关闭Selinux和防⽕墙[root@localhost ~]#systemctl stop firewalld.service #关闭防⽕墙[root@localhost ~]#setenforce 0 #关闭Selinux4.设置本地Yum源[root@localhost ~]#mkdir /cd[root@localhost ~]#mount /dev/sr0 /cd[root@localhsot ~]#vim /etc/yum.repos.d/CentOS-Media.repo[root@localhsot ~]#cd /etc/yum.repos.d/[root@localhsot yum.repos.d]#mkdir backup[root@localhsot yum.repos.d]#mv CentOS-AppStream.repo CentOS-Base.repo CentOS-Extras.repo backup/ [root@localhsot yum.repos.d]#yum clean all[root@localhsot yum.repos.d]#yum makecache #重建cache⼆、安装和配置DNS服务[root@localhsot ~]#yum -y install named[root@localhsot ~]#vim /etc/named.conf #配置DNS监听服务器192.168.1.100允许所有⼈查询[root@localhsot ~]#vim /etc/named.rfc1912.zones #配置正反向区域[root@localhsot ~]#vim /var/named/named.localhost #配置正向解析主机记录[root@localhsot ~]#vim /var/named/named.empty #配置反向指针记录[root@localhsot ~]#systemctl start named.service #启动DNS服务三、测试DNS服务器1.配置客户端IP地址设置2.使⽤Ping命令进⾏测试。
实验二 DNS服务器配置
实验课程名:Red Hat Enterprise Linux系统管理
专业班级:学号: 姓名:
实验时间:实验地点:指导教师:
一、实验目的
(1)掌握Linux系统中主DNS服务器的配置.
(2)掌握Linux下辅助DNS服务器的配置。
二、项目背景
构建一台DNS服务器,为局域网中的计算机提供域名解析服务。
DNS服务器管理shinejk。
com域的域名解析.
三、实验内容
练习Linux系统下主及辅助DNS服务器的配置方法。
四、实验步骤
1. DNS服务器的配置
A、安装bind系列软件包
B、查看已安装的bind软件
C、在etc目录下创建named.conf文件
D、设置DNS主配置文件信息
E、设置根服务器信息named.ca文件中的配置信息
F、设置正向区域文件中的配置信息
G、设置反向区域文件的配置信息
H、由于/var/named/chroot/var/named目录及其文件中的所属用户和所属组一定要是root、named,否则无法启动DNS服务,因此首先修改目录的所属用户和所属组。
I、编辑/etc/resolv。
conf,令其nameserver选项的值为指定DNS服务器的IP地址
192.168.32。
132
J、重启DNS服务并查看DNS域名解析服务
三、实验小结
通过本次试验的实践和学习,掌握了在Linux下DNS的安装和配置方法,以及了解了DNS 配置文件的信息内容和功能作用,掌握了怎样配置DNS正向区域文件和反向区域文件,同时还对DNS的工作原理有了比较深刻的了解.。
linux中dns的工作原理
在Linux系统中,DNS(Domain Name System)的工作原理如下:
1.DNS用于将主机的主机名和IP地址之间进行转换。
在实际使用中,人们使用主机名来访问网络中的设备,但实际上,网络中的设备之间是通过IP地址进行通信的。
因此,DNS 通过将主机名映射到IP地址,使得人们可以使用更易于记忆的主机名来访问网络中的设备。
2.DNS域名系统通过将主机名映射到IP地址来实现这一转换。
当客户端发出DNS查询请求时,DNS服务器会根据请求的主机名查找对应的IP地址,并将结果返回给客户端。
3.DNS服务器可以是主域名服务器(Primary DNS Server)或从域名服务器(Secondary DNS Server)。
主域名服务器是负责存储特定域名的DNS记录的服务器,而从域名服务器则作为备份服务器,用于在主域名服务器发生故障或负载过重时提供域名解析服务。
4.在Linux系统中,可以使用各种工具来配置和管理DNS。
例如,可以使用named或bind工具来配置主域名服务器,使用nslookup或dig工具来查询DNS记录等。
总之,Linux系统中的DNS工作原理是通过将主机名映射到IP地址来实现对网络设备的访问,同时使用主域名服务
器和从域名服务器来提供域名解析服务。
LINUX配置DNS服务器在Linux系统中配置DNS服务器是非常简单的,可以使用bind软件包来设置。
bind是一款开源的DNS服务器软件,常用于配置本地域名解析或搭建局域网DNS服务器。
以下是使用bind软件包在Linux系统上配置DNS服务器的步骤:1. 安装bind软件包:在Linux系统上使用包管理工具如apt、yum等安装bind软件包。
在Debian/Ubuntu系统上,可以使用以下命令安装bind软件包:```sudo apt-get updatesudo apt-get install bind9```在其他Linux发行版上,类似的命令也适用。
- `options`部分:配置DNS服务器的全局选项,如监听的IP地址、允许的查询类型等。
- `zone`部分:配置DNS服务器的区域,可以添加自定义的区域文件。
- `include`部分:可以包含其他配置文件,如将自定义的配置文件放在其他路径下。
示例配置:```optionsdirectory "/var/cache/bind";listen-on { any; };allow-query { any; };};type master;};```示例配置:```3600 ; Refresh1800 ; Retryns1 IN A 192.168.1.10ns2 IN A 192.168.1.11```4. 启动bind服务:完成以上配置后,可以使用以下命令启动bind 服务:```sudo service bind9 start```可以使用`status`参数检查服务状态:```sudo service bind9 status```如果服务启动成功,可以在系统日志中查看bind的运行日志。
5. 配置客户端:在需要使用DNS服务器的客户端上,可以将DNS服务器的IP地址指定为客户端的DNS配置。
可以在网络配置中指定DNS服务器的IP地址,或直接修改客户端的`resolv.conf`文件。
如何在Linux上搭建DNS服务器集群在当今高度互联网化的环境下,DNS(域名系统)的作用日益重要。
它将域名转换为IP地址,使得用户能够轻松访问互联网上的各种资源。
然而,随着互联网规模的不断扩大,传统的单一DNS服务器已经无法满足高负载和高可用性的需求。
因此,在Linux上搭建DNS服务器集群已成为许多企业和组织提高性能和可靠性的关键步骤。
本文将介绍如何在Linux平台上搭建DNS服务器集群,以确保系统的高可用性和高性能。
一、DNS服务器集群的优势通过搭建DNS服务器集群,可以带来以下几个优势:1. 高可用性:DNS服务器集群可以通过冗余配置来提供高可用性。
当一个服务器发生故障时,其他服务器可以接管服务,确保用户的请求得到及时响应。
2. 负载均衡:DNS服务器集群可以通过负载均衡技术将用户的请求分散到集群中的各个服务器上,以提高系统的性能和响应速度。
3. 扩展性:通过增加或减少集群中的服务器数量,可以根据实际需求来调整系统的处理能力,提高系统的扩展性。
二、DNS服务器集群的搭建步骤1. 确定服务器数量:根据实际需求来确定搭建DNS服务器集群所需的服务器数量。
通常建议至少使用三台服务器,以实现高可用性和负载均衡。
2. 安装Linux操作系统:在每个服务器上安装适用的Linux发行版,如Ubuntu、CentOS等。
确保选择的发行版具有良好的稳定性和支持性。
3. 安装BIND软件:BIND(Berkeley Internet Name Domain)是Linux平台上最常用的DNS软件。
在每个服务器上安装BIND软件,并进行基本的配置。
4. 配置主从服务器:将一台服务器配置为主服务器,其他服务器配置为从服务器。
主服务器负责接收和处理用户的DNS请求,从服务器用于备份和冗余。
5. 设置域名解析:对每个要管理的域名进行解析和配置,将域名和IP地址进行关联。
确保域名解析的准确性和及时性。
6. 配置负载均衡:使用负载均衡技术,将用户的请求分发到集群中的各个服务器上。
Linux服务器搭建之九:DNS服务器(bind9)Linux操作系统平台:Xubuntu
账户:root
主要软件包:bind9
bind9服务器搭建流程:
0.【apt-get install bind9】安装bind9软件包:
1.【/etc/】目录下有个bind目录,bind9的文件配置目录:
2.【/etc/bind】目录里的配置文件:
3.vim编辑named.conf.local文件,在里面修改信息为下图那样:(配置域名文件)(原来有个模子的,直接修改即可,是我即将解析的域名,你可自己想一个新的)
4.【cp db.local 】将文件db.local复制为:
5.vim编辑cat 文件,在原先的模子上修改为下面那样即可:(配置解析文件)
(主要修改了:[1],[2]192.168.170.184(本机IP),其他的基本默认了)
6.【service bind9 start】启动bind9服务器:(忘记截图了)
还是【nslookup】命令查询域名是否解析成功:
刚才解析的和现在解析的在同一个IP上,这样的话可以实现一机多站了,节省网站服务器开支。
(还有一种常见的DNS域名解析服务器搭建是Redhat平台上的,由于那个软件有些过时了,配置文件非常麻烦,我就选择Xubuntu平台进行DNS搭建了)
(注:素材和资料部分来自网络,供参考。
请预览后才下载,期待你的好评与关注!)。
117linux 下建设广电智能DNS 服务器【摘要】【关键词】随着三网融合的不断推进,广电已经从提供单一的广播电视业务,逐步的向传统的电信业务,互联网业务全业务运营商迈进。
临沂广电近来在宽带业务用户方面增长迅速,对宽带业务的需求及网络的性能需求也不断提高。
在这种形势下建设一台广电自己的DNS 服务器,避免大量的上网用户每次都要去外网解析地址,通过内网DNS 服务器解析即节省了带宽,又提高了解析速度,避免了互联互通问题,能够提供精确地业务指向,加快了浏览网页的速度。
一、智能DNS 实现Linux 系统是服务器方面比较稳定的操作系统,而bind 是现今互联网上最常使用的DNS 服务器软件。
通过在linux 系统下安装bind 便可实现智能DNS 解析。
主要的实现原理及方法如下:对于内网的IP 地址如192.168.88.100浏览网页的大致过程如下,当打开一个网址时,首先需要请求内网的DNS 服务器来获得对应网址的IP 地址,DNS 服务器收到请求后,首先查询自己缓存中是否存在对应的记录,若有,直接返回结果,若没有,则根据用户的来源地址,进行智能解析,判断是移动还是电信或是联通,若采用了移动的线路上网,送往移动出口解析,解析结果返回本地作为缓存保存,以便下次解析。
以上实现方法可以通过在BIND 的主配置文件named.conf 下添加一条ACL 规则,本ACL 规则可以单独做一个acl.conf 文件来引用,更方便维护。
本条定义了根据目的地址区分的去缓存的解析ACLacl CACHE{221.129.0.0/16182.238.0.0/16… ;};其余的可据此分别定义根据源地址区分的去电信、联通、移动等方面的ACL 文件,如去电信方向的如下acl TELECOM {10.20.0.0/16;};ACL 文件主要是为了区分不同网络出口对应的内网地址。
以下为name.conf 文件,主要包含两部分文件,一是视图view_CACHE,作为本地的缓存解析对应的文件,缓存常用的网址及本地的视频文件,作为一个缓存服务器,另一部分是view_TELECOM 等作为高速缓存及转发服务器用,对内网无法解析到的地址,直接转发到外网来解析。
DNS
DNS服务器类型:主域名服务器,从域名服务器,缓存服务器(不是权威域名服务器,提供缓存域名结果),转发器(中继)
1、安装bind(软件包)
Yum install –y bind
Yum list all | grep bind #看有哪些bind软件包,安装了哪些
2、规划
/etc/named.conf #bind主配置文件
/var/named #数据库文件存放位置
Named.ca #全球根服务器信息
Localhost.zone #正向解析文件,将localhost解析成127.0.0.1
Named.local #反向解析文件,将127.0.0.1解析成localhost /etc/init.d/named #启动脚本,可以service启动
Rndc #远程控制工具,监听端口953
2、配置文件
a)Named.conf
Directory 定义数据库文件存放路径
Zone 高速bind正向解析,反向解析所在的区域
Key 用rndc管理bind的秘钥
注意{}前后的空格
b)Localhost.zone
$TTL 因为TTL数值一样,所以将TTL拿出来做全局变量
第一行必须定义SOA
Localhost . .为根目录,localhost为域名
Localhost. 可以用@代替,admin.localhost.定义邮箱,@有特殊含义所以用.代替
()中第一行为序列号10位,1H从域名服务器多久探测一下主域名服务器
10M 如果探测不到主域名服务器多久再探测一次,
7D 7天找不到从域名服务器自杀失效,
1D 否定回答时间,一天内回应一次其他DNS服务器请求本域名服务器所管
理的服务器域名
第二行开始无顺序要求,定义本DNS所管理的域内的权威服务器
第三行实现本机域名与IP的转换
c)Named.local
Named.local 与localhost.zone只有A那行不同,可以cp过来修改
最后一行实现ip转换为域名,主机地址需要反着写,127.0.0.1只保留主机地
址1
3、linux中进程以用户的身份运行,所以需要修改配置文件的组名,
chown :named /etc/named.conf
chown :named /var/named/* -R
4、rndc
rndc-confgen >/etc/rndc.conf #生成rndc.conf配置文件
我们可以看到#开头第二行,需要将下面#开头的行放到named.conf中
Tail /etc/rndc.conf |head -9 | sed ‘s/^#//g’ >> /etc/named.conf
Service named configtest 可以检查文件的语法错误
因为你在named.conf中定义了localhost.zone named.local两个配置文件,这里会同时对这两个配置文件检查,检查没有问题后就可以启动named了
Service named start
5、测试下
dig –t A localhost.
ANSWER SECTION:这行是对请求的回应Dig –x 127.0.0.1 看127.0.0.1的主机名
6、实例:
Named.conf
.zone
b.192.168.152.zone
7、主从
Scp named.conf /var/named/* 到从服务器,删除192.168.152.zone, .zone 主:
Named.conf
从:
关闭防火墙,selinux 重启named,slaves中会同步出两个文件Generating /etc/rndc.key rndc-confgen -r /dev/urandom -a
8、相关命令named.conf
allow-transfer {};区域传送,只允许{}中的IP,dig –t axfr @IP,
allow-query {}; 允许哪些查询,与acl一起用放在区域zone中allow-query {aquery};
acl aquery {
192.168.0.1;
192.168.0.2;
};
acl声明在options上边。
一个列表可以包含另一个列表,any,none,localhost,localnets allow-recursion 递归查询,dig +recurs –t A @192.168.152.132,直接使用132递归查询,132出去查询返回结果allow-recursion { none; };拒绝给任何人递归
9、智能DNS
View实现不同IP访问得到的解析不同,zone放在view中
Match-clients定义哪个IP得到什么解析,recursion no 不允许递归
10、子域授权
父服务器中,正向解析区域文件中,
. IN NS .
. IN A 192.168.152.137
主:
子:
转发域在子域中声明父域位置
转发··
Forward 转发器first|only first先递归再迭代,only只递归不迭代Options中声明forward first;forwarders { 192.168.152.140;};
10、打开日志功能
Options中定义querylog yes;打开日志查询功能
Channel,cataqory—>系统内置
记录日志的格式:file→日志名字,syslog→日志级别
在/var/log/named中创建两个文件query_log,xfer_log。