linux配置dns服務
❶ linux怎麼搭建DNS伺服器
http://jingyan..com/article/454316ab56277df7a6c03a6a.html
❷ 在Linux中,如何配置DNS
Linux系統如何修改DNS?
1.在命令行中輸入「vi /etc/resolv.conf」命令對resolv文件進行編輯
2.在打開的文件中輸入 nameserver 114.114.114.114(按鍵盤上的I鍵可以使當前文本進入編輯狀態),按下鍵盤上的ESC可以退出編輯狀態。
3.在退出編輯狀態下輸入:wq回車後可以對當前配置進行保存
網卡方式如何配置DNS?
在命令行輸入「vi /etc/sysconfig/network-scripts」打開網卡配置文件,在配置文件中的DNS1和DNS2中配置上新的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伺服器地址
設置方法很簡單,通過編輯 vi/etc/resolv.conf 設置首選DNS和次要DNS。如下圖,排在前面的就是首選DNS,後面一行就是次要的DNS伺服器DNS
❺ Linux怎麼搭建DNS伺服器
Linux搭建DNS伺服器簡要步驟:
1
簡要步驟:
1.在bind的主配置文件中添加該域
2.在/var/named中創建該域的zone文件
3.編輯zone文件,添加需要的信息
4.檢測防火牆或selinux設置
5.啟動bind服務,重啟網路服務
6.用戶端測試域名解析
END
搭建DNS伺服器詳細步驟:
1
1、安裝DNS伺服器組件
安裝bind
yum install -y bind bind-chroot bind-utils
2
2、編輯DNS主配置文件
vi /etc/named.conf修改主配置文件,如下圖:
修改完畢,保存退出
3
3、接著修改named.rfc1912.zones文件,vi /etc/named.rfc1912.zones,如下圖:
4
4、添加設置DNS正向解析
修改zone配置文件,正向解析:
cd /var/named/
cp named.localhost szlpt.cn.zone
vi szlpt.cn.zone(要和主配置文件[/etc/named.rfc1912.zones]裡面定義的zone文件名一致)
5
5、修改zone配置文件,反向解析:
cd /var/named/
cp named.localhost 32.168.192.zone
vi 0.168.192.zone(要和主配置[/etc/named.rfc1912.zones]文件裡面定義的zone文件名一致)
6
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
7、啟動DNS服(注意DNS服務名稱在linux是叫做bind)
service named start
8
8、測試檢測域信息是否正常(重要)
檢查之前先看下 配置文件有沒有讀取許可權 ll /var/named
(如果沒有讀取全線, chmod +r /var/named/* 即可)
9
9、檢查bind文件配置過程中容易出錯
以下命令用以檢查bind配置文件及zone文件語法
named-checkconf /etc/named.conf
named-checkzone szlpt.cn /var/named/ szlpt.cn.zone
10
10、啟動重啟DNS服務,查看服務狀態
service named restart
service network restart
用戶端測試解析,通過nslookup進行測試。
END
注意事項
以上經驗截圖是以centos系統版本為例,其他linux版本配置文件可能有所不同。根據實際情況修改
本經驗小編親測截圖,如果您覺得對您有幫助,就點擊支持我吧。點擊關注「咗嚛」,及時獲取最新經驗資訊!
❻ LINUX的DNS怎麼設置
以ubuntu為例子:
sudo /etc/resolv.conf
用#屏蔽原來的nameserver,然後添加新的DNS如下:
nameserver 8.8.8.8
nameserver 8.8.4.4
這里8.8.x.x是谷歌提供的域名解析服務,你可以設定你自己的。
❼ 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伺服器
安裝 BIND 軟體包
1、安裝
# yum -y install bind caching-nameserver
2、配置
下面的例子是以公網IP(172.16.0.80/29),區域網IP(192.168.0.0/24),域名(linuxde.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伺服器怎麼設置
在linux系統中一般通過bind軟體包來提供dns服務。
1、環境准備:
臨時關閉selinux和iptables
#setenforce0
#serviceiptablesstop
2、查詢相關軟體包:
[root@localhost~]#yumsearchbind
Loadedplugins:proct-id,refresh-packagekit,subscription-manager
UpdatingRedHatrepositories.
======================================================================================N/SMatched:bind======================================================================================
PackageKit-device-rebind.i686:
bind.i686:TheBerkeleyInternetNameDomain(BIND)DNS(DomainNameSystem)server
bind-chroot.i686:,named(8)
bind-utils.i686:
其中各軟體包的作用如下:
1)、bind: 提供域名服務的主要程序及相關文件。
2)、bind-chroot:為bind提供一個偽裝的根目錄以增強安全性。
3)、bind-utils:提供對DNS伺服器測試的工具程序(如nslookup、dig等)。
3、安裝BIND軟體包
#yuminstall*bind*
4、配置DNS伺服器:
1)、bind伺服器端程序
主要執行程序:/usr/sbin/named
服務腳本:、etc/init.d/named
默認監聽埠:53
主配置文件: /etc/named.conf
保存DNS解析記錄的數據文件: /var/named/chroot/var/named
2)、查詢bind程序的配置文件列表
[root@localhost~]#rpm-qcbind
/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
3)、查看主配置文件named.conf
#vim/etc/named.conf
4)、主配置文件解析:
a、全局配置部分,默認的全局配置項如下:
options{
11listen-onport53{127.0.0.1;};//監聽的埠和介面IP地址
12listen-on-v6port53{::1;};
13directory"/var/named";//dns區域的數據文件默認存放位置
14mp-file"/var/named/data/cache_mp.db";
15statistics-file"/var/named/data/named_stats.txt";
16memstatistics-file"/var/named/data/named_mem_stats.txt";
17allow-query{localhost;};//允許dns查詢的客戶機列表,any表示所有
18recursionyes;//是否允許客戶機進行遞歸查詢
19
20dnssec-enableyes;
21dnssec-validationyes;
22dnssec-lookasideauto;
23
24/*PathtoISCDLVkey*/
25bindkeys-file"/etc/named.iscdlv.key";
26};
全局配置中還有如下選項:
//將本域名伺服器不能解析的條目轉發給其它DNS伺服器的IP地址
forwarders{202.102.24.68;12.3.3.3;};
b、默認的區域配置項如下:
35zone"."IN{
36typehint;//區域類型。hint為根區域;master為主區域;slave為輔助區域
37file"named.ca";//該區域對應的區域數據配置文件名
38};
區域配置中還有如下選項:
//允許下載區域資料庫的從域名伺服器IP地址
allow-transfer{189.98.90.23;};
//允許動態更新的客戶端IP地址(none表示全部禁止)
allow-update{none;};
添加如下區域配置:
zone「my.com」IN{
typemaster;//主區域
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反向解析
typemaster;//主區域
file「192.168.153.my.arpa」;//該區域對應的區域數據配置文件名
};
5)、配置完了,可以執行如下命令對named.conf文件進行語法檢查。
#named-checkconf
注意:倒序網路地址.in-addr.arpa 表示反向區域
主配置文件最後還有一行是:
//該文件包含/etc/named.rfc1912.zones文件
include「/etc/named.rfc1912.zones」
區域數據配置文件:
先看一下named.localhost的內容:
$TTL1D//timetolive生存時間
@[email protected].(//」rname.invalid」DNS區域地址
0;serial//更新序列號
1D;refresh//更新時間
1H;retry//重試延時
1W;expire//失效時間
3H);minimum//無效地址解析記錄的默認緩存時間
NS@//nameserver域名服務記錄
A127.0.0.1//address只用在正向解析的區域數據文件中
AAAA::1
新建2個對應的區域數據配置文件:
#touchmy.com
#touch192.168.153.my.arpa
#vimmy.com
$TTL86400
@INSOAmy.com.admin.my.com(//admin.my.cm為該區域管理員的郵箱地址
200900201
3H
15M
1W
1D
)
@INNSns1.my.com.//當前域的DNS伺服器地址
INMX10mail.my.com.//用於設置當前域的郵件伺服器域名地址,數字10表示優先順序別,數字越大優先順序越低
ns1INA192.168.153.130
mailINA192.168.153.130
wwwINA192.168.153.130
ftpINCNAMEwww//CNAME別名(canonicalname)記錄,表示ftp.my.com和www.my.com對應同一個IP.
[root@localhostnamed]#vim192.168.153.my.arpa
$TTL86400
@INSOAmy.com.admin.my.com(
200900201
3H
15M
1W
1D
)
@INNSns1.my.com.
130INPTRftp.my.com
啟動DNS服務
[root@localhost~]#servicenamedstart
4、測試:
配置一台ftp伺服器用於測試:
#servicevsftpdstart//啟動vsftpd服務
當前網卡的配置:
eth0:192.168.0.1/24
eth1:192.168.153.130/24
[root@localhostnamed]#nslookup192.168.153.130
Server:127.0.0.1
Address:127.0.0.1#53
130.153.168.192.in-addr.arpaname=www.my.com.
[root@localhost~]#nslookupftp.my.com
Server:127.0.0.1
Address:127.0.0.1#53
ftp.my.comcanonicalname=www.my.com.
Name:www.my.com
Address:192.168.153.130
❿ LINUX的DNS怎麼設置
配置文件位於:/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.3
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS=192.168.0.5
使IP地址生效:
/sbin/ifdown eth0
/sbin/ifup eth0
配置dns解析
echo "nameserver 211.98.1.28">> /etc/resolv.conf
通知網關更新信息:
/etc/init.d/network restart
下面是配置DNS的過程:
1.簡介
DNS就是Domain Name System,它能夠把形如www.21php.com這樣的域名轉換為211.152.50.35這樣的IP地址;沒有DNS,瀏覽21php.com 這個網站時,就必須用211.152.50.35這么難記的數字來訪問。提供DNS服務的就是DNS伺服器。DNS伺服器可以分為三種,高速緩存伺服器 (Cache-only server)、主伺服器(Primary Name server)、輔助伺服器(Second Name Server)。