So richten Sie einen DNS -Server auf CentOS 7 ein
安装BIND软件包;2. 配置named.conf文件以允许查询和递归;3. 创建正向区域文件并定义A记录;4. (可选)创建反向区域文件以支持PTR记录;5. 设置正确的文件权限和SELinux上下文;6. 启用并启动named服务;7. 配置防火墙允许DNS流量;8. 使用named-checkzone、named-checkconf和dig测试配置;9. 将客户端DNS指向该服务器;每次修改区域文件需递增序列号,生产环境建议配置从DNS服务器并禁用公共递归以确保安全,所有步骤完成后DNS服务器即可正常运行。
Setting up a DNS server on CentOS 7 involves installing and configuring BIND (Berkeley Internet Name Domain), which is the most widely used DNS server on Unix-like systems. Below is a step-by-step guide to help you set up a basic authoritative DNS server for a domain.

1. Install BIND (named)
First, install the BIND package using yum
:
sudo yum install bind bind-utils -y
bind
: The DNS server daemon (named
).bind-utils
: Includes tools likedig
,nslookup
, andhost
for testing DNS.
2. Configure the Main BIND File (named.conf
)
Edit the main configuration file:

sudo vi /etc/named.conf
Make sure the following options are set (especially for allowing queries and zone transfers):
options { listen-on port 53 { any; }; 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 queries from your network allow-query { localhost; 192.168.1.0/24; }; // Adjust to your network // Enable recursion only if needed (for internal DNS) recursion yes; // Optional: Restrict recursion to internal clients allow-recursion { localhost; 192.168.1.0/24; }; dnssec-validation no; // Disable if not using DNSSEC (simpler for beginners) };
Also, ensure zone files are loaded by confirming this line exists:

include "/etc/named.rfc1912.zones";
3. Create Forward Zone (example: example.com
)
a. Add the zone in /etc/named.conf
Add the following to the end of /etc/named.conf
or in /etc/named.rfc1912.zones
:
zone "example.com" IN { type master; file "example.com.zone"; allow-update { none; }; };
Replace
example.com
with your actual domain.
b. Create the zone file
Create the forward zone file:
sudo vi /var/named/example.com.zone
Add content like this:
$TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 2024040101 ; Serial (YYMMDDNN) 3600 ; Refresh 1800 ; Retry 604800 ; Expire 86400 ) ; Minimum TTL ; Name Servers @ IN NS ns1.example.com. @ IN NS ns2.example.com. ; A Records ns1 IN A 192.168.1.10 ns2 IN A 192.168.1.11 www IN A 192.168.1.20 mail IN A 192.168.1.25 @ IN A 192.168.1.20 ; example.com
Replace IPs and names with your actual values.
4. Create Reverse Zone (Optional, for PTR records)
a. Add reverse zone in /etc/named.conf
For network 192.168.1.0/24
:
zone "1.168.192.in-addr.arpa" IN { type master; file "192.168.1.rev"; allow-update { none; }; };
b. Create reverse zone file
sudo vi /var/named/192.168.1.rev
Content:
$TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 2024040101 3600 1800 604800 86400 ) ; Name Servers @ IN NS ns1.example.com. @ IN NS ns2.example.com. ; PTR Records 10 IN PTR ns1.example.com. 11 IN PTR ns2.example.com. 20 IN PTR www.example.com. 25 IN PTR mail.example.com.
5. Set Proper Permissions and SELinux Context
Ensure the zone files are readable by named
:
sudo chown root:named /var/named/*.zone /var/named/*.rev sudo chmod 640 /var/named/*.zone /var/named/*.rev
Fix SELinux context (if enabled):
sudo restorecon -R /var/named
6. Enable and Start the DNS Service
sudo systemctl enable named sudo systemctl start named
Check status:
sudo systemctl status named
7. Configure Firewall
Allow DNS traffic:
sudo firewall-cmd --permanent --add-service=dns sudo firewall-cmd --reload
8. Test the DNS Server
a. Check zone file syntax
sudo named-checkzone example.com /var/named/example.com.zone sudo named-checkzone 1.168.192.in-addr.arpa /var/named/192.168.1.rev
b. Check main config
sudo named-checkconf
c. Use dig
to test
On the server or a client:
dig @localhost example.com dig @192.168.1.10 www.example.com dig -x 192.168.1.20 ; Reverse lookup
You should see the correct A or PTR records in the answer section.
9. Point Clients to Your DNS Server
On client machines, set their DNS to use:
192.168.1.10 # Your DNS server IP
Edit /etc/resolv.conf
:
nameserver 192.168.1.10
Final Notes
- Increment the Serial number each time you update a zone file.
- Use
rndc reload
to reload zones without restarting:sudo rndc reload example.com
- For production, consider setting up a slave (secondary) DNS server for redundancy.
- Secure your DNS server: disable recursion for public access if it's authoritative only.
Setting up a DNS server on CentOS 7 with BIND isn't complex once you understand the zone structure and configuration layout. Just double-check file permissions, syntax, and firewall settings—most issues come from those areas.
Basically, get the config right, test thoroughly, and keep it secure.
Das obige ist der detaillierte Inhalt vonSo richten Sie einen DNS -Server auf CentOS 7 ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

LINUX ist ein Open-Source-Betriebssystem, das häufig in Servern und eingebetteten Geräten verwendet wird. Im Serverbereich ist CentOS eine sehr beliebte Linux-Distribution, und 82599 ist eine gängige Hochleistungsnetzwerkkarte Netzwerkkartentreiber unter CentOS7 und erklären Sie ausführlich die Schritte und Vorsichtsmaßnahmen für die Installation von CentOS7 auf dem DellPowerEdge2288HV5-Server. Installation des 82599-Netzwerkkartentreibers unter CentOS7 1. Bestätigen Sie, dass Ihr CentOS7-System korrekt installiert wurde und sich auf dem neuesten Stand befindet. Sie können den folgenden Befehl verwenden, um die Systemversion und den Aktualisierungsstatus zu bestätigen: „cat/etc/redhat-“. rele

Lösungen für den Fall, dass der DNS-Server nicht reagiert: 2. DNS-Konfigurationsproblem 5. DNS-Sicherheitsproblem; öffentlicher DNS-Server; 8. Router und Switches neu starten; 9. Firewall-Einstellungen überprüfen; Detaillierte Einführung: 1. Netzwerkverbindungsproblem. Überprüfen Sie zunächst, ob die Netzwerkverbindung normal ist. Wenn der Computer keine Verbindung zum Internet herstellen kann, kann der DNS-Server natürlich nicht antworten usw.

Lösungen für den Fall, dass der DNS-Server nicht reagiert, umfassen die Überprüfung der Netzwerkverbindung, das Löschen des lokalen DNS-Cache, das Ändern des DNS-Servers, die Überprüfung der Firewall- und Sicherheitseinstellungen, die Verwendung anderer Geräte oder Netzwerke und die Kontaktaufnahme mit dem Netzwerkdienstanbieter. Detaillierte Einführung: 1. Überprüfen Sie die Netzwerkverbindung, um sicherzustellen, dass die Netzwerkverbindung normal ist. Sie können versuchen, andere Webseiten zu öffnen oder andere Geräte für den Zugriff zu verwenden, um festzustellen, ob ein Netzwerkverbindungsproblem vorliegt , es kann ein DNS-Serverproblem sein 2 , lokaler DNS-Cache leeren usw.

Auf welche Serveradresse ist DNS eingestellt? DNS (DomainNameSystem) ist das System, das im Internet verwendet wird, um Domänennamen in IP-Adressen aufzulösen. Es ermöglicht Benutzern den Zugriff auf Websites oder Dienste, indem der vom Benutzer eingegebene Domänenname in die entsprechende IP-Adresse umgewandelt wird. Beim Festlegen der DNS-Serveradresse gibt es im Allgemeinen zwei Möglichkeiten: Verwenden Sie die vom ISP (Internet Service Provider) bereitgestellte Standard-DNS-Serveradresse oder legen Sie manuell eine benutzerdefinierte DNS-Serveradresse fest.

Die Adresse des DNS-Servers wird durch den vom Benutzer verwendeten Netzwerkanbieter bestimmt. Normalerweise erhalten und konfigurieren die Router- oder Netzwerkeinstellungen die DNS-Serveradresse: 1. Öffnen Sie die Netzwerkeinstellungen 2. Suchen Sie die Option „Netzwerkverbindung“ und öffnen Sie die entsprechenden Einstellungen. 3. Suchen Sie in den Netzwerkeinstellungen nach den Einstellungen „TCP/IP“ oder „IPv4“. manuelle Konfiguration der IP-Adresse; 5. Geben Sie die bevorzugte DNS-Serveradresse ein.

Der Schlüssel zur Änderung der DNS -Konfiguration von /etc/resolv.conf besteht darin, die Schritte und Vorsichtsmaßnahmen zu beherrschen. Die Datei muss geändert werden, da das System seine angegebenen DNS standardmäßig für die Auflösung des Domänennamens verwendet. Wenn Sie stabilere oder von Privatsphäre geschützte DNS (z. B. 8,8.8.8, 1.1.1) ändern, muss es manuell bearbeitet werden. Nano oder VIM kann verwendet werden, um die Datei zu öffnen und den Namenserver -Eintrag zu ändern. Nach dem Speichern und Verlassen müssen einige Systeme den Netzwerkdienst neu starten, um wirksam zu werden. Es ist jedoch zu beachten, dass, wenn das System systemd-aufgelöst oder dhcp verwendet, um die Konfiguration automatisch zu erhalten, die direkte Änderung überschrieben werden kann. Die entsprechende Konfiguration sollte eingestellt werden, bevor die Datei gesperrt oder der Dienst neu gestartet wird. Darüber hinaus können bis zu zwei oder drei DNS -Adressen hinzugefügt werden, die Reihenfolge beeinflusst

Um die statische IP -Adresse von CentOS7 zu konfigurieren, müssen Sie die IFCFG -Datei der entsprechenden Netzwerkkarte bearbeiten. 1. Bestätigen Sie zunächst den Netzwerkkartennamen wie ENS33 über Iplinkshow oder LS/SYS/Klasse/Netz; 2. Bearbeiten Sie die/etc/sysconfig/network-scripts/ifcfg-ens33-Datei, um bootProto = static zu setzen und iPadDR, NetMask, Gateway und andere Parameter auszufüllen. 3. Starten Sie nach dem Speichern den Netzwerkdienst neu, um die Konfiguration in Kraft zu setzen. 4. Verwenden Sie die Befehle iPadDrshow und Ping, um zu überprüfen, ob die Konfiguration erfolgreich ist. Achten Sie darauf, IP -Konflikte zu vermeiden und starten Sie den Netzwerkdienst nach der Änderung neu. Wenn Sie NetworkM verwenden

Um das Stammkennwort von CentOS7 zurückzusetzen, gehen Sie zum Grub -Menü und starten Sie den Einzelbenutzermodus. 1. Drücken Sie die Pfeiltasten während des Starts wiederholt, um den Startvorgang zu unterbrechen, um das Grub -Menü einzugeben. 2. Wählen Sie den Kernel aus und drücken Sie "E", um die Startparameter zu bearbeiten. 3. Fügen Sie Rd. Break am Ende von Linux 16 hinzu und starten Sie dann; V. 5. Verwenden Sie Chroot, um in die reale Root -Umgebung zu wechseln und Passwdroot zu verwenden, um das Kennwort zu ändern. 6. Erstellen Sie eine .Autorelabel -Datei, um sicherzustellen, dass Selinux korrekt relabe; 7. Geben Sie die Ausfahrt ein, um das System zu beenden und neu zu starten. Diese Methode erfordert physischen oder Konsolenzugriff und der Remote -Server benötigt
