⑴ linux怎麼搭建DNS伺服器
騰訊雲官網論壇有很多高手的招,引用其中一條如下:
1、安裝DNS伺服器組件:安裝bind
yum install -y bind bind-chroot bind-utils
2、編輯DNS主配置文件:
vi /etc/named.conf修改主配置文件,如下圖:
修改完畢,保存退出
3、接著修改named.rfc1912.zones文件,vi /etc/named.rfc1912.zones,如下圖:
4、添加設置DNS正向解析:
修改zone配置文件,正向解析:
cd /var/named/
cp named.localhost szlpt.cn.zone
vi szlpt.cn.zone(要和主配置文件[/etc/named.rfc1912.zones]裡面定義的zone文件名一致)
5、修改zone配置文件,反向解析:
cd /var/named/
cp named.localhost 32.168.192.zone
vi 0.168.192.zone(要和主配置[/etc/named.rfc1912.zones]文件裡面定義的zone文件名一致)
6、更改防火牆設置和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 #重啟防火牆,使規則生效
7、啟動DNS服(注意DNS服務名稱在linux是叫做bind):
service named start
8、測試檢測域信息是否正常(重要):
檢查之前先看下 配置文件有沒有讀取許可權 ll /var/named
(如果沒有讀取全線, chmod +r /var/named/* 即可)
9、檢查bind文件配置過程中容易出錯:
以下命令用以檢查bind配置文件及zone文件語法
named-checkconf /etc/named.conf
named-checkzone szlpt.cn /var/named/ szlpt.cn.zone
10、啟動重啟DNS服務,查看服務狀態:
service named restart
service network restart
用戶端測試解析,通過nslookup進行測試。
⑵ linux配置dns伺服器配置命令
linux配置dns伺服器配置命令
Linux系統的DNS伺服器怎麼配置,配置命令有哪些?下面跟我一起來了解一下吧!
一、實驗目的
熟悉Linux系統中DNS伺服器的配置方法。理解配置過程的基本步驟的作用。
二、實驗任務
(1)建立正向搜索區域,為網路個台伺服器建立主機記錄、別名記錄。為網路建立郵件交換器記錄。使得客戶機能夠根據伺服器主機域名搜索出其IP地址。
(2)建立反向搜索區域,為網路個台伺服器建立反向記錄,使得客戶機能夠根據伺服器主機IP地址搜索出其域名。
三、實驗內容
1)DNS伺服器配置的主要步驟:
首先在桌面右擊,選擇【新建終端】;
1. 查看系統中是否已經安裝了DNS伺服器程序BIND,命令如下:
[root@libl root]#rpm –qa |grep bind(對照書本查看,一般都會有安裝的。)
2、用命令直接啟動dns伺服器,命令如下:[root@libl root]# service named start
3、編輯主配置文件/etc/named.conf,主要是添加正向解析和反向解析,文件內容如下:
// generated by named-bootconf.pl
options {
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"; //用來指定具體存放DNS記錄的文件
};
zone "localhost" IN { //用來指定具體存放DNS記錄的文件
type master;
file " localhost.zone";
allow-update { none ;} ;
};
zone "0.0.127.in-addr.arpa" IN { //定義一個IP為127.0.0.* 的反向解析
type master;
file "named.local";
allow-update { none ;} ;
};
zone "test.com" IN { //指定一個域名為test.com的`正向解析
type master;
file "test.com.zone";
};
zone "173.168.192.in-addr.arpa" IN { //定義一個IP為192.168.173.* 的反向解析
type master;
file "173.168.192.in-addr.arpa .zone";
} ;
Include “/etc/rndc.key” ;
4、配置正向解析文件
正向解析是根據域名得到其IP地址。編輯正向解析文件/var/named/test.com.zone 如下:
$TTL 86400
@ IN SOA dns.test.com. webmaster.test.com. (
20110510; // 系列號,其值通常設置為日期。
28800; //刷新時間
7200; //重試
604800; //過期
86400; //生存時間
)
IN NS dns
@ IN MX 1 mail
dns IN A 192.168.173.66
www IN A 192.168.173.65
mail IN A 192.168.173.67
ftp IN CNAME www.test.com
5、配置反向解析文件
反向解析文件提供IP地址查詢相應 DNS主機名。編輯反向解析文件/var/named/173.168.192.in-addr.arpa .zone 如下:
$TTL 86400
@ IN SOA dns.test.com. webmaster.test.com. (
20110510; //
28800;
7200;
604800;
86400;
)
IN NS dns.tes.com.
66 IN PTR dns.test.com.
65 IN PTR www.test.com.
67 IN PTR mail.test.com.
6、接下來重啟dns伺服器,命令如下:[root@libl root]# service named restart
7、設置dns客戶端。
對於windows2003環境系的dns客戶端,使IP地址設為靜態設置,其地址為192.168.173.65,子網掩碼為 255.255.255.0,默認網關為192.168.173.254,首先DNS伺服器(p)為192.168.173.66
8、測試DNS伺服器。
1)在桌面的【開始】那點擊後又點擊【運行】
2)在彈出的面板上輸入“cmd”後就出現【命令提示符】下輸入“ping dns.test.com”查看正向解析是否成功,接著再輸入“ping 192.168.173.66”查看反向解析直接啟動DHCP伺服器,是否成功。若不成功,則在linux系統的配置dns伺服器的機上的【新建終端】上先啟動dns伺服器,接著再查看正反向解析文件有沒有建立好,命令如下:[root@ root]# named –g
;⑶ 如何在linux下搭建dns伺服器最關鍵的配置文件有哪幾個分別有什麼用一般在linux下搭建
1、需要安裝bing、bing-chroot、caching-nameserver這三個包
2、編輯配置文件:有三個
(1)主配置文件,是/var/named/chroot/etc/named.conf
在這里你要回配置dns的ip,監聽埠,答區域文件的目錄,允許其他主機使用dns服務和緩存。最終要的就是你要定義正向解析區域和反向解析區域,在這裡面要指明正向區域文件和反向區域區域文件的名字
(2)兩個區域文件,文件名是你自己定義的,必須跟主配置文件里的一樣。
區域文件會放在/var/named/chroot/var/named/目錄下,裡面有模板的。直接拷貝。
3、重啟服務。
重啟服務失敗一般都是配置文件出錯,而且dns服務是一個比較難學的服務,所以建議兄弟你在網上找點更詳細的資料。就是配置文件詳解之類的。要懂得配置文件里每一項參數設定的意義。
祝你好運~~~
⑷ linux下如何配置DNS伺服器,
在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";
mp-file "/var/named/data/cache_mp.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 86400
@ 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 86400
@ 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 86400
@ IN SOA 1.168.192.in-addr.arpa. root.test.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; 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伺服器地址
⑸ 如何在在Linux系統上配置DNS伺服器
安裝 BIND 軟體包
1、安裝
# yum -y install bind caching-nameserver
2、配置
下面的例子是以公網IP(172.16.0.80/29),區域網IP(192.168.0.0/24),域名(.net)作說明。在配置你自己的伺服器時,請使用你自己的IP和域名。
# vim /etc/named.conf
options {
directory "/var/named";
# query range
allow-query { localhost; 192.168.0.0/24; };
# transfer range
allow-transfer { localhost; 192.168.0.0/24; };
# recursion range
allow-recursion { localhost; 192.168.0.0/24; };
};
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
# here is the section for internal informations
vimew "internal" {
match-clients {
localhost;
192.168.0.0/24;
};
zone "." IN {
type hint;
file "named.ca";
};
# set zones for internal
zone "linuxde.net" IN {
type master;
file "linuxde.net.lan";
allow-update { none; };
};
# set zones for internal
zone "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 external
zone "linuxde.net" IN {
type master;
file "linuxde.net.wan";
allow-update { none; };
};
# set zones for external *note
zone "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/24
network address? 192.168.0.0
range of network? 192.168.0.0 - 192.168.0.255
how to write? 0.168.192.in-addr.arpa
case of 172.16.0.80/29
network address? 172.16.0.80
range of network? 172.16.0.80 - 172.16.0.87
how to write? 80.0.16.172.in-addr.arp
設置Zones
創建zone文件以便伺服器能解析域名IP。
1、內部zone文件
這個例子使用的是內網地址(192.168.0.0/24),域名(linuxde.net),請根據自己的具體情況配置。
# vim /var/named/linuxde.net.lan
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.
# internal IP address of name server
IN A 192.168.0.17
# define mail exchanger
IN MX 10 ns.linuxde.net.
# define IP address and hostname
ns IN A 192.168.0.17
2、外部zone文件
這個例子使用的是外網地址(172.16.0.80/29),域名(linuxde.net),請替換成自己的。
# vim /var/named/linuxde.net.wan
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.
# external IP address of name server
IN A 172.16.0.82
# define Mail exchanger
IN MX 10 ns.linuxde.net.
# define IP address and hostname
ns IN A 172.16.0.82
創建zone文件使伺服器能夠反向解析IP到域名。
3、內部zone文件
這個例子使用的是內網地址(192.168.0.0/24),域名(linuxde.net),請使用自己的設置替換。
# vim /var/named/0.168.192.db
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.
# define range that this domain name in
IN PTR linuxde.net.
# define IP address and hostname
IN A 255.255.255.0
17 IN PTR ns.linuxde.net.
4、外部zone文件
這例子使用外網地址(172.16.0.80/29),域名(linuxde.net),請替換成自己的。
# vim /var/named/80.0.16.172.db
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.
# define range that this domain name in
IN PTR linuxde.net.
# define IP address and hostname
IN A 255.255.255.248
82 IN PTR ns.linuxde.net.
啟動BIND
1、完成BIND的配置後,在啟動named之前,還需要建立chroot環境。
# yum -y install bind-chroot
# /etc/rc.d/init.d/named start
# chkconfig named on
2、操作檢驗
確認伺服器已經正確解析域名或IP地址。
# dig ns.linuxde.net.
; <<>> DiG 9.3.4 <<>> ns.linuxde.net.
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54592
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;ns.linuxde.net. IN A
;; ANSWER SECTION:
ns.linuxde.net. 86400 IN A 192.168.0.17
;; AUTHORITY SECTION:
linuxde.net. 86400 IN NS ns.linuxde.net.
;; Query time: 0 msec
;; SERVER: 192.168.0.17#53(192.168.0.17)
;; WHEN: Thu Mar 8 19:35:19 2007
;; MSG SIZE rcvd: 68
# dig -x 192.168.0.17
; <<>> DiG 9.3.4 <<>> -x 192.168.0.17
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45743
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;17.0.168.192.in-addr.arpa. IN PTR
;; ANSWER SECTION:
17.0.168.192.in-addr.arpa. 86400 IN PTR ns.linuxde.net.
;; AUTHORITY SECTION:
0.168.192.in-addr.arpa. 86400 IN NS ns.linuxde.net.
;; ADDITIONAL SECTION:
ns.linuxde.net. 86400 IN A 192.168.0.17
;; Query time: 0 msec
;; SERVER: 192.168.0.17#53(192.168.0.17)
;; WHEN: Thu Mar 8 19:37:50 2007
;; MSG SIZE rcvd: 107
配置從DNS伺服器
配置從DNS伺服器比較簡單。下面的例子主DNS是「ns.linuxde.net」,從DNS是「ns.example.info」。
1、在主DNS伺服器的zone文件作如下配置
# vim /var/named/linuxde.net.wan
$TTL 86400
@ IN SOA ns.linuxde.net. root.linuxde.net. (
# update serial
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS ns.linuxde.net.
# add name server
IN NS ns.example.info.
IN A 172.16.0.82
IN MX 10 ns.linuxde.net.
ns IN A 172.16.0.82
# rndc reload
server reload successful
2、配置從DNS伺服器
# vim /etc/named.conf
# add these lines below
zone "linuxde.net" IN {
type slave;
masters { 172.16.0.82; };
file "slaves/linuxde.net.wan";
};
# rndc reload
server reload successful
# ls /var/named/slaves
linuxde.net.wan # zone file in master DNS has been just transfered
設置別名記錄,如果你想為你的主機設置另一個名稱,在zone文件定義CNAME記錄
# vim /var/named/server-Linux.info.wan
$TTL 86400
@ IN SOA ns.server-linux.info. root.server-linux.info. (
# update serial
2007041501 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
IN NS ns.server-linux.info.
IN A 172.16.0.82
IN MX 10 ns.server-linux.info.
ns IN A 172.16.0.82
# aliase IN CNAME server's name
ftp IN CNAME ns.server-linux.info.
# rndc reload
server reload successful
以下是一個整理的主配文件參數解釋(僅供參考)/**/代表注釋:
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 "test.net" IN { //指定一個域名為test.net的正向區域
type master;
file "test.net」
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/test.net文件
@ IN SOA linux.test.net. Webmaster.test.net. ( SOA表示授權開始
/*上面的IN表示後面的數據使用的是INTERNET標准。而@則代表相應的域名,如在這里代表test.net,即表示一個域名記錄定義的開始。而linux.test.net則是這個域的主域名伺服器,而webmaster.test.net則是管理員的郵件地址。注意這是郵件地址中用.來代替常見的郵件地址中的@.而SOA表示授權的開始
*/
2003012101 ; serial (d. adams) /*本行前面的數字表示配置文件的修改版本,格式是年月日當日修改的修改的次數,每次修改這個配置文件時都應該修改這個數字,要不然你所作的修改不會更新到網上的其它DNS伺服器的資料庫上,即你所做的更新很可能對於不以你的所配置的DNS伺服器為DNS伺服器的客戶端來說就不會反映出你的更新,也就對他們來說你更新是沒有意義的。
*/
28800 ; refresh
/*定義的是以為單位的刷新頻率 即規定從域名伺服器多長時間查詢一個主伺服器,以保證從伺服器的數據是最新的
*/
7200 ;retry
/*上面的這個值是規定了以秒為單位的重試的時間間隔,即當從服務試圖在主伺服器上查詢更時,而連接失敗了,則這個值規定了從服務多長時間後再試
*/
3600000 ; expiry
/*上面這個用來規定從伺服器在向主服務更新失敗後多長時間後清除對應的記錄,上述的數值是以分鍾為單位的
*/
8400 )
/*上面這個數據用來規定緩沖伺服器不能與主服務聯繫上後多長時間清除相應的記
錄
*/
IN NS linux
IN MX 10 linux
linux IN A 168.192.0.14
it-test1 IN A 168.192.0.133
www IN CNAME linux
/*上面的第一列表示是主機的名字,省去了後面的域。
NS:表示是這個主機是一個域名伺服器,
A:定義了一條A記錄,即主機名到IP地址的對應記錄
MX 定義了一郵件記錄
CNAME:定義了對應主機的一個別名
/var/named/168.192.0
@ IN SOA linux.test.net. webmastert.linux.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS linux.test.net.
/*以上的各關鍵字的含義跟test.net是相同的
14 IN PTR linux.test.net.
133 IN PTR it-test1.test.net.
/*
上面的第一列表示的是主機的IP地址。省略了網路地址部分。如14完整應該是:
168.192.0.14
PTR:表示反向記錄
最後一列表示的是主機的域名。
⑹ 在LInux中怎樣安裝和配置DNS伺服器要具體步驟
安裝包之後:
1、DNS主配置文件與區域數據文件配置
在/var/named/chroot/etc目錄下創建回DNS的主配文件:named.conf
#vi
/var/named/chroot/etc/named.conf
2、創答建正反向區域文件:在/var/named/chroot/var/named中創建
#cp
-p
/var/named/named.ca
/var/named/chroot/var/named/named.ca
――根提示文件
#vi
/var/named/chroot/var/named/文件名()此文件名根據你的主配文件內容定的。
重啟服務就OK了,如果不懂文件內容怎麼寫的話,繼續問。