CentOS 7中的DNS和DHCP-SMB網絡

系列總索引: 中小企業計算機網絡:簡介

你好朋友!。 在本文中,我們將看到如何為由網絡組成的網絡實現重要的服務對。 CentOS上的DNS和DHCP -Linux,特別是在7.2版中。

  • 有關DNS的一些文章提到了該服務的實現有點晦澀難懂的事實。 我不太同意那句話。 我寧願說這有點概念性,並且它的許多配置文件都具有挑剔的語法。 幸運的是,我們有工具可以逐步檢查我們修改的每個配置文件的語法。 因此,我們將嘗試使本文變得盡可能愉快和愉快。.

對於那些尋求有關這兩種服務基本概念的人們,我們強烈建議您在Wikipedia上以西班牙語和英語版本開始搜索。 同樣,英語文章幾乎總是更加完整和連貫。 維基百科仍然是一個很好的起點。

對於那些真的想了解DNS和BIND的人,我們建議您閱讀本書«OReilly-DNS和BIND 4ed由...撰寫 保羅·阿爾比茲 y 板球劉,或肯定存在的更高版本。

我們已經發表了有關該主題的文章«openSUSE 13.2 Harlequin中的DNS和DHCP-SME Networks»適合圖形環境的愛好者。 但是,從現在開始,他們將面對與該主題有關的文章,而不是與之有關的其他文章,這些文章都使用了終端或控制台的模擬器來進行大量使用。 哇,這是UNIX®/ Linux系統管理員使用的經典樣式。

如果您想進一步了解本文標題的姓氏«中小企業網絡»您可以訪問此博客中的頁面«中小企業網絡:第一個虛擬切入點«。 在其中,您可以找到許多其他已發表文章的鏈接。

  • 使用推薦的軟件包完成CentOS 7操作系統的安裝後, el目錄 /usr/share/doc/bind-9.9.4/ 它包含大量文檔,建議您在進入Internet搜索之前先諮詢一下,而無需首先知道在您的指尖和家中就能找到所需的內容。

基本系統安裝

域和DNS服務器的常規數據

域名:desdelinux.fan
DNS服務器名稱:dns.fromlinux.fan
IP地址:192.168.10.5
子網掩碼:255.255.255.0

安裝

我們首先從全新安裝或全新安裝CentOS 7操作系統開始,如上一篇文章«CentOS 7 Hypervisor I-SMB網絡«。 我們只需要進行以下更改:

  • imagen畫質22 «軟件選擇«,我們建議您在左側欄中選擇«基礎環境»對應於«的選項基礎架構服務器«,而在右列中«所選環境的插件»選中復選框«DNS名稱服務器«。 稍後我們將安裝DHCP服務器。
  • 讓我們記住其他存儲庫的聲明,如 imagen畫質23,在設置«之後網絡和團隊名稱“。
  • 涉及我們將在硬盤驅動器上創建的分區的映像僅供參考。 請自行選擇,實踐和良好的判斷力來選擇分區。
  • 最後,在 圖13«網絡和團隊名稱»,我們必鬚根據聲明的域和DNS服務器的常規參數更改值,而不要忘記指定主機名-在這種情況下,«DNS«-網絡配置完成後。 做是積極的 -從另一台主機-到網絡活動後到指定的IP地址:

CentOS上的DNS和DHCP

關於上一篇文章,我們實際上只需要進行很少且非常明顯的更改。

初步檢查和調整

安裝操作系統後,我們至少必須檢查以下文件,為此,我們從計算機通過SSH啟動會話 sysadmin.fromlinux.fan:

嗡嗡聲@ sysadmin:〜$ ssh 192.168.10.5
buzz@192.168.10.5的密碼:上次登錄:28年09月48日星期六從05開始2017:192.168.10.1:XNUMX
[buzz @ dns〜] $

上面的操作可能需要比正常操作更長的時間,這主要是由於我們在LAN上還沒有DNS。 稍後再次檢查DNS是否正常工作。

[嗡嗡聲@ dns〜] $ cat / etc / hosts
127.0.0.1本地主機本地主機。本地域本地主機4本地主機4.本地域4 :: 1本地主機本地主機。本地域本地主機6本地主機6.本地域6

[buzz @ dns〜] $ cat / etc / hostname
DNS

[buzz @ dns〜] $ cat / etc / sysconfig / network-scripts / ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eth0
UUID=946f5ac9-238a-4a94-9acb-9e3458c680fe
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.10.5
PREFIX=24
GATEWAY=192.168.10.1
DNS1=127.0.0.1
DOMAIN=desdelinux.fan

[buzz @ dns〜] $ cat /etc/resolv.conf 
#由NetworkManager從linux.fan名稱服務器127.0.0.1搜索生成

主要配置響應我們的選擇。 請注意,即使在服務器上 紅帽7-CentOS 7,默認情況下是 網絡管理員 因此,這是管理網絡接口(有線或無線(WiFi),VPN連接,PPPoE連接以及任何其他網絡連接)的人。

[嗡嗡聲@ dns〜] $ sudo systemctl status networkmanager
嗡嗡聲的[sudo]密碼:●networkmanager.service已加載:找不到(原因:沒有此類文件或目錄)有效:無效(無效)

[buzz @ dns〜] $ sudo systemctl status網絡管理器
●NetworkManager.service-已加載網絡管理器:已加載(/usr/lib/systemd/system/NetworkManager.service;已啟用; 供應商預設:啟用)活動:自2017年01月28日星期六(美國東部標準時間)起活動(運行); 12分鐘前主PID:23(NetworkManager)CGroup:/system.slice/NetworkManager.service└─59/ usr / sbin / NetworkManager --no-daemon

紅帽-CentOS還允許您使用經典命令連接和斷開網絡接口 ifup e 如果向下。 讓我們在服務器控制台上運行:

[root @ dns〜]#ifdown eth0
設備“ eth0”已成功斷開連接。

[root @ dns〜]#ifup eth0
連接已成功激活(D-Bus活動路徑:/ org / freedesktop / NetworkManager / ActiveConnection / 1)
  • 我們建議 不要更改CentOS 7提供的默認設置 網絡管理員.

我們明確聲明我們將要使用的存儲庫,並在必要時更新操作系統:

[buzz @ dns〜] $ su密碼:[root @ dns buzz]#cd /etc/yum.repos.d/
[root @ dns yum.repos.d]#ls -l
總計28 -rw-r-r--。 1個根目錄1664 9年2015月1日CentOS-Base.repo -rw-r-r--。 1309個root 9 2015年1月649日CentOS-CR.repo -rw-r-r--。 9個root 2015 1年290月9日CentOS-Debuginfo.repo -rw-r-r--。 2015 root root 1 630年9月2015日CentOS-fasttrack.repo -rw-r-r--。 1個root 1331 9年2015月1日CentOS-Media.repo -rw-r-r--。 1952 root root 9 2015年XNUMX月XNUMX日CentOS-Sources.repo -rw-r-r--。 XNUMX個root XNUMX年XNUMX月XNUMX日CentOS-Vault.repo

從CentOS建議的存儲庫中讀取原始聲明文件的內容是健康的。 我們在此處進行的更改歸因於以下事實:我們無法訪問Internet,並且我們使用WWW Village下載的本地存儲庫,而這些存儲庫是由同事創建的,這使我們的生活更加輕鬆。 😉

[root @ dns yum.repos.d]#mkdir原始
[root @ dns yum.repos.d]#mv CentOS- *原始/

[root @ dns yum.repos.d]#nano centos-repos.repo
[centos-base]
name=CentOS-$releasever
baseurl=http://10.10.10.1/repos/centos/7/base/
gpgcheck=0
enabled=1

