您好,登錄后才能下訂單哦!
5.1、DNS簡介
DNS服務可以為用戶提供域名和IP之間的自動轉換。通過DNS,用戶只需輸入機器的域名即可訪問相關的服務,而無需使用那些難以記憶的IP地址。DNS幫助用戶在互聯網上尋找路徑,在互聯網上的每一個計算機都擁有一個唯一的地址,稱作'IP地址'。由于IP地址是一串數字,難以記憶,而DNS允許用戶使用一串有意義的字符串'即域名'取代,由域名轉換成相應IP地址的這個過程稱為域名解析。
DNS域名又稱為DNS命名空間,它是以層次樹狀結構進行管理的,其最頂層是根域。根域在整個DNS命名空間是唯一的,而根域下可以分為多個子域,每個子域又可以分為多個子域。例如,Internet命名空間具有多個頂級域名(top-level domain names,TLD),如org,net,com等。而cn頂級域名又可以有多個子域,如edu、net、org和com等。
一個完整的域名由頂級域以及各子域的名稱所組成,各部分之間用圓點'.'分隔開來。其中最后一個 '.'稱為根域,可省略,其左邊部分稱為頂級域名;第二個點'.'的左邊部分稱為二級域名(SLD);二級域左邊部分稱為三級域名;以此類推。例如www.sina.com.cn.中cn是一級域名,com是二級域名,sina是三級域名。全球一共有13個根域,其IP地址分別是:
[root@mylinux ~]# dig ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6_8.3 <<>> ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11096 ;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 15 ;; QUESTION SECTION: ;. IN NS ;; ANSWER SECTION: . 66583 IN NS e.root-servers.net. . 66583 IN NS f.root-servers.net. . 66583 IN NS b.root-servers.net. . 66583 IN NS a.root-servers.net. . 66583 IN NS m.root-servers.net. . 66583 IN NS i.root-servers.net. . 66583 IN NS k.root-servers.net. . 66583 IN NS j.root-servers.net. . 66583 IN NS d.root-servers.net. . 66583 IN NS c.root-servers.net. . 66583 IN NS l.root-servers.net. . 66583 IN NS g.root-servers.net. . 66583 IN NS h.root-servers.net. ;; ADDITIONAL SECTION: a.root-servers.net. 3580244 IN A 198.41.0.4 b.root-servers.net. 3576238 IN A 192.228.79.201 c.root-servers.net. 3580290 IN A 192.33.4.12 d.root-servers.net. 3575852 IN A 199.7.91.13 e.root-servers.net. 3523146 IN A 192.203.230.10 f.root-servers.net. 3590994 IN A 192.5.5.241 g.root-servers.net. 3549348 IN A 192.112.36.4 h.root-servers.net. 3586059 IN A 198.97.190.53 i.root-servers.net. 3534085 IN A 192.36.148.17 j.root-servers.net. 3562264 IN A 192.58.128.30 k.root-servers.net. 3562350 IN A 193.0.14.129 l.root-servers.net. 3534062 IN A 199.7.83.42 m.root-servers.net. 3561115 IN A 202.12.27.33 a.root-servers.net. 3574439 IN AAAA 2001:503:ba3e::2:30 b.root-servers.net. 3565057 IN AAAA 2001:500:84::b ;; Query time: 7 msec ;; SERVER: 10.225.30.181#53(10.225.30.181) ;; WHEN: Tue May 23 20:33:36 2017 ;; MSG SIZE rcvd: 492
Internet域名空間的頂級域是由ICANN(英特網名稱與數字地址分配機構)負責管理,這是一個近年來成立的負責管理Internet域名即地址系統的非營利機構。頂級域分為通用和國家兩大類。
通用頂級域名 | 說明 | 通用頂級域名 | 說明 |
com | 商業機構 | biz | 商業機構 |
net | 網絡服務組織 | name | 個人 |
org | 非營利性組織 | pro | 專用人士 |
edu | 教育機構 | coop | 商業合作社 |
gov | 政府機構 | aero | 航空運輸業 |
mil | 軍事機構 | museum | 博物館行業 |
int | 國際組織 | travel | 旅游行業 |
info | 信息行業 | job | 招聘和求職市場 |
除美國以外的國家或地區需要使用國家域名,國家域名使用雙字母來進行標識。常見國家頂級域名有
國家頂級域名 | 說明 | 國家頂級域名 | 說明 |
cn | 中國 | jp | 日本 |
hk | 中國香港 | uk | 英國 |
tw | 中國臺灣 | kr | 韓國 |
mo | 中國澳門 | de | 德國 |
sg | 新加坡 | fr | 法國 |
us | 美國 | ru | 俄羅斯 |
5.2、DNS工作原理
在DNS出現之前,通常是通過計算機上維護一個hosts文件(/etc/hosts)的方式來實現主機名和IP地址之間的解析。管理員在hosts文件中記錄所有需要訪問的主機的主機名與IP地址,當需要進行解析的時候系統會自動查詢hosts文件,并找出匹配的解析關系。采用這種方式,每臺主機上都必須維護一個hosts文件。網絡中每增加一臺計算機就必須手工修改hosts文件,添加新的計算機主機名和IP地址對應的記錄。
隨著計算機網絡的快速發展,網絡中計算機數量隨之快速增長,這種依賴hosts文件來實現主機名和IP地址之間解析的方式無法滿足網絡發展的需求。DNS提供了完整解決方案。
DNS服務器采用C/S方式進行工作。其具體工作流程為:
1、當需要進行DNS解析時,系統會向本地DNS服務器發出解析請求,由本地DNS服務器進行域名和IP地址的解析工作。 2、本地DNS服務器收到用戶請求后,則會將自身的DNS數據庫進行查找匹配的域名和IP記錄。如果找到則把結果返回給客戶端并完成解析工作;如果沒有找到則把請求轉發給根服務器。 3、根域DNS服務器查到所對應頂級域,將結果返回本地DNS服務器;本地DNS服務器根據頂級域地址向頂級域發起請求,頂級域DNS服務器查到二級域對應地址返回給本地DNS服務器;本地DNS服務器根據二級域地址向二級域DNS服務器發送請求,二級域DNS服務器查到三級域對應地址返回給本地DNS服務器;以此類推,直到本地DNS服務器找到最終要解析的域名所對應的IP地址 4、最終本地DNS服務器把結果返回給客戶端 5、如果經過查找后依然無法找到所需要的解析記錄,則有本地DNS服務器向客戶端返回無法解析的錯誤信息。 |
上面的工作流程為正向解析,即FQDN-->IP,反向解析為IP-->FQND正反向解析是兩個不同的名稱空間,是兩棵不同的解析樹;不應該存放同一個數據庫。FQDN(Full Qualified Domain Name, 完全限定域名)。
5.3、DNS服務器的安裝
bind是一款代碼的DNS服務器軟件,它是由伯克利大學編寫,全名(Berkeley Internet Name Domain)伯克利英特網域名,是目前世界上使用最為廣泛的DNS服務器軟件。
Centos6.5中自帶了bind軟件。但是為了使用最新版的bind軟件,可以從官方網站http://www.isc.org/上下載該軟件軟代碼進行安裝,也可以直接使用yum安裝。
[root@mylinux home]# yum install bind -y Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.tuna.tsinghua.edu.cn * epel: mirrors.tuna.tsinghua.edu.cn * epel-debuginfo: mirrors.tuna.tsinghua.edu.cn * epel-source: mirrors.tuna.tsinghua.edu.cn * extras: mirrors.tuna.tsinghua.edu.cn * updates: mirrors.hust.edu.cn Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package bind.x86_64 32:9.8.2-0.62.rc1.el6_9.2 will be installed --> Processing Dependency: portreserve for package: 32:bind-9.8.2-0.62.rc1.el6_9.2.x86_64 --> Running transaction check ---> Package portreserve.x86_64 0:0.0.4-11.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ========================================================================================= Package Arch Version Repository Size ========================================================================================= Installing: bind x86_64 32:9.8.2-0.62.rc1.el6_9.2 updates 4.0 M Installing for dependencies: portreserve x86_64 0.0.4-11.el6 base 23 k Transaction Summary ========================================================================================= Install 2 Package(s) Total download size: 4.0 M Installed size: 7.3 M Downloading Packages: (1/2): bind-9.8.2-0.62.rc1.el6_9.2.x86_64.rpm | 4.0 MB 00:42 (2/2): portreserve-0.0.4-11.el6.x86_64.rpm | 23 kB 00:00 ----------------------------------------------------------------------------------------- Total 87 kB/s | 4.0 MB 00:47 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : portreserve-0.0.4-11.el6.x86_64 1/2 Installing : 32:bind-9.8.2-0.62.rc1.el6_9.2.x86_64 2/2 Verifying : portreserve-0.0.4-11.el6.x86_64 1/2 Verifying : 32:bind-9.8.2-0.62.rc1.el6_9.2.x86_64 2/2 Installed: bind.x86_64 32:9.8.2-0.62.rc1.el6_9.2 Dependency Installed: portreserve.x86_64 0:0.0.4-11.el6 Complete!
啟動和關閉bind
安裝完成后可以開啟bind服務,bind通過named命令進行啟動,一般讓其后臺運行。
[root@mylinux named]# service named start Generating /etc/rndc.key:[ OK ] Starting named: [ OK ] [root@mylinux named]# ss -tunlp | grep :53 #查看DNS監聽的端口,默認只監聽本機 udp UNCONN 0 0 127.0.0.1:53 *:* users:(("named",1538,512)) udp UNCONN 0 0 ::1:53 :::* users:(("named",1538,513)) tcp LISTEN 0 3 ::1:53 :::* users:(("named",1538,21)) tcp LISTEN 0 3 127.0.0.1:53 *:* users:(("named",1538,20))
5.4、bind服務器配置
bind的主要配置文件包括named.conf和相應的區域文件,bind中各種配置的更改都是通過這個文件完成,修改完成后需要重新啟動bind服務使配置生效。其主要配置文件有:
服務腳本:/etc/rc.d/init.d/named 主配置文件:/etc/named.conf, /etc/named.rfc1912.zones(請求注解文檔) 區域解析庫文件:/var/named/zone_name.zone(至少包含根、本地、回環這三個區域文件) named.ca named.localhost named.loopback |
named.conf配置文件
named.conf是bind的主要配置文件,里面存儲了大量的bind自身的設置信息。bind安裝完成后并不會自動創建該配置文件,用戶需要通過命令手工生成。 默認顯示內容為
[root@mylinux etc]# cat name.conf key "rndc-key" { algorithm hmac-md5; secret "9WzbeVyRhvPUak0Irw6pLA=="; }; controls { inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndc-key"; }; }; [root@mylinux etc]#
named.conf配置文件由配置語句和注釋語句組成。每條配置語句以分號';'結尾,多條配置語句組成語句塊;注釋語句使用兩個左斜杠'//'作為注釋符。named.conf配置文件所支持的配置語句有:
語句 | 說明 |
acl | 定義一個主機匹配列表,用于訪問控制或其它用途 |
controls | 定義rndc工具與bind服務進程的通信 |
include | 把其他文件中的內容包含進來 |
key | 定義加密秘鑰 |
logging | 定義系統日志信息 |
lwres | 把named配置為輕量級解釋器 |
masters | 定義主域名列表 |
options | 設置全局選項 |
statistics-channels | 定義bind的統計信息的通信通道 |
server | 定義服務器的屬性 |
trusted-keys | 定義信任的DNSSEC密鑰 |
view | 定義視圖 |
zone | 定義區域 |
acl語句,用于定義地址匹配列表,其格式為:
acl string { address_match_element; ... };
bind默認定義了一些地址匹配列表
地址匹配列表 | 說明 |
any | 匹配任何主機 |
none | 不匹配任何主機 |
localhost | 匹配系統上所有網卡的IPv4和IPv6的地址 |
localnets | 匹配任何與系統有接口的主機的IPv4和IPv6的地址 |
controls語句,用于定義rndc工具與bind服務進程的通信,系統管理員可以通過rndc向bind進行發出命令,并接受由bind返回的結果。其格式為:
controls { inet ( ipv4_address | ipv6_address | * ) [ port ( integer | * ) ] allow { address_match_element; ... } [ keys { string; ... } ]; unix unsupported; // not implemented };
include語句,用于把語句中所制定的文件的內容添加進named.conf配置文件中,該語句格式為:
include filename
key語句,用于定義TSIG或命令通道所使用的加密秘鑰,其格式為:
key domain_name { algorithm string; secret string; };
option語句,用于設置影響整個DNS服務器的全局選項,該語句在named.conf配置文件中只能出現一次。如果沒有設置該語句,bind將使用默認的option值。該語句支持選項非常多,常用選項有:
options { directory quoted_string; forward ( first | only ); forwarders [ port integer ] { ( ipv4_address | ipv6_address ) [ port integer ]; ... }; query-source ( ( ipv4_address | * ) | [ address ( ipv4_address | * ) ] ) [ port ( integer | * ) ]; query-source-v6 ( ( ipv6_address | * ) | [ address ( ipv6_address | * ) ] ) [ port ( integer | * ) ]; statistics-interval integer;
directory選項用于定義服務器的工作目錄,在配置文件中所指定的所有相對路徑都是相對于該路徑來定義的。該目錄也是服務器中大部分輸出文件(如name.run)的存儲位置。系統默認使用'.'(即bind啟動的目錄)作為工作目錄,一般把bind的工作目錄設置為/var/named,如
directory '/var/named';
forwarders選項用于指定DNS請求的轉發到其他的DNS服務器上,該選項默認為空,也就是不進行轉發 。選項值可以是一個IP地址或主機名,也可以是多臺主機的列表,如
forwarders {192.168.191.2;192.168.191.100;192.168.191.105;}
forward選項僅在forwarders選項不為空時生效,該選項用于控制DNS服務器的請求轉發操作。如果選項為first,則DNS服務器會先把請求轉發給forwarders選項中所指定的遠端DNS服務器。如果遠端DNS服務器無法響應請求,則bind將嘗試自行解析該請求;如果選項值為only,則bind至轉發請求,并不進行處理。
query-source和query-source-v6選項分別用于設置DNS服務器所使用的IPv4和IPv6的IP地址和端口號。默認端口號為53,如果指定其他端口,將無法與全局的DNS服務器通信。
statistics-interval選項用于指定DNS服務器記錄統計信息的時間間隔,單位為分鐘,默認為60,最大值為40320,如果選項為0,則服務器不記錄統計信息。
server語句,bind有可能與其他的DNS服務器進行通信,但是并非所有的DNS服務器都運行同一個版本的bind。server語句可以設置遠程服務器的特征信息,以使雙方能夠正常通信。該語句的格式為:
server ( ipv4_address[/prefixlen] | ipv6_address[/prefixlen] ) { bogus boolean; edns boolean; edns-udp-size integer; max-udp-size integer; provide-ixfr boolean; request-ixfr boolean; keys server_key; transfers integer; transfer-format ( many-answers | one-answer ); transfer-source ( ipv4_address | * ) [ port ( integer | * ) ]; transfer-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ]; support-ixfr boolean; // obsolete };
view語句,該語句可以使bind根據客戶端地址來決定需要返回的域名解析結果,也就是說,不同的主機通過同一臺DNS服務器對同一個域名解析,會得到不同的解析結果。其格式為:
view string optional_class{ match-clients { address_match_element; ... }; match-destinations { address_match_element; ... }; match-recursive-only boolean; key string { algorithm string; secret string; }; zone string optional_class { ... }; }
每一條view語句定義了一個客戶端集合所能看到的視圖,如果客戶端匹配試圖中的match-clients選項所定義的客戶端列表,那么bind將根據該視圖返回解析結果。例如,希望對內網用戶和外網用戶進行區分,使他們訪問同一個域名時會得到不同的結果。可以使用view語句定義不同的視圖,在兩個視圖中分別定義不同的屬性,以達到效果。
view 'internal'{ match-clients { 172.0.0.0/8; }; recursion yes; zone 'example.com'{ type master: file 'example-internal.zone'; }; }; view 'external'{ match-clients { any; }; recursion no; zone 'example.com'{ type master: file 'example-external.zone'; }; };
zone語句,該語句是named.conf文件的核心部分。每一條zone語句定義一個區域,用戶可以在區域中設置該區域相關的選項。在bind中可以設置多種類型的區域,如表所示。不同類型的區域,其zone語句的d定義有所不同。
區域類型 | 說明 |
master | 主DNS區域 |
slave | 從DNS區域,由主DNS區域控制 |
forward | 將解析請求轉發給其他服務器 |
hint | 根DNS服務器集 |
stub | 與從區域類似,但只保存DNS服務器的名字 |
zone 'domain_name' IN{ type master; file 'path'; }; zone '.' IN{ type hint; file 'path'; };
其中,根域的名稱為'.',type選項定義區域的類型,根域所對應的類型代碼為hint。file選項定義了該區域所使用的區域文件,在該文件中可以定義與該區域文件相關的各種屬性。主DNS區域是bind中最基本的區域類型,它又可以分為正向解析區域和反向解析區域兩種。如下面定義了一個域名為test.com的正向解析區域,使用區域文件為test.zone。
zone 'test.com' IN { type master; file 'test.zone'; allow-update {none;}; };
反向解析主區域的例子為:
zone '1.168.192.in-addr.arpa' IN { type master; file 'test.local'; allow-update {none;}; };
檢查該配置文件語法錯誤的命令有:
Service named-checkconfig #檢查配置錯誤 service name-checkzone #檢查區域錯誤
根區域文件named.ca
named.ca是一個特殊的區域文件,該文件中記錄了Internet上的根DNS服務器的名稱和IP地址。DNS服務器接收到客戶端發來的解析請求后,如果在本地找不到匹配的DNS記錄,則把請求發送到該文件中所定義的根DNS服務器上進行逐級查找。在該文件中總共定義13個根DNS服務器。
[root@mylinux var]# cat named.ca ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -t NS . @a.root-servers.net ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1193 ;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;. IN NS ;; ANSWER SECTION: . 518400 IN NS e.root-servers.net. . 518400 IN NS h.root-servers.net. . 518400 IN NS l.root-servers.net. . 518400 IN NS i.root-servers.net. . 518400 IN NS a.root-servers.net. . 518400 IN NS d.root-servers.net. . 518400 IN NS c.root-servers.net. . 518400 IN NS b.root-servers.net. . 518400 IN NS j.root-servers.net. . 518400 IN NS k.root-servers.net. . 518400 IN NS g.root-servers.net. . 518400 IN NS m.root-servers.net. . 518400 IN NS f.root-servers.net. ;; ADDITIONAL SECTION: e.root-servers.net. 518400 IN A 192.203.230.10 e.root-servers.net. 518400 IN AAAA 2001:500:a8::e h.root-servers.net. 518400 IN A 198.97.190.53 h.root-servers.net. 518400 IN AAAA 2001:500:1::53 l.root-servers.net. 518400 IN A 199.7.83.42 l.root-servers.net. 518400 IN AAAA 2001:500:9f::42 i.root-servers.net. 518400 IN A 192.36.148.17 i.root-servers.net. 518400 IN AAAA 2001:7fe::53 a.root-servers.net. 518400 IN A 198.41.0.4 a.root-servers.net. 518400 IN AAAA 2001:503:ba3e::2:30 d.root-servers.net. 518400 IN A 199.7.91.13 d.root-servers.net. 518400 IN AAAA 2001:500:2d::d c.root-servers.net. 518400 IN A 192.33.4.12 ;; Query time: 68 msec ;; SERVER: 198.41.0.4#53(198.41.0.4) ;; WHEN: Thu May 25 03:26:39 2017 ;; MSG SIZE rcvd: 508
正向解析區域文件
正向解析區域文件用于映射域名和IP地址,文件中包含該文件區域的所有參數,包括域名,IP地址、刷新時間、重試時間、和超時等。
資源記錄(Resource Record, RR)格式:
NAME(類型) [TTL](緩存時長) IN RRT(DNS資源記錄類型) VALUE(數據)
1、SOA(Start Of Authority): 起始授權記錄,只能有一個
name: 區域名稱, 通常可以簡寫為@,例如:magedu.com.
value: 主DNS服務器的FQDN
注意:SOA必須是區域數據庫文件第一條記錄
@ 600 IN SOA ns.magedu.com. dnsadmin.magedu.com.( serial number; 序列號,十進制數字,不超過10位,通常使用日期,如2014031001 refresh time ; 刷新時間,即每隔多久到主服務器檢查一次 retry time ; 重試時間,應該小于refresh time expire time ; 過期時間 negative answer ttl ;否定答案的ttl )
2、NS(Name Server): ZONE NAME --> FQDN 名稱服務器,可以有多個
name: 區域名稱,通常可以簡寫為@
value: DNS服務器的FQDN(可以使用相對名稱)
@ 600 IN NS ns
3、MX(Mail eXchanger): ZONE NAME --> FQDN 郵件交換器
name: 區域名稱,用于標識smtp服務器
value: 包含優先級和FQDN,優先級:0-99, 數字越小,級別越高;
@ 600 IN MX 10 mail
4、A(address):FQDN-->IPv4 5、AAAA:FQDN-->IPv6
name: FQDN(可以使用相對名稱)
value: IP
www 600 IN A 192.168.1.2
6、PTR(pointer):IP-->FQDN只能定義在反向區域數據文件中
name: IP, 逆向的主機地址,例如172.16.100.7的name為7.100,
完全格式為7.100.16.172.in-addr.arpa.
value: FQDN
7.100 600 IN PTR www.maged.com.
7、CNAME(Canonical NAME): FQDN-->FQDN別名記錄
name: FQDN
value: FQDN
ftp IN CNAME www
一個完整的正向解析區域文件:
$TTL 1D @ IN SOA test.com. root.test.com.( 0 1D 1H 1W 3H ) IN NS dns.test.com. IN MX 10 mail1.test.com. IN MX 10 mail2.test.com. www IN A 192.168.1.101 mail1 IN A 192.168.1.102 mail2 IN A 192.168.1.103 dns IN A 192.168.1.104
反向解析區域文件
用于定義IP地址到域名的解析,它采用與正向解析文件類似的選項和格式。但由于是進行反向解析,所以該文件是使用PTR指針記錄,而不是主機記錄。下面是一個反向解析的例子
$TTL 86400 @ IN SOA test.com. root.test.com.( 20031001 7200 3600 43200 86400 ) IN NS dns.test.com. 101 IN PTR www.test.com. 102 IN PTR mail1.test.com. 103 IN PTR mail2.test.com. 104 IN PTR dns.test.com.
DNS服務器類型
主DNS服務器:維護所負責解析的域內解析庫服務器;解析庫由管理維護; 從DNS服務器:從主DNS服務器或其它的從DNS服務器那里“復制”(區域傳遞)一份解析庫; 序列號:解析庫的版本號;前提:主服務器解析庫內容發生變化,其序列遞增; 刷新時間間隔:從服務器從主服務器請求同步解析庫的時間間隔; 重試時間間隔:從服務器從主服務器請求同步解析庫失敗時,再次嘗試的時間間隔; 過期時長:從服務器始終聯系不到主服務器時,從服務器角度,停止提供服務。 緩存名稱服務器:非權威答案。 |
主從服務器同步的方式:
域:Domain(邏輯概念)區域:Zone(物理概念)
區域傳送:
全量區域傳送:傳送整個解析庫。AXFR
增量區域傳送:傳遞解析庫變化的那部分內容。IXFR
rndc命令
rndc: Remote Name Domain Controller遠程管理BIND的工具,默認與bind安裝在一起,且只能通過127.0.0.1來連接named進程;提供輔助性的管理功能。監聽端口(953/tcp)。
rndc與bind通過密鑰進行連接互信。
rndc: 持有一半密鑰,保存于rndc的配置文件中
BIND:持有一半密鑰,保存于主配置文件中
rndc的配置文件/etc/rndc.conf
在CentOS或RHEL系統中配置文件為: 密鑰文件/etc/rndc.key
命令格式:rndc COMMAND
reload: 重載主配置文件和區域解析庫文件 reload zone: 重載區域解析庫文件 retransfer zone: 手動啟動區域傳送過程,而不管序列號是否增加; notify zone: 重新對區域傳送發通知; reconfig: 重載主配置文件 querylog: 開啟或關閉查詢日志; trace: 遞增debug級別; trace LEVEL: 指定使用的級別 flush: 清空服務器的緩存 flushname name: 清空指定名稱相關的緩存 |
5.5、各種DNS服務器的配置方法
緩存名稱服務器
緩存名稱服務器配置十分簡單,只需要通過yum安裝后,對主配置文件進行一些修改即可。
[root@mylinux named]# vim /etc/named.conf // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // options { // listen-on port 53 { 127.0.0.1; }; 開放監聽端口,或者添加外網地址 // listen-on port 53 { 0.0.0.0; }; 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; }; 關閉僅允許主機遞歸 recursion yes; // dnssec-enable yes; 關閉dnssec // dnssec-validation yes; /* Path to ISC DLV key */ // bindkeys-file "/etc/named.iscdlv.key"; // managed-keys-directory "/var/named/dynamic"; }; .... [root@mylinux named]# service named restart #重啟服務 Stopping named: [ OK ] Starting named: [ OK ] [root@mylinux named]# dig -t A www.baidu.com @192.168.191.128 #測試解析結果 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -t A www.baidu.com @192.168.191.128 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55532 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 5, ADDITIONAL: 5 ;; QUESTION SECTION: ;www.baidu.com. IN A ;; ANSWER SECTION: www.baidu.com. 1200 IN CNAME www.a.shifen.com. www.a.shifen.com. 300 IN A 111.13.100.91 www.a.shifen.com. 300 IN A 111.13.100.92 ;; AUTHORITY SECTION: a.shifen.com. 1200 IN NS ns4.a.shifen.com. a.shifen.com. 1200 IN NS ns3.a.shifen.com. a.shifen.com. 1200 IN NS ns5.a.shifen.com. a.shifen.com. 1200 IN NS ns2.a.shifen.com. a.shifen.com. 1200 IN NS ns1.a.shifen.com. ;; ADDITIONAL SECTION: ns5.a.shifen.com. 1200 IN A 119.75.222.17 ns3.a.shifen.com. 1200 IN A 61.135.162.215 ns2.a.shifen.com. 1200 IN A 180.149.133.241 ns4.a.shifen.com. 1200 IN A 115.239.210.176 ns1.a.shifen.com. 1200 IN A 61.135.165.224 ;; Query time: 1102 msec ;; SERVER: 192.168.191.128#53(192.168.191.128) ;; WHEN: Thu May 25 21:12:03 2017 ;; MSG SIZE rcvd: 260
主DNS服務器
配置主DNS服務器時,需要在主配置文件中定義區域,以及配置解析數據庫文件。
[root@mylinux named]# vim /etc/named.rfc1912.zones allow-update { none; }; }; zone "localhost" IN { type master; file "named.localhost"; allow-update { none; }; }; zone "1.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.loopback"; allow-update { none; }; }; zone "1.0.0.127.in-addr.arpa" IN { type master; file "named.loopback"; allow-update { none; }; }; zone "0.in-addr.arpa" IN { type master; file "named.empty"; allow-update { none; }; }; zone "mylinux.com" IN { ;添加的區域mylinux.com type master; file "mylinux.com.zone"; allow-update { none; }; }; "/etc/named.rfc1912.zones" 46L, 1022C written [root@mylinux named]# named-checkconf /etc/named.rfc1912.zones #檢查配置文件是否錯誤 [root@mylinux named]# vim /var/named/mylinux.com.zone #解析數據庫文件 $TTL 1D @ IN SOA test.com. root.test.com.( 0 1D 1H 1W 3H ) @ IN NS dns @ IN MX 10 mail1 @ IN MX 10 mail2 dns IN A 192.168.1.104 www IN A 192.168.1.101 mail1 IN A 192.168.1.102 mail2 IN A 192.168.1.103 "mylinux.com.zone" 15L, 269C written [root@mylinux named]# named-checkzone @ /var/named/mylinux.com.zone #檢查數據解析是否錯誤 zone ./IN: loaded serial 0 OK [root@mylinux named]# service named restart #重啟服務 Stopping named: [ OK ] Starting named: [ OK ] [root@mylinux named]# dig -t A www.mylinux.com @192.168.191.128 #測試解析結果 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -t A www.mylinux.com @192.168.191.128 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12794 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;www.mylinux.com. IN A ;; ANSWER SECTION: www.mylinux.com. 86400 IN A 192.168.1.101 ;; AUTHORITY SECTION: mylinux.com. 86400 IN NS dns.mylinux.com. ;; ADDITIONAL SECTION: dns.mylinux.com. 86400 IN A 192.168.1.104 ;; Query time: 1 msec ;; SERVER: 192.168.191.128#53(192.168.191.128) ;; WHEN: Thu May 25 21:39:52 2017 ;; MSG SIZE rcvd: 83 [root@mylinux named]# dig -t A mail1.mylinux.com @192.168.191.128 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -t A mail1.mylinux.com @192.168.191.128 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37024 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;mail1.mylinux.com. IN A ;; ANSWER SECTION: mail1.mylinux.com. 86400 IN A 192.168.1.102 ;; AUTHORITY SECTION: mylinux.com. 86400 IN NS dns.mylinux.com. ;; ADDITIONAL SECTION: dns.mylinux.com. 86400 IN A 192.168.1.104 ;; Query time: 0 msec ;; SERVER: 192.168.191.128#53(192.168.191.128) ;; WHEN: Thu May 25 21:40:37 2017 ;; MSG SIZE rcvd: 85 [root@mylinux named]# dig -t A mail2.mylinux.com @192.168.191.128 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -t A mail2.mylinux.com @192.168.191.128 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41030 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;mail2.mylinux.com. IN A ;; ANSWER SECTION: mail2.mylinux.com. 86400 IN A 192.168.1.103 ;; AUTHORITY SECTION: mylinux.com. 86400 IN NS dns.mylinux.com. ;; ADDITIONAL SECTION: dns.mylinux.com. 86400 IN A 192.168.1.104 ;; Query time: 0 msec ;; SERVER: 192.168.191.128#53(192.168.191.128) ;; WHEN: Thu May 25 21:40:48 2017 ;; MSG SIZE rcvd: 85 [root@mylinux named]#
反向解析
反向解析區域名稱一般以in-addr.arpa結尾,例如172.16.100.-->100.16.172.in-addr.arpa.
[root@mylinux named]# vim /etc/named. named.conf named.iscdlv.key named.root.key named.confbak named.rfc1912.zones [root@mylinux named]# vim /etc/named.rfc1912.zones file "named.localhost"; allow-update { none; }; }; zone "1.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.loopback"; allow-update { none; }; }; zone "1.0.0.127.in-addr.arpa" IN { type master; file "named.loopback"; allow-update { none; }; }; zone "0.in-addr.arpa" IN { type master; file "named.empty"; allow-update { none; }; }; zone "mylinux.com" IN { type master; file "mylinux.com.zone"; allow-update { none; }; }; zone "100.168.192.in-addr.arpa" IN { #定義反向區域 type master; file "100.168.192.arpa"; "/etc/named.rfc1912.zones" 51L, 1127C [root@mylinux named]# named-checkconf #檢查配置文件 [root@mylinux named]# vim 100.168.192.arpa #定義反向區域數據文件 $TTL 1D @ IN SOA mylinux.com. root.mylinux.com.( 0 1D 1H 1W 3H ) @ IN NS dns.mylinux.com. 1 IN PTR www.mylinux.com. 3 IN PTR mail1.mylinux.com. 4 IN PTR mail2.mylinux.com. 2 IN PTR dns.mylinux.com. "100.168.192.arpa" 13L, 259C written [root@mylinux named]# named-checkzone "100.168.192.in-addr.arpa" 100.168.192.arpa zone 100.168.192.in-addr.arpa/IN: loaded serial 0 #檢查數據區域文件語法錯誤 OK [root@mylinux named]# service named reload #重載服務 Reloading named: [ OK ] [root@mylinux named]# dig -x 192.168.100.1 @192.168.191.128 #測試解析結果 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -x 192.168.100.1 @192.168.191.128 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35918 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;1.100.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 1.100.168.192.in-addr.arpa. 86400 IN PTR www.mylinux.com. ;; AUTHORITY SECTION: 100.168.192.in-addr.arpa. 86400 IN NS dns.mylinux.com. ;; ADDITIONAL SECTION: dns.mylinux.com. 86400 IN A 192.168.1.104 ;; Query time: 0 msec ;; SERVER: 192.168.191.128#53(192.168.191.128) ;; WHEN: Thu May 25 22:33:34 2017 ;; MSG SIZE rcvd: 107 [root@mylinux named]# dig -x 192.168.100.2 @192.168.191.128 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -x 192.168.100.2 @192.168.191.128 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42216 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;2.100.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 2.100.168.192.in-addr.arpa. 86400 IN PTR dns.mylinux.com. ;; AUTHORITY SECTION: 100.168.192.in-addr.arpa. 86400 IN NS dns.mylinux.com. ;; ADDITIONAL SECTION: dns.mylinux.com. 86400 IN A 192.168.1.104 ;; Query time: 0 msec ;; SERVER: 192.168.191.128#53(192.168.191.128) ;; WHEN: Thu May 25 22:33:42 2017 ;; MSG SIZE rcvd: 103 [root@mylinux named]# dig -x 192.168.100.3 @192.168.191.128 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -x 192.168.100.3 @192.168.191.128 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27136 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;3.100.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 3.100.168.192.in-addr.arpa. 86400 IN PTR mail1.mylinux.com. ;; AUTHORITY SECTION: 100.168.192.in-addr.arpa. 86400 IN NS dns.mylinux.com. ;; ADDITIONAL SECTION: dns.mylinux.com. 86400 IN A 192.168.1.104 ;; Query time: 0 msec ;; SERVER: 192.168.191.128#53(192.168.191.128) ;; WHEN: Thu May 25 22:33:46 2017 ;; MSG SIZE rcvd: 109
主從DNS服務器的配置
1、從服務器應該為一臺獨立的名稱服務器 2、主服務器的區域解析庫中必須有一條NS記錄指向從服務器 3、從服務器主需要定義區域,而無需提供解析庫文件,庫文件放在/var/named/slaves/目錄中 4、主服務器需要允許從服務器做區域傳送 |
從服務器的配置
[root@localhost ~]# vim /etc/named.conf // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // options { listen-on port 53 { 192.168.191.128; 127.0.0.1; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // options { // listen-on port 53 { 127.0.0.1; }; #取消僅監聽本機 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 { 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"; }; logging { "/etc/named.conf" 43L, 1005C written [root@localhost ~]# service named restart #啟動服務 Stopping named: [ OK ] Starting named: [ OK ] [root@localhost ~]# ss -tunlp | grep :53 #查看監聽端口 udp UNCONN 0 0 192.168.191.129:53 *:* users:(("named",1432,513)) udp UNCONN 0 0 127.0.0.1:53 *:* users:(("named",1432,512)) udp UNCONN 0 0 ::1:53 :::* users:(("named",1432,514)) tcp LISTEN 0 3 ::1:53 :::* users:(("named",1432,22)) tcp LISTEN 0 3 192.168.191.129:53 *:* users:(("named",1432,21)) tcp LISTEN 0 3 127.0.0.1:53 *:* users:(("named",1432,20)) [root@localhost ~]# vim /etc/named.rfc1912.zones #定義從服務器配置文件 // named.rfc1912.zones: // // Provided by Red Hat caching-nameserver package // // ISC BIND named zone configuration for zones recommended by // RFC 1912 section 4.1 : localhost TLDs and address zones // and http://www.ietf.org/internet-drafts/draft-ietf-dnsop-default-local-zones-02.txt // (c)2007 R W Franks // // See /usr/share/doc/bind*/sample/ for example named configuration files. // zone "localhost.localdomain" IN { type master; file "named.localhost"; }; allow-update { none; }; }; zone "localhost" IN { type master; file "named.localhost"; allow-update { none; }; }; zone "1.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.loopback"; allow-update { none; }; }; zone "1.0.0.127.in-addr.arpa" IN { type master; file "named.loopback"; allow-update { none; }; }; zone "0.in-addr.arpa" IN { type master; file "named.empty"; allow-update { none; }; }; zone "mylinux.com" IN { #從服務器域文件 type slave; masters { 192.168.191.128;}; file "slaves/mylinux.com.zone"; "/etc/named.rfc1912.zones" 48L, 1080C written [root@localhost ~]# service named start Starting named: named: already running[ OK ]
在主DNS服務器中必須要有從服務器的NS記錄,才會通知從服務器讀取數據,否則不會通知。
[root@mylinux named]# service named reload #重載DNS主服務器 Reloading named: [ OK ] [root@mylinux named]# tail /var/log/messages #查看日志信息 May 25 23:15:25 mylinux named[2037]: received control channel command 'reload' May 25 23:15:25 mylinux named[2037]: loading configuration from '/etc/named.conf' May 25 23:15:25 mylinux named[2037]: using default UDP/IPv4 port range: [1024, 65535] May 25 23:15:25 mylinux named[2037]: using default UDP/IPv6 port range: [1024, 65535] May 25 23:15:25 mylinux named[2037]: sizing zone task pool based on 8 zones May 25 23:15:25 mylinux named[2037]: Warning: 'empty-zones-enable/disable-empty-zone' not set: disabling RFC 1918 empty zones May 25 23:15:25 mylinux named[2037]: reloading configuration succeeded May 25 23:15:25 mylinux named[2037]: reloading zones succeeded May 25 23:15:25 mylinux named[2037]: zone mylinux.com/IN: loaded serial 3 May 25 23:15:25 mylinux named[2037]: zone mylinux.com/IN: sending notifies (serial 3)
查看從服務器是否讀取到數據
[root@localhost slaves]# cat /var/named/slaves/mylinux.com.zone $ORIGIN . $TTL 86400 ; 1 day mylinux.com IN SOA mylinux.com. root.mylinux.com. ( 3 ; serial 86400 ; refresh (1 day) 3600 ; retry (1 hour) 604800 ; expire (1 week) 10800 ; minimum (3 hours) ) NS dns.mylinux.com. NS dns2.mylinux.com. MX 10 mail1.mylinux.com. MX 10 mail2.mylinux.com. $ORIGIN mylinux.com. dns A 192.168.1.104 dns2 A 192.168.191.129 mail1 A 192.168.1.102 mail2 A 192.168.1.103 www A 192.168.1.101
子域授權
在父域的資源記錄文件中添加如下項:授權的子區域名稱;子區域的名稱服務器;子區域的名稱服務器的IP地址:
mylinux.com. IN NS ns.mylinux.com. (授權的子域服務器名稱) mylinux.com. IN NS ns2.mylinux.com. ns.mylinux.com. IN A 192.168.100.1 (子域服務器的IP地址) ns2.mylinux.com. IN A 192.168.100.2
轉發服務器
被轉發的服務器需要能夠為請求者做遞歸,否則,轉發請求不予進行。
全部轉發,凡是對非本機所負責的區域請求,都進行轉發給指定服務器
配置文件中添加配置: options { forward only|first; forwarders { IP; }; }
區域轉發,僅轉發對特定的區域的請求至服務器
配置文件中添加區域配置: zone "特定區域" IN { type forward; forwarders { IP; } forward only|first; }
視圖
內網: server1.company.com 172.20.1.1 server2.company.com 172.20.1.2 server3.company.com 172.20.1.3 server4.company.com 172.20.1.4 外網: ftp.company.com 61.124.100.1 www.company.com 61.124.100.2 mail.company.com 61.124.100.3 |
配置如圖所示的網絡DNS網絡拓撲結構,內網用戶可以使用正向解析所有內網計算機以及外網的服務器,反向解析內網服務器,允許遞歸查詢;外用用戶只能正向解析外網服務器,不能解析內網服務器,不允許使用遞歸查詢。使用視圖時,就必須所有的zone都歸類到view中。
配置區域文件
[root@mylinux ~]# vim /etc/named.rfc1912.zones view "internal" { match-clients {172.20.1.0/24; }; recursion yes ; zone "localhost" IN { type master; file "localhost-internal.zone"; allow-update {none;}; }; zone "0.0.127.in-addr.arpa" IN { type master; file "localhost-internal.arpa"; allow-update { none;} ; }; zone "company.com" IN { type master; file "company-internal.zone"; allow-update {none;}; }; zone "1.20.127.in-addr.arpa" IN { type master; file "company-internal.arpa"; allow-update { none;} ; }; }; view "external" { match-clients { any; }; recursion no ; zone "." IN { type hint; file "root.ca"; }; zone "company.com" IN { type master; file "company-external.zone"; allow-update { none; }; }; }; [root@mylinux ~]# named-checkconf
localhost-internal.zone數據解析文件
[root@mylinux named]# vim localhost-internal.zone $TTL 86400 @ IN SOA localhost. root.localhost( 42 3H 15M 1W 1D ) @ 1D IN NS dns.localhost. dns 1D IN A 127.0.0.1 [root@mylinux named]# named-checkzone 'localhost' /var/named/localhost-internal.zone zone localhost-internal/IN: loaded serial 42 OK
localhost-inter.arpa反向解析文件
[root@mylinux named]# vim localhost-internal.arpa $TTL 86400 @ IN SOA localhost. root.localhost( 42 3H 15M 1W 1D ) @ 1D IN NS localhost. 1 1D IN PTR localhost. [root@mylinux named]# named-checkzone '0.0.127.in-addr.arpa' /var/named/localhost-internal.arpa zone 0.0.127.in-addr.arpa/IN: loaded serial 42 OK
company-internal.zone解析文件
[root@mylinux named]# vim company-internal.zone $TTL 1D @ IN SOA company.com. root.company.com. ( 1054654658 3H 5M 1W 1D) IN NS dns.company.com. IN MX 5 mail.com.com. ftp IN A 61.124.100.1 www IN A 61.124.100.2 mail IN A 61.124.100.3 dns IN A 172.20.1.11 servel1 IN A 172.20.1.1 servel2 IN A 172.20.1.2 servel3 IN A 172.20.1.3 servel4 IN A 172.20.1.4 "company-internal.zone" [New] 17L, 403C written [root@mylinux named]# named-checkzone 'company.com' /var/named/company-internal.zone zone company-internal/IN: loaded serial 1054654658 OK [root@mylinux named]#
company-internal.arpa反向解析文件
[root@mylinux named]# vim company-internal.arpa IN MX 5 mail.com.com. ftp IN A 61.124.100.1 www IN A 61.124.100.2 mail IN A 61.124.100.3 dns IN A 172.20.1.11 servel1 IN A 172.20.1.1 servel2 IN A 172.20.1.2 servel3 IN A 172.20.1.3 1 IN PTR server1.company.com. $TTL 1D @ IN SOA company.com. root.company.com. ( 1054654658 3H 5M 1W 1D) @ IN NS dns.company.com. 1 IN PTR server1.company.com. 2 IN PTR server2.company.com. 3 IN PTR server3.company.com. 4 IN PTR server4.company.com. 11 IN PTR dns.company.com. "company-internal.arpa" 13L, 256C written [root@mylinux named]# named-checkzone '1.20.127.in-addr.arpa' /var/named/company-internal.arpa zone 1.20.127.in-addr.arpa/IN: loaded serial 1054654658 OK
company-external.zone解析文件
[root@mylinux named]# vim company-external.zone $TTL 1D @ IN SOA company.com. root.company.com. ( 1054654658 3H 5M 1W 1D) IN NS dns.company.com. IN MX 5 mail.com.com. ftp IN A 61.124.100.1 www IN A 61.124.100.2 mail IN A 61.124.100.3 dns IN A 172.20.1.11 "company-external.zone" 13L, 263C written [root@mylinux named]# named-checkzone 'company-external' /var/named/company-external.zone zone company-external/IN: loaded serial 1054654658 OK
重啟即可測試:
[root@mylinux named]# service named restart Stopping named: [ OK ] Starting named: [ OK ]
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。