[centos-updates]
name=CentOS-$releasever
baseurl=http://10.10.10.1/repos/centos/7/updates/x86_64/
gpgcheck=0
enabled=1

[root @ dns yum.repos.d]#百勝清理全部
加載的插件:最快的鏡像,langpacks清理存儲庫:centos-base centos-updates清理所有內容

[root @ dns yum.repos.d]#yum更新
加載的插件:最快的鏡像,基於centos的langpack | 3.4 kB 00:00 centos-updates | 3.4 kB 00:00(1/2):centos-base / primary_db | 5.3 MB 00:00(2/2):centos-updates / primary_db | 9.1 MB 00:00確定最快的鏡像沒有標記為更新的軟件包

消息«沒有標記為要更新的軟件包»-«沒有標記為更新的軟件包»表示通過聲明在安裝過程中對我們可用的最新存儲庫,可以準確地安裝了最新的軟件包。

關於SELinux上下文和防火牆

我們將從根本上將本文重點放在DNS和DHCP服務的實現上,這是其主要目標。

如果有任何讀者在安裝過程中選擇了安全策略,請參見 imagen畫質06 參考文章«CentOS 7 Hypervisor I-SMB網絡»用於安裝此DNS-DHCP服務器,並且您發現您不知道如何正確配置SELinux和CentOS防火牆,建議您運行以下命令:

修改文件 的/ etc / SYSCONFIG / selinux的 並改變 SELINUX =強制執行措施SELINUX =禁用

[root @ dns〜]#nano / etc / sysconfig / selinux
#此文件控制系統上SELinux的狀態。 #SELINUX =可以採用以下三個值之一:#強制-強制執行SELinux安全策略。 #允許-SELinux打印警告而不是強制執行。 #已禁用-未加載SELinux策略。
SELINUX =禁用
#SELINUXTYPE =可以採用三個兩個值之一:#目標-保護目標進程,#最小-修改目標策略。 僅選定的進程是PR $#mls-多級安全保護。 SELINUXTYPE =目標

然後運行以下命令

[root @ dns〜]#setenforce 0
[root @ dns〜]#服務firewalld停止
重定向到/ bin / systemctl停止firewalld.service

[root @ dns〜]#systemctl禁用firewalld
刪除了symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service。 刪除了符號鏈接/etc/systemd/system/basic.target.wants/firewalld.service。

如果要實現面向Internet的DNS服務器,則不應執行上述操作,而應正確配置SELinux上下文和防火牆。 看到 “使用GNU / Linux進行服務器配置,作者Joel BarriosDueñas” 或CentOS文檔本身-Red Hat

我們配置BIND-命名

  • El目錄 /usr/share/doc/bind-9.9.4/ 包含大量文檔,我們建議您在進入Internet搜索之前先諮詢一下,而無需首先知道在您的指尖和家中就能找到所需的內容

在許多發行版中,通過BIND軟件包安裝的DNS服務稱為 命名 (名稱守護程序)。 在CentOS 7中,根據以下命令的輸出,默認情況下已禁用安裝它,其狀態為«禁用«,並且該狀態由其“賣方”預先定義- 供應商預設。 根據記錄,BIND是免費軟件。

啟用命名服務

[root @ dns〜]#systemctl狀態命名
●named.service-已加載的伯克利Internet名稱域(DNS):已加載(/usr/lib/systemd/system/named.service; 禁用; 供應商預設:禁用)有效:無效(無效)

[root @ dns〜]#systemctl enable命名
創建了從/etc/systemd/system/multi-user.target.wants/named.service到/usr/lib/systemd/system/named.service的符號鏈接。

[root @ dns〜]#systemctl開始命名

[root @ dns〜]#systemctl狀態命名
●named.service-已加載的伯克利Internet名稱域(DNS):已加載(/usr/lib/systemd/system/named.service; 啟用; 供應商預設:禁用)
   活動:活動(運行) 從2017年01月28日星期六開始EST; 13分鐘前進程:22 ExecStart = / usr / sbin /名為-u名為$ OPTIONS(代碼=已退出,狀態= 38 /成功)進程:5 ExecStartPre = / bin / bash -c如果[! “” $ DISABLE_ZONE_CHECKING“ ==”是“]] 然後/ usr / sbin / named-checkconf -z /etc/named.conf; 否則回顯“禁用區域文件檢查”; fi(代碼=退出,狀態= 1990 /成功)主要PID:0(命名)CGroup:/system.slice/named.service└─1988/ usr / sbin /命名-u命名Jan 0 1993:1993:28 dns命名[13]:錯誤(網絡無法訪問)解析為“ ./NS/IN”:22:45:1993f :: f#2001 Jan 500 2:53:28 DNS命名為[13]:錯誤(網絡無法訪問)解析為“ ./ DNSKEY / IN':22:47:1993 :: 2001#500 Jan 3 42:53:28 DNS命名為[13]:錯誤(網絡無法訪問)解決'./NS/IN':22:47:1993 :: 2001 #500 Jan 3 42:53:28 dns命名為[13]:錯誤(網絡不可訪問)解析為'./DNSKEY/IN':22:47:1993d :: d#2001 Jan 500 2:53:28 dns命名為[13 ]:錯誤(網絡無法訪問)解析為“ ./NS/IN”:22:47:1993d :: d#2001 500月2日53:28:13 dns命名為[22]:錯誤(網絡無法訪問)解析為“ ./DNSKEY/ IN':47:dc1993 :: 2001#3 Jan 35 53:28:13 dns命名為[22]:錯誤(網絡無法訪問)解決'./NS/IN':47:dc1993 :: 2001#3 Jan 35 53: 28:13名稱為[22]的dns解析'./DNSKEY/IN':47:1993fe :: 2001#7 Jan 53 53:28:13名稱為[22]的dns稱錯誤(網絡不可達)res olving'./NS/IN':47:1993fe :: 2001#7 Jan 53 53:28:13 dns命名為[22]:managed-keys-zone:無法獲取DNSKEY集'。':超時

[root @ dns〜]#systemctl重新啟動命名

[root @ dns〜]#systemctl狀態命名
●named.service-伯克利Internet名稱域(DNS)已加載:已加載(/usr/lib/systemd/system/named.service;已啟用;供應商預設:已禁用)
   活動:活動(運行) 從2017年01月28日星期六開始EST; 13秒鐘前進程:29 ExecStop = / bin / sh -c / usr / sbin / rndc stop> / dev / null 41>&1 || / bin / kill -TERM $ MAINPID(代碼=退出,狀態= 1449 /成功)進程:2 ExecStart = / usr / sbin /名為-u名為$ OPTIONS(代碼=退出,狀態= 1 / SUCCESS)進程:0 ExecStartPre = / bin / bash -c如果[! “” $ DISABLE_ZONE_CHECKING“ ==”是“]] 然後/ usr / sbin / named-checkconf -z /etc/named.conf; 否則回顯“禁用區域文件檢查”; fi(代碼=已退出,狀態= 1460 /成功)主要PID:0(已命名)CGroup:/system.slice/named.service└─1457/ usr / sbin /命名-u命名Jan 0 1463:1463:28 dns已命名[13]:受管密鑰區域:日記文件已過期:刪除日誌文件Jan 29 41:1463:28 dns名為[13]:受管密鑰區域:已加載的序列Jan 29 41 1463:2:28 dns命名為[13]:區域29.in-addr.arpa/IN:加載串行41 Jan 1463 0:0:28 dns命名為[13]:區域localhost.localdomain / IN:加載串行29 Jan 41 1463:0:28 dns名為[13]:區域29.in-addr.arpa/IN:加載的串行41 Jan 1463 1.0.0.127:0:28 dns名為[13]:區域29 .41.ip1463.arpa / IN:加載串行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 Jan 6 0:28:13 dns命名為[29]:區域localhost / IN:加載串行41 Jan 1463 0 :28:13名為[29]的dns:加載所有區域41月1463日28:13:29名為[41]的dns:正在運行1463月28日13:29:41 dns systemd [1]:啟動了伯克利Internet名稱域(DNS)。

啟用服務後 命名 我們第一次啟動它,命令的輸出 systemctl狀態命名 顯示錯誤。 當我們重新啟動下面的服務時, 命名 創建默認情況下對其正確操作必需的所有配置文件。 因此,當我們再次執行命令時 systemctl狀態命名 沒有顯示更多錯誤。

  • 親愛的,昂貴且要求苛刻的讀者:如果您想至少找出一條通向兔子洞末端的路徑,請冷靜地閱讀每個命令的詳細輸出。 😉當然,這篇文章看起來會有些長,但不要否認它獲得了解釋和清晰.

我們修改文件/etc/named.conf

許多讀者的評論表達了-我不說-不同Linux發行版的維護者所具有的狂熱,即根據發行版將系統配置文件放置在具有不同名稱的文件夾中。 他們是對的。 但是,使用這些分佈的簡單用戶我們可以做什麼呢? 適應! 😉

順便說一下,在FreeBSD的UNIX®克隆«The Origin»中,文件位於 /usr/local/etc/namedb/named.conf; 在Debian中時,除了分成四個文件 named.conf,named.conf.options,named.conf.default-zones和named.conf.local,位於文件夾中 / etc / bind /。 那些想知道openSUSE放置在哪裡的人,請閱讀«openSUSE 13.2 Harlequin中的DNS和DHCP-SME Networks«。 讀者是對的! 😉

和我們一貫一樣: 在修改任何內容之前,我們將原始配置文件保存為另一個名稱.

[root @ dns〜]#cp /etc/named.conf /etc/named.conf.original

使生活更輕鬆,而不是生成密鑰 TSIG 對於通過DHCP進行的動態DNS更新,我們複製相同的密鑰 rndc.keydhcp.key.

[root @ dns〜]#cp /etc/rndc.key /etc/dhcp.key

[root @ dns〜]#納米/etc/dhcp.key
密鑰“ dhcp-key” {算法hmac-md5; 秘密“ OI7Vs + TO83L7ghUm2xNVKg ==”; };

這樣 命名 可以讀取剛剛複制的文件,我們修改其所有者組:

[root @ dns〜]#chown root:命名為/etc/dhcp.key [root @ dns〜]#ls -l /etc/rndc.key /etc/dhcp.key -rw-r -----。 1個名為77 Jan 28 16:36 PM /etc/dhcp.key -rw-r -----的根目錄。 1個名為77 Jan 28 13:22 /etc/rndc.key的根

像上一個小細節一樣,是什麼讓我們瘋狂地試圖弄清楚,現在……問題出在哪裡……? 還有更多形容詞,我們也不是出於對Respectable的尊重。

現在,如果-終於!-我們修改文件 /etc/named.conf。 我們對原件所做的更改或添加在 膽大. 好好看看有多少.

[root @ dns〜]#nano /etc/named.conf
// // // named.conf // //由Red Hat綁定軟件包提供,用於將名為(8)DNS的ISC BIND配置為僅緩存名稱服務器(僅作為localhost DNS解析器)。 // //請參見/ usr / share / doc / bind * / sample /,例如命名配置文件。 //

//訪問控制列表,聲明可以查詢哪些網絡
//我的服務器名為
acl 陷入困境 {
 127.0.0.0 / 8;
 192.168.10.0 / 24;
};

選項{
 //我聲明命名的守護程序也偵聽該接口
 // eth0,其IP:192.168.10.5
    監聽端口53 {127.0.0.1; 192.168.10.5; };
    v6監聽端口53 {:: 1; }; 目錄“ / var / named”; 轉儲文件“ /var/named/data/cache_dump.db”; 統計文件“ /var/named/data/named_stats.txt”; memstatistics文件“ /var/named/data/named_mem_stats.txt”;

 //轉發器聲明
 //轉發器{
 // 0.0.0.0;
 // 1.1.1.1;
 //};
    //首先轉發;

    //我只允許查詢陷入泥潭的ACL
    允許查詢{mired; }; //僅在SysAdmin工作站和本地主機上使用命令dig desdelinux.fan axfr //檢查//我們沒有從屬DNS服務器。 直到現在我們都不需要它。
 allow-transfer {localhost; 192.168.10.1; };

    / *-如果您要建立AUTHORITATIVE DNS服務器,請不要啟用遞歸。 -如果要構建遞歸(緩存)DNS服務器,則需要啟用遞歸。 -如果遞歸DNS服務器具有公共IP地址,則必須啟用訪問控制以將查詢限制為合法用戶。 否則,您的服務器將成為大規模DNS放大攻擊的一部分。 在您的網絡中實施BCP38將大大減少此類攻擊面* /
    //我們希望為我們的LAN-SME提供一個AUTHORITY服務器
    遞歸編號;

    dnssec-enable是; dnssec-validation是; / * ISC DLV密鑰的路徑* / bindkeys文件“ /etc/named.iscdlv.key”; 受管密鑰目錄“ / var / named / dynamic”; pid文件“ /run/named/named.pid”; 會話密鑰文件“ /run/named/session.key”; }; 記錄{channel default_debug {文件“數據/ named.run”; 嚴重程度動態}; }; 區域“。” IN {類型提示; 文件“ named.ca”; }; 包括“ /etc/named.rfc1912.zones”; 包括“ /etc/named.root.key”;

//我們包含用於動態DNS更新的TSIG密鑰//通過DHCP
包括“ /etc/dhcp.key”;

//聲明名稱,類型,位置和更新權限
// DNS記錄區域// //兩個區域均為MASTERS
區域“ desdelinux.fan” {
 類型主;
 文件“ dynamic / db.fromlinux.fan”;
 allow-update {key dhcp-key; };
};

區域“ 10.168.192.in-addr.arpa” {
 類型主;
 文件“動態/ db.10.168.192.in-addr.arpa”;
 allow-update {key dhcp-key; };
};

我們檢查語法

[root @ dns〜]#named-checkconf 
[root @ dns〜]#

由於上述命令不返回任何內容,因此語法正常。 但是,如果我們執行相同的命令,但帶有 -z,輸出將是:

[root @ dns〜]#named-checkconf -z
區域localhost.localdomain / IN:加載序列0區域本地主機/ IN:加載序列0區域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:加載序列0區域1.0.0.127.in-addr.arpa/IN:加載序列0區域0.in-addr.arpa/IN:從linux加載序列0區域.fan / IN:從主機加載動態文件/ db.fromlinux.fan失敗:找不到文件區域fromlinux.fan/IN:由於錯誤而未加載。 _default / desdelinux.fan / IN:找不到文件10.168.192.in-addr.arpa/IN:從主文件動態加載/ db.10.168.192.in-addr.arpa失敗:找不到文件10.168.192 .in-addr.arpa / IN:由於錯誤而未加載。 _default / 10.168.192.in-addr.arpa / IN:找不到文件

當然,它們是由於我們尚未為我們的域創建DNS註冊區域而發生的錯誤。

  • 有關命令的更多信息 命名-checkconf, 跑 男子叫-checkconf,然後再在Internet上查找任何其他信息。 我向您保證,它將節省大量時間。

我們從linux.fan創建Direct Zone文件

...並非沒有一點理論。 😉

作為創建區域數據文件的模板,我們可以將 /var/named/named.empty,o el /usr/share/doc/bind-9.9.4/sample/var/named/named.empty。 兩者是相同的。

[root @ dns〜]#cat /var/named/named.empty 
$ TTL 3H @ IN SOA @ rname.invalid。 (0;串行1D;刷新1H;重試1W;到期3H); NS @ A 127.0.0.1 AAAA :: 1的最短或負緩存時間

生命週期- 生存時間TTL SOA記錄

讓我們用括號來解釋 TTL-生存時間 從寄存器 SOA-授權開始 主區域。 當我們想要修改它們的任何值時,了解它們的含義很有趣。

$ TTL:生存時間- 生存時間 對於文件中聲明之後(但在任何其他$ TTL聲明之前)且沒有顯式TTL聲明的所有記錄。

串行:區域數據的序列號。 每次我們手動修改區域中的DNS記錄時,都必須將該數字增加1,特別是如果我們有從屬服務器或輔助服務器。 輔助或從屬DNS服務器每次聯繫其主服務器時,都會要求提供主數據的序列號。 如果從站的序列號較少,則從站服務器上該區域的數據已過期,並且從站執行區域傳輸以更新自身。

刷新:它告訴從屬服務器一個時間間隔,在該時間間隔內,它應檢查其數據是否相對於主服務器是最新的。

重試:如果主服務器不可用-因為它生病了,比方說-在一段時間後對於從服務器 刷新, 重試 它告訴從站嘗試再次聯繫其主站之前要等待多長時間。

到期:如果從屬設備在一段時間內無法聯繫其主設備 到期然後,如果從屬服務器與主服務器的區域關係搞砸了,而從服務器則別無選擇,只能使該區域失效。 從屬DNS服務器使區域到期,這意味著它將停止響應與該區域有關的DNS查詢,因為可用數據太舊而無用。

  • 上面的內容間接地告訴我們,並且有很多常識(這是最常識的常識),即如果我們不需要從DNS服務器來運行我們的SME,除非絕對必要,否則我們不會實施它。 讓我們始終嘗試從簡單過渡到復雜.

最小:在之前的版本中 綁定8.2,最後一條記錄 SOA的 它還指示默認生存時間- 默認的生存時間, 和負緩存生存期- 負緩存生存時間 用於區域。 這次是指該區域的權威服務器給出的所有否定響應。

區域文件/var/named/dynamic/db.fromlinux.fan

[root @ dns〜]#nano /var/named/dynamic/db.fromlinux.fan
$ TTL 3H @ IN SOA dns.fromlinux.fan。 root.dns.fromlinux.fan。 (1;序列1D;刷新1H;重試1W;到期3H); 最小或負的生存時間; @ IN NS dns.fromlinux.fan。 @ IN MX 10 mail.fromlinux.fan。 @ IN TXT“ FromLinux,您的致力於自由軟件的博客”; sysadmin IN A 192.168.10.1 ad-dc IN A 192.168.10.3文件服務器IN A 192.168.10.4 dns IN A 192.168.10.5 proxyweb IN A 192.168.10.6博客IN A 192.168.10.7 ftpserver IN A 192.168.10.8郵件IN A 192.168.10.9

我們檢查/var/named/dynamic/db.fromlinux.fan

[root @ dns〜]#來自linux.fan / var / named / dynamic / db的named-checkzone。
linux.fan/IN的區域:加載串行1 OK

我們創建反向區域文件10.168.192.in-addr.arpa

  • 在不考慮MX記錄的情況下,該區域的SOA記錄與直接區域的記錄相同。.
[root @ dns〜]#nano /var/named/dynamic/db.10.168.192.in-addr.arpa
$ TTL 3H @ IN SOA dns.fromlinux.fan。 root.dns.fromlinux.fan。 (1;序列1D;刷新1H;重試1W;到期3H); 最小或負的生存時間; @ IN NS dns.fromlinux.fan。 ; 1輸入PTR sysadmin.fromlinux.fan。 3 IN PTR ad-dc.fromlinux.fan。 4 IN PTR fileserver.fromlinux.fan。 5 IN PTR dns.fromlinux.fan。 6 IN PTR proxyweb.desdelinux.fan。 7 IN PTR blog.desdelinux.fan。 8輸入PTR ftpserver.fromlinux.fan。 9 IN PTR mail.fromlinux.fan。

[root @ dns〜]#named-checkzone 10.168.192.in-addr.arpa /var/named/dynamic/db.10.168.192.in-addr.arpa 
區域10.168.192.in-addr.arpa/IN:加載序列號1 OK

重新啟動命名之前,我們檢查其配置

  • 在確定未正確配置命名named.conf的配置文件及其區域文件之前,建議不要重新啟動命名守護程序。 如果執行此操作,然後再修改區域文件,則必須將修改後的區域的序列號增加1.
  • 讓我們看一下“。” 在域名和主機名的末尾.
[root @ dns〜]#named-checkconf 
[root @ dns〜]#named-checkconf -z
區域localhost.localdomain / IN:加載序列0區域本地主機/ IN:加載序列0區域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:加載序列0區域1.0.0.127.in-addr.arpa/IN:加載序列0區域0.in-addr.arpa/IN:加載linux中的序列0區域.fan / IN:加載序列1區域10.168.192.in-addr.arpa/IN:加載序列1

當前所有已命名的配置

為了使內容更加清晰,儘管文章很長,但我們給出了命令的完整輸出 命名-checkconf -zp:

[root @ dns〜]#named-checkconf -zp
區域localhost.localdomain / IN:加載序列號0區域本地主機/ IN:加載序列號0區域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:加載序列0區域1.0.0.127.in-addr.arpa/IN:加載序列0區域0.in-addr.arpa/IN:加載linux中的序列0區域.fan / IN:加載序列1區域10.168.192.in-addr.arpa/IN:已加載的序列1選項{bindkeys-file“ /etc/named.iscdlv.key”; 會話密鑰文件“ /run/named/session.key”; 目錄“ / var / named”; 轉儲文件“ /var/named/data/cache_dump.db”; 監聽端口53 {127.0.0.1/32; 192.168.10.5/32; }; v6監聽端口53 {:: 1/128; }; 受管密鑰目錄“ / var / named / dynamic”; memstatistics文件“ /var/named/data/named_mem_stats.txt”; pid文件“ /run/named/named.pid”; 統計文件“ /var/named/data/named_stats.txt”; dnssec-enable是; dnssec-validation是; 遞歸編號; allow-query {“ mired”; }; 允許轉移{192.168.10.1/32; }; }; acl“ mired” {127.0.0.0/8; 192.168.10.0/24; }; 記錄{channel“ default_debug” {文件“ data / named.run”; 嚴重程度動態}; }; 密鑰“ dhcp-key” {算法“ hmac-md5”; 秘密“ OI7Vs + TO83L7ghUm2xNVKg ==”; }; 區域“。” IN {類型提示; 文件“ named.ca”; }; 區域“ localhost.localdomain” IN {類型主控; 文件“ named.localhost”; allow-update {“無”; }; }; 區域“ localhost” IN {類型主機; 文件“ named.localhost”; allow-update {“無”; }; }; 區域“ 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; 文件“ named.loopback”; allow-update {“無”; }; }; 區域“ 1.0.0.127.in-addr.arpa” IN {類型主控; 文件“ named.loopback”; allow-update {“無”; }; }; 區域“ 0.in-addr.arpa” IN {類型主; 文件“ named.empty”; allow-update {“無”; }; }; 區域“ desdelinux.fan” {type master; 文件“ dynamic / db.fromlinux.fan”; allow-update {key“ dhcp-key”; }; }; 區域“ 10.168.192.in-addr.arpa” {type master; 文件“動態/ db.10.168.192.in-addr.arpa”; allow-update {key“ dhcp-key”; }; }; 受管密鑰{“。 鍵初始-257 3月8日“AwEAAagAIKlVZrpC6Ia7gEzahOR + 9W29euxhJhVVLOyQbSEW0O8gcCjF FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh / RStIoO8g0NfnfL2MTJRkxoX bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP / VHL496M / QZxkjf5 / Efucp2gaD X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS Qageu + ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq QXA + Uk1ihz0 =”; };
  • 按照修改程序 命名.conf 根據我們的需求進行檢查,並創建並檢查每個區域文件,我們懷疑我們將不得不面對主要的配置問題。 最後,我們意識到這是一個男孩的遊戲,具有許多概念和挑剔的語法

檢查結果令人滿意,因此我們可以重新啟動BIND- 命名.

我們重新啟動命名並檢查其狀態

[root @ dns〜]#systemctl重新啟動named.service
[root @ dns〜]#systemctl狀態為named.service

如果在最後一個命令的輸出中出現任何類型的錯誤,則必須重新啟動 命名服務 並重新檢查您的 狀態。 如果錯誤消失,則服務成功啟動。 否則,我們必須對所有修改和創建的文件進行徹底的檢查,然後重複該過程。

狀態的正確輸出應為:

[root @ dns〜]#systemctl狀態為named.service
●named.service-伯克利Internet名稱域(DNS)已加載:已加載(/usr/lib/systemd/system/named.service;已啟用;供應商預設:已禁用)活動: 活動(運行) 自星期日2017年01月29日10:05:32 EST; 2min 57s ago進程:1777 ExecStop = / bin / sh -c / usr / sbin / rndc stop> / dev / null 2>&1 || / bin / kill -TERM $ MAINPID(代碼=退出,狀態= 0 /成功)進程:1788 ExecStart = / usr / sbin /名為-u名為$ OPTIONS(代碼=退出,狀態= 0 / SUCCESS)進程:1786 ExecStartPre = / bin / bash -c如果[! “” $ DISABLE_ZONE_CHECKING“ ==”是“]] 然後/ usr / sbin / named-checkconf -z /etc/named.conf; 否則回顯“禁用區域文件檢查”; fi(代碼=已退出,狀態= 0 /成功)主PID:1791(已命名)CGroup:/system.slice/named.service└─1791/ usr / sbin /已命名-u已命名29月10日05:32:1791 dns已命名[1.0.0.127]:區域0.in-addr.arpa/IN:加載的串行29 Jan 10 05:32:1791 dns名為[10.168.192]:區域1.in-addr.arpa/IN:加載的序列29 Jan 10個05:32:1791名為[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]的dns:區域6.ip0.arpa/IN :加載序列29 Jan 10 05:32:1791 dns命名為[1]:區域desdelinux.fan/IN:加載序列29 Jan 10 05:32 dns命名為[1791]:區域localhost.localdomain / IN:加載序列0 29月10日05:32:1791名為[0]的dns:區域localhost / IN:加載了串行29 Jan 10 05:32:1791 dns名為[XNUMX]: 所有區域均已加載
29月10日05:32:1791 dns命名為[XNUMX]: 運行
29月10日05:32:1 dns systemd [29]:啟動了伯克利Internet名稱域(DNS)。 10月05日32:1791:10.168.192名為[1]的dns:區域XNUMX.in-addr.arpa/IN:發送通知(序列XNUMX)

支票

可以在同一服務器上或在連接到LAN的計算機上運行檢查。 我們更喜歡在團隊中做 sysadmin.fromlinux.fan 我們已明確允許進行區域轉移。 文件 / etc / resolv.conf中 該團隊的成員如下:

嗡嗡聲@ sysadmin:〜$ cat /etc/resolv.conf 
#由NetworkManager從linux.fan名稱服務器192.168.10.5搜索生成

嗡嗡聲@ sysadmin:〜$從linux.fan axfr挖
; << >> DiG 9.9.5-9 + deb8u1-Debian << >> desdelinux.fan axfr ;; 全局選項:linux.fan中的+ cmd。 10800 IN SOA dns.fromlinux.fan。 root.dns.fromlinux.fan。 來自linux.fan的1 86400 3600 604800 10800 10800 IN NS dns.fromlinux.fan。 來自linux.fan。 10800 IN MX 10 mail.fromlinux.fan。 來自linux.fan。 10800 IN TXT“ FromLinux,您的專屬自由軟件博客” ad-dc.desdelinux.fan。 10800 IN 192.168.10.3 blog.desdelinux.fan。 10800 IN 192.168.10.7 dns.fromlinux.fan。 10800 IN 192.168.10.5文件服務器.fromlinux.fan。 10800 IN 192.168.10.4 ftpserver.fromlinux.fan。 10800 IN 192.168.10.8 mail.fromlinux.fan。 10800 IN 192.168.10.9 proxyweb.fromlinux.fan。 10800 IN 192.168.10.6 sysadmin.fromlinux.fan。 10800 IN從linux.fan到192.168.10.1。 10800 IN SOA dns.fromlinux.fan。 root.dns.fromlinux.fan。 1 86400 3600 604800 10800 ;; 查詢時間:0毫秒; 服務器:192.168.10.5#53(192.168.10.5);; 何時:美國東部時間29年11月44日18:2017:13; XFR大小:1條記錄(消息385,字節XNUMX)

嗡嗡聲@ sysadmin:〜$ dig 10.168.192.in-addr.arpa axfr
; << >> DiG 9.9.5-9 + deb8u1-Debian << >> 10.168.192.in-addr.arpa axfr ;; 全局選項:+ cmd 10.168.192.in-addr.arpa。 10800 IN SOA dns.fromlinux.fan.10.168.192.in-addr.arpa。 root.dns.fromlinux.fan.10.168.192.in-addr.arpa。 1 86400 3600 604800 10800 10.168.192.in-addr.arpa。 10800 IN NS dns.fromlinux.fan。 1.10.168.192.in-addr.arpa。 10800 IN PTR sysadmin.fromlinux.fan。 3.10.168.192.in-addr.arpa。 10800 IN PTR ad-dc.fromlinux.fan。 4.10.168.192.in-addr.arpa。 10800 IN PTR fileserver.fromlinux.fan。 5.10.168.192.in-addr.arpa。 10800 IN PTR dns.fromlinux.fan。 6.10.168.192.in-addr.arpa。 10800 IN PTR proxyweb.fromlinux.fan。 在addr.arpa中的7.10.168.192。 10800 IN PTR blog.desdelinux.fan。 8.10.168.192.in-addr.arpa。 10800 IN PTR ftpserver.fromlinux.fan。 9.10.168.192.in-addr.arpa。 10800 IN PTR mail.fromlinux.fan。 地址為10.168.192.in.addr.arpa。 10800 IN SOA dns.fromlinux.fan.10.168.192.in-addr.arpa。 root.dns.fromlinux.fan.10.168.192.in-addr.arpa。 1 86400 3600 604800 10800 ;; 查詢時間:0毫秒; 服務器:192.168.10.5#53(192.168.10.5);; 何時:美國東部時間29年11月44日57:2017:11; XFR大小:1條記錄(消息352,字節XNUMX)

嗡嗡聲@ sysadmin:〜$從linux.fan中挖掘SOA
buzz @ sysadmin:〜$從linux.fan挖入MX buzz @ sysadmin:〜$從linux.fan挖入MXT
嗡嗡聲@ sysadmin:〜$主機dns
dns.fromlinux.fan地址為192.168.10.5
buzz @ sysadmin:〜$主機sysadmin
sysadmin.desdelinux.fan的地址為192.168.10.1 ...以及我們需要的任何其他檢查
  • 到目前為止,我們已經在我們的中小企業網絡中使用了DNS服務器。 我們希望您喜歡整個過程,這很簡單,對吧? 😉

我們安裝並配置DHCP

[root @ dns〜]#百勝安裝dhcp
加載的插件:最快的鏡像,基於centos的langpack | 3.4 kB 00:00:00 centos-updates | 3.4 kB 00:00:00從緩存的主機文件加載鏡像速度解決依賴關係->運行事務測試--->軟件包dhcp.x86_64 12:4.2.5-42.el7.centos必須安裝->解決依賴關係終止的已解決依賴關係============================================== =============================================== ===================================軟件包體系結構版本庫大小============= =============================================== =============================================== ======================安裝:dhcp x86_64 12:4.2.5-42.el7.centos centos-base 511 k交易摘要==== =============================================== =============================================== ==============================安裝1個軟件包的總下載大小:511k安裝的大小:1.4 M這可以嗎[是/ d / N]:y下載軟件包:dhcp-4.2.5-42.el7.centos.x86_64.rpm | 511 kB 00:00:00正在運行事務檢查正在運行事務測試已成功進行事務測試正在運行事務正在安裝:12:dhcp-4.2.5-42.el7.centos.x86_64 1/1檢查:12:dhcp-4.2.5-42。 el7.centos.x86_64 1/1已安裝:dhcp.x86_64 12:4.2.5-42.el7.centos完成!

[root @ dns〜]#nano /etc/dhcp/dhcpd.conf
##DHCP服務器配置文件。 #參見/usr/share/doc/dhcp*/dhcpd.conf.example#參見dhcpd.conf(5)手冊頁#ddns-update-style過渡; ddns-更新; ddns域名“ desdelinux.fan”。 ddns-rev域名“ in-addr.arpa”。 忽略客戶端更新; 權威性; ip轉發的選項; 選項域名“ desdelinux.fan”; #選項ntp服務器0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org,3.pool.ntp.org; 包括“ /etc/dhcp.key”; linux.fan中的區域。 {primary 127.0.0.1; 密鑰dhcp-key; }區域10.168.192.in-addr.arpa。 {primary 127.0.0.1; 密鑰dhcp-key; }共享網絡redlocal {子網192.168.10.0網絡掩碼255.255.255.0 {選項路由器192.168.10.1; 選項子網掩碼255.255.255.0; 選項廣播地址192.168.10.255; 選項域名服務器192.168.10.5; 選項netbios-name-servers 192.168.10.5; 範圍192.168.10.30 192.168.10.250; }}#結束dhcpd.conf

[root @ dns〜]#dhcpd -t
互聯網系統聯盟DHCP服務器4.2.5版權所有2004-2013互聯網系統聯盟。 版權所有。 有關信息,請訪問https://www.isc.org/software/dhcp/由於在配置文件中未指定ldap-server,ldap-port和ldap-base-dn,因此不搜索LDAP

[root @ dns〜]#systemctl enable dhcpd
創建了從/etc/systemd/system/multi-user.target.wants/dhcpd.service到/usr/lib/systemd/system/dhcpd.service的符號鏈接。

[root @ dns〜]#systemctl啟動dhcpd

[root @ dns〜]#systemctl status dhcpd
●dhcpd.service-DHCPv4服務器守護程序已加載:已加載(/usr/lib/systemd/system/dhcpd.service;已啟用;供應商預設:已禁用)活動:自dom(自2017年01月29日起12:04:59它的T; 23s前Docs:man:dhcpd(8)man:dhcpd.conf(5)Main PID:2381(dhcpd)Status:“ Dispatching packet ...” CGroup:/system.slice/dhcpd.service└─2381/ usr / sbin / dhcpd -f -cf /etc/dhcp/dhcpd.conf-用戶dhcpd -group dhcpd --no-pid Jan 29 12:04:59 dns dhcpd [2381]:Internet Systems Consortium DHCP Server 4.2.5 Jan 29 12 :04:59 dns dhcpd [2381]:版權所有2004-2013 Internet Systems Consortium。 29月12日04:59:2381 dns dhcpd [29]:保留所有權利。 12月04日59:2381:29 dns dhcpd [12]:有關信息,請訪問https://www.isc.org/software/dhcp/ 04月59日2381:29:12 dns dhcpd [04]:自ldap以來未搜索LDAP未在配置文件Jan 59 2381:0:29 dns dhcpd [12]中未指定-server,ldap-port和ldap-base-dn:將04個租約寫入租約文件。 59月2381日0:52:54 dns dhcpd [00]:偵聽LPF / eth12 / 17:04:29:12:04:59 / redlocal 2381月0日52:54:00 dns dhcpd [12]:在LPF / eth17上發送/ 04:29:12:04:59:2381 / redlocal 29月12日04:59:1 dns dhcpd [4]:通過套接字發送/ fallback / fallback-net XNUMX月XNUMX日XNUMX:XNUMX:XNUMX dns systemd [XNUMX]:已啟動DHCPvXNUMX服務器守護程序。

還有什麼要做?

簡單。 使用免費軟件啟動Windows 7或其他客戶端,然後開始測試和檢查。 我們做到了兩個客戶: 七.fromlinux.fan y suse-desktop.fromlinux.fan。 檢查如下:

buzz @ sysadmin:〜$主機七
七.fromlinux.fan地址為192.168.10.30

buzz @ sysadmin:〜$主機seven.fromlinux.fan
七.fromlinux.fan地址為192.168.10.30

嗡嗡聲@ sysadmin:〜$挖TXT seven.fromlinux.fan
.... ;; 問題部分:; seven.fromlinux.fan。 IN TXT ;; 解答部分:seven.desdelinux.fan。 3600 IN TXT“31b7228ddd3a3b73be2fda9e09e601f3e9“...。

我們將團隊“ XNUMX”重命名為“ LAGER”,然後重新啟動。 重新啟動新的LAGER之後,我們檢查:

buzz @ sysadmin:〜$主機七
找不到主機七:5(已拒絕)

buzz @ sysadmin:〜$主機seven.fromlinux.fan
找不到主機seven.desdelinux.fan:3(NXDOMAIN)

嗡嗡聲@sysadmin:〜$主機更大
lager.desdelinux.fan地址為192.168.10.30

嗡嗡聲@sysadmin:〜$主機lager.fromlinux.fan
lager.desdelinux.fan地址為192.168.10.30

嗡嗡聲@ sysadmin:〜$挖TXT lager.fromlinux.fan
.... ;; 問題部分:; lager.fromlinux.fan。 IN TXT ;; 解答:lager.fromlinux.fan。 3600 IN TXT“31b7228ddd3a3b73be2fda9e09e601f3e9“...。

關於suse桌面客戶端:

buzz @ sysadmin:〜$主機suse-dektop
找不到主機suse-dektop:5(已拒絕)

buzz @ sysadmin:〜$主機suse-desktop
suse-desktop.desdelinux.fan地址為192.168.10.33

buzz @ sysadmin:〜$主機suse-desktop.fromlinux.fan
suse-desktop.desdelinux.fan地址為192.168.10.33

buzz @ sysadmin:〜$主機192.168.10.33
33.10.168.192.in-addr.arpa域名指針suse-desktop.desdelinux.fan。

buzz @ sysadmin:〜$主機192.168.10.30
30.10.168.192.in-addr.arpa域名指針LAGER.desdelinux.fan。
嗡嗡聲@ sysadmin:〜$ dig -x 192.168.10.33
.... ;; 問題部分:; 33.10.168.192.in-addr.arpa。 IN PTR ;; 解答:33.10.168.192.in-addr.arpa。 3600 IN PTR suse-desktop.fromlinux.fan。 ;; 權限部分:10.168.192.in-addr.arpa。 10800 IN NS dns.fromlinux.fan。 ;; 其他部分:dns.fromlinux.fan。 10800 IN A 192.168.10.5 ....

嗡嗡聲@ sysadmin:〜$挖TXT suse-desktop.fromlinux.fan ....
; suse-desktop.desdelinux.fan。 IN TXT ;; 解答部分:suse-desktop.desdelinux.fan。 3600英寸TXT "31b78d287769160c93e6dca472e9b46d73"

;; 權限部分:desdelinux.fan。 10800 IN NS dns.fromlinux.fan。 ;; 其他部分:dns.fromlinux.fan。 10800英寸192.168.10.5
....

我們還要運行以下命令

[root @ dns〜]#從linux.fan axfr挖
; << >> DiG 9.9.4-RedHat-9.9.4-29.el7_2.4 << >> desdelinux.fan axfr ;; 全局選項:linux.fan中的+ cmd。 10800 IN SOA dns.fromlinux.fan。 root.dns.fromlinux.fan。 linux.fan的6 86400 3600 604800 10800 10800 IN NS dns.fromlinux.fan。 來自linux.fan。 10800 IN MX 10 mail.fromlinux.fan。 來自linux.fan。 10800 IN TXT“ FromLinux,您的專屬自由軟件博客” ad-dc.desdelinux.fan。 10800在192.168.10.3 blog.desdelinux.fan中。 10800 IN 192.168.10.7 dns.fromlinux.fan。 10800 IN 192.168.10.5 fileserver.fromlinux.fan。 10800 IN 192.168.10.4 ftpserver.fromlinux.fan。 10800在192.168.10.8 LAGER.fromlinux.fan中。 3600 IN TXT“31b7228ddd3a3b73be2fda9e09e601f3e9“ LAGER.fromlinux.fan。   3600 在192.168.10.30 mail.fromlinux.fan中。 10800 IN 192.168.10.9 proxyweb.fromlinux.fan。 10800 IN 192.168.10.6 suse-desktop.fromlinux.fan。 3600 IN TXT“31b78d287769160c93e6dca472e9b46d73“ suse-desktop.desdelinux.fan。 3600 在192.168.10.33 sysadmin.fromlinux.fan中。 10800 IN從linux.fan到192.168.10.1。 10800 IN SOA dns.fromlinux.fan。 root.dns.fromlinux.fan。 6 86400 3600 604800 10800

在上面的輸出中,我們突出顯示了 膽大TTL -對於以DHCP服務授予IP地址的計算機(以秒為單位),那些具有由DHCP給定的TTL 3600顯式聲明的計算機。 固定IP由每個區域文件的SOA記錄中聲明的$ 3H -3小時= 10800秒的$ TTL指導。

他們可以用相同的方法檢查反向區域。

[root @ dns〜]#挖10.168.192.in-addr.arpa axfr

其他非常有趣的命令是:

[root @ dns〜]#named-journalprint /var/named/dynamic/db.desdelinux.fan.jnl
[root @ dns〜]#named-journalprint /var/named/dynamic/db.10.168.192.in-addr.arpa.jnl
[root @ dns〜]#journalctl -f

手動修改區域文件

在DHCP開始動態更新區域文件後, 命名如果我們需要手動修改區域文件,則必須執行以下過程,但是在不了解實用程序的工作原理之前,請執行以下過程 直流 用於名稱服務器控制。

[root @ dns〜]#man rndc
....
       凍結[區域[類別[視圖]]​​]
           將更新掛起到動態區域。 如果未指定任何區域,則所有區域都將被掛起。 這允許對通常通過動態更新更新的區域進行手動編輯。 它還會導致將日記文件中的更改同步到主文件中。 凍結區域時,將拒絕所有動態更新嘗試。

       解凍[區域[類[視圖]]​​]
           啟用對凍結的動態區域的更新。 如果未指定區域,則啟用所有凍結區域。 這將導致服務器從磁盤重新加載區域,並在加載完成後重新啟用動態更新。 解凍區域後,將不再拒絕動態更新。 如果區域已更改,並且正在使用ixfr-from-differences選項,則將更新日誌文件以反映區域中的更改。 否則,如果區域已更改,則將刪除任何現有的日記文件。 ....

什麼,您認為我要抄錄整個手冊嗎? 剩下的我留給你。 😉

基本上是:

  • rndc凍結[區域[類別[視圖]]​​],暫停區域的動態更新。 如果未指定,則所有凍結。 該命令允許手動編輯凍結區域或所有區域。 凍結時將拒絕任何動態更新。
  • rndc解凍 [區域[類[視圖]]​​],可以在先前凍結的區域上進行動態更新。 DNS服務器從磁盤重新加載區域文件,並在重新加載完成後重新啟用動態更新。

手動編輯區域文件時要注意什麼? 就像我們創建它一樣,但不要忘記將序列號增加1或 串行 保存帶有最終更改的文件之前。

例如:

[root @ dns〜]#rndc從linux.fan凍結

[root @ dns〜]#nano /var/named/dynamic/db.fromlinux.fan
我出於任何原因(無論是否必要)都修改了區域文件。 我保存更改

[root @ dns〜]#rndc從linux.fan解凍
區域重新加載並解凍。 檢查日誌以查看結果。

[root @ dns〜]#journalctl -f
29月14日06:46:2257名為[XNUMX]的dns:解凍區域'desdelinux.fan/IN':成功
29月14日06:46:2257名為[6]的dns來自linux.fan/IN:區域序列(XNUMX)不變。 區域可能無法轉移到奴隸。
29月14日06:46:2257名為[6]的dns:區域desdelinux.fan/IN:已加載序列XNUMX

先前輸出中的錯誤(在控制台上以紅色顯示)是由於我“忘記”將序列號加1。如果我正確地遵循了此過程,則輸出應為:

[root @ dns〜]#journalctl -f
-日誌開始於美國東部時間2017年01月29日08:31:32。 -29月14日06:46:2257名為[6]的dns:區域desdelinux.fan/IN:已加載串行29 Jan 14 10:01:1 dns systemd [43]:已啟動用戶root的會話29。 14月10日01:1:43 dns systemd [29]:啟動用戶root的會話14。 10月01日2693:64:1 dns CROND [1] :( root)CMD(/ usr / lib1 / sa / sa29 14)10月45日2257:29:14 dns命名為[10]:從Linux接收到控制通道命令'freeze。 fan'Jan 45 2257:29:14 dns命名為[10]:凍結區域'desdelinux.fan/IN':成功Jan 58月2257 29:14:10 dns命名為[58]:接收到控制通道命令'解凍desdelinux.fan'Jan 2257個29:14:10名為[58]的dns:解凍區域'desdelinux.fan/IN':成功2257月29 14:10:58名為[2257]的dns:區域desdelinux.fan/IN:日誌文件已過期:刪除日記文件7月XNUMX日XNUMX:XNUMX:XNUMX名為[XNUMX]的dns:區域desdelinux.fan/IN:已加載串行XNUMX
  • 讀者朋友們,我重複一遍,您必須仔細閱讀命令的輸出。 對於它的開發人員,無論它多麼簡單,都要花大量的時間對每個命令進行編程.

總結

到目前為止,我們已經解決了DNS的實現-DHCP二重奏,這對於我們的SME網絡的良好性能來說是至關重要的服務,是指通過DHCP授予動態地址以及通過DNS解析計算機和域名。

我們非常希望您像我們一樣喜歡整個過程。 儘管使用控制台似乎更困難,但藉助其幫助,在UNIX®/ Linux中實現服務要容易得多,也更具教育意義。

他們原諒我用莎士比亞而非塞萬提斯的語言對思想,創造,寫作,修改,改寫和出版的概念的任何誤解。 😉

下次發貨

我認為更多相同的地方-在DNS記錄上增加了理論上的內容-但在Debian中。 我們不能忘記這種分佈,對嗎?


本文內容遵循我們的原則 編輯倫理。 要報告錯誤,請單擊 這裡.

15條評論,留下您的評論

發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   克里斯蒂安·默尚 他說:

    非常感謝您為撰寫如此豐碩的文章所做的值得稱讚的工作。 這對我很有用

  2.   費德里科 他說:

    克里斯蒂安(Cristian)非常感謝您關注我以及對本文的評估。 成功!

  3.   伊斯梅爾·阿爾瓦雷斯·黃 他說:

    在對Federico的這一新職位進行了初步了解之後,整個«PYMES»系列所表現出的卓越專業精神再次引起關注。 除了可以說明您的域在任何網絡中最重要的兩項服務(DNS和DHCP)上的詳細信息之外。 在這種情況下,與我之前的評論不同,我將第二篇評論付諸實踐後將其發表。

  4.   Crespo88 他說:

    沒有評論,pa'400 !!! Fico謝謝您,因為您非常了解我閱讀了您的帖子,我們不能要求更多。 您從一個很好的組織開始,從如何安裝和設置用戶的個人桌面開始,工作站是基礎,您很好地解釋了那些網絡服務的意義。 您一直在攀登,儘管水平確實在上升,但確實為那些比剛開始的人少,對於像我一樣一段時間和最高級的人寫過書並發表過。 。
    隨著時間的流逝,我得出了一個結論,即我知道許多人已經到達了這一理論,即由於不想閱讀這樣一個簡單的事實而花了我們太多的錢,因為當我們知道自己在做什麼時執行起來就容易得多,為什麼呢? ???的問題,在哪裡可以找到,如何獲得提供這麼多頭疼的時候,我們甚至不知道哪裡來的,值得冗餘錯誤了。
    出於這個原因,我不希望您遺漏您宣布的下一個出版物中將包含的有關DNS記錄的理論元素,更不用說親愛的DEBIAN了。
    非常感謝,我們在等待。

  5.   獵人 他說:

    一如既往的出色Fico! 我等待著Debian版本,多年來我一直在使用該發行版播放所有內容。

  6.   費德里科 他說:

    黃:您閱讀後的意見非常有價值。 當您測試內容時,我在等待您的評論,因為我知道您喜歡這樣做。 😉

  7.   費德里科 他說:

    Crespo:和往常一樣,您的評論很受好評。 我看到您已經掌握了本系列文章中提出的基本思路。 希望像您一樣,許多人已經註意到。 謝謝你的評論。

  8.   費德里科 他說:

    Dhunter:很高興再次認識您! 您無需等待很長時間。 最遲在星期一(或之前)出版。 不要以為我輕鬆涵蓋三個發行版,可敬的讀者會要求它。 不僅是Debian和Ubuntu,而且面向中小企業的三個。

  9.   Crespo88 他說:

    來吧,如果您已經發布了它,是因為您可以,我們將為您提供支持,並且我們知道您會遵循這一原則。
    作為一名獵人,我等著尖銳的牙齒等待Debian發行。 如果您稍微了解一下NTP,那就太好了。 Sl2和一個大大的擁抱。 如果我的老師教過我像那樣的一切,那就是HAHAJJA,白金學位,HAHAJJA。

  10.   費德里科 他說:

    為了顯示其重要性,命令輸出中的詳細程度是必需的。 他們說了很多。 的確,很少有文章談到這種詳細程度,因為他們認為它們是冗長而沉重的文章。 嗯,SysAdmin的工作之一就是讀取大量而詳盡的輸出,不僅是面對問題,而且還要面對檢查。

  11.   伊斯梅爾·阿爾瓦雷斯·黃 他說:

    我以前曾答應過的你好費德里科,在仔細研究了有關帖子後寫了一些評論; 好吧,他們接下來繼續:
    -出色的技術,而不是通過DHCP生成用於動態DNS更新的TSIG密鑰,複製了與dhcp.key相同的rndc.key密鑰,顯然“如此簡單”表明,該目標不僅是HOWTO-INSTALL-DNS的技術- &-DHCP,但教會我們思考,為作者提供5星。
    -在名為.conf的DNS配置文件中,非常有趣的是行«allow-transfer {localhost; 192.168.10.1; };» 僅從SysAdmin工作站和本地主機(DNS服務器本身)測試域«desdelinux.fan»,並插入TSIG密鑰以從DHCP更新DNS。
    -非常好的創建DNS的正向和反向區域,以及對其記錄類型的“詳細”說明,以及執行命令“#named-checkconf -zp”以檢查DNS的所有語法在硬重置之前被命名,以及運行“ dig”命令以驗證不同類型的DNS記錄的示例。
    。 在DHCP配置中(使用/etc/dhcp/dhcpd.conf文件):
    -如何添加我們的局域網及其動態IP地址分配範圍,名稱服務器的定義等; 以及如何通過在配置中使用“ ddns- ...”行告訴DHCP更新DNS記錄。
    。 如果一切正常,那麼在執行“#dig desdelinux.fan axfr”命令時,作者將獲得5顆星,以檢查LAN上具有靜態IP的計算機的TTL(已分配動態IP的計算機)。
    。 最後,GREAT,手動修改區域文件,方法是先使用“#rndc Frozen desdelinux.fan”凍結它們,然後進行修改,最後使用“#rndc thaw desdelinux.fan”解凍它們
    。 而最好的,一切都做到了。
    繼續保持下去。

    1.    歡樂 他說:

      您好!
      Ik kom net kijken,od omdat ik probeer te achterhalen hoe het kan dat alles gedeeld en verwijderd wordt op mijn computer zelfs mijn foto's。 Ik heb totalal geen控制著Mobiel上的miin本徵計算機。
      dhcp中的het dns中的het zit m dus ook。 我要努力,要保護自己。 Misschien dat iemand mij wilt helpen? 它的名稱是geinstalleerd。 Walgelijk gedrag vind ik het。

  12.   費德里科 他說:

    黃:您的評論是對本文的補充。 認真地,它表明您已經深入研究了它。 否則,您將無法評論您所做的詳細程度。 只需添加 允許轉移 它主要用於擁有DNS從站,並允許將區域從主站傳輸到它的情況。 我之所以使用它,是因為它是一種易於實現的機制,可以從一台計算機進行無危險的檢查。 非常感謝您對5.的評價。 在下一篇文章中,我將繼續等待您。

  13.   伊格納西奧 他說:

    你好費德里科。 我知道我來晚了,但是我想問你一個問題。
    如果要將域指向我的vps服務器,此過程對我有幫助嗎?

    每隔15分鐘,我會收到以下系統消息:

    eth0上的DHCPREQUEST到端口67(xid =…)
    來自(xid = ...)的DHCPACK
    必定-在970秒內續約。

    根據我的理解,我應該使用我的域和專用服務器的IP創建一個A記錄。

    *我祝賀並感謝您的這篇文章,我不知道這是否是我要找的內容,但我發現它非常有趣並且得到了很好的解釋。 另外,我接受了我一直在閒聊的“ DNS和BIND”的建議,這似乎非常有趣。

    來自阿根廷的問候!

    1.    安東尼奧·瓦爾德斯·圖加格 他說:

      請通過以下方式與我聯繫 valdesoujague@yandex.com