Laden von DNS-Zonen fehl auf einem Windows Server 2008 R2-basierten DNS-server

Dieser Artikel beschreibt ein Problem, bei dem ein Windows Server 2008 R2 Service Pack 1 (SP1)-basierten DNS-Server, die Active Directory-integrierten Zonen nicht DNS-Zonen geladen. Ein Update ist verfügbar, um dieses Problem zu beheben. Bevor Sie dieses Update installieren, finden Sie im Abschnitt erforderliche Komponenten .

Problembeschreibung

Dieses Problem tritt auf, nachdem Sie Sicherheitsupdate 3100465 oder Hotfix 3022780 auf einem Server mit Windows Server 2008 R2 installiert haben.

Wie Sie dieses Update erhalten

Wichtig Wenn Sie ein Language Pack installieren, nachdem Sie dieses Update installiert haben, müssen Sie dieses Update erneut installieren. Daher empfehlen wir die Installation aller benötigten Language Packs, bevor Sie dieses Update installieren. Weitere Informationen finden Sie unter Hinzufügen von Sprachpaketen zu Windows

Methode 1: Windows Update

Dieses Update wird als Empfohlenes Update über Windows Update bereitgestellt. Weitere Informationen zum Ausführen von Windows Update finden Sie unter Update über Windows Update erhalten.

Methode 2: Microsoft Update-Katalog

Um das eigenständige Paket für dieses Update zu erhalten, besuchen Sie die Microsoft Update-Katalog-Website.

Bekanntes Problem 1

Nach der Installation von Update KB3145126 auftreten Abstürzen des DNS-Dienstes. In diesem Szenario wird ein Ereignis etwa folgender Art im Anwendungsprotokoll protokolliert:

Log Name:      <Application> Source:        <Application Error> 
Event ID: 1000
Task Category: (100)
Level: Error
Keywords: Classic
User: N/A
Description:
Faulting application name: dns.exe, version: 6.1.7601.23375
Faulting module name: dns.exe, version: 6.1.7601.23375
Exception code: 0xc0000005
Faulting application path: C:\Windows\system32\dns.exe
Faulting module path: C:\Windows\system32\dns.exe

Ursache

DNS-Dienst Absturzes kann auftreten, wenn DNS konfiguriert ist, um einen CNAME- und einen SOA aufzeichnen sowohl für vorhanden sind die "@" Datensatz. Das "@"-Datensatz identifiziert den Stamm einer DNS-Zone. Dies kann häufig im DNS-Manager als Datensatz mit <identisch mit übergeordnetem Ordner> Namen identifiziert werden. Die SOA- und NS-Datensätze sind in diesem Ordner zulässig. RFC 2181 beschreibt Überprüfung der Eindeutigkeit für CNAME-Einträge. Gemäß RFC 2181 der CNAME-Eintrag existiert nicht in <derselben übergeordneten> Ordner ("@") einer Zone.

Problemlösung

Um dieses Problem zu vermeiden, identifizieren und entfernen Sie den "@" CNAME-Datensatz, der das Problem verursacht, aus der fehlerhaft konfigurierten Zone vor der Installation aktualisieren KB3145126.

Führen Sie das folgende PowerShell-Beispielskript um problematische Zonen zu identifizieren. PowerShell ist in Windows Server 2008 R2 standardmäßig installiert.

$count = 0$var = get-wmiobject -query "select * from win32_service where name = 'dns'" 
if ($var -ne $null)
{
if ($var.state.tolower() -eq "running")
{
[array] $global:badcnamedomains = $null
$var = get-wmiobject -namespace "root\microsoftdns" -query "select * from microsoftdns_zone"
if ($var -ne $null)
{
foreach ($var2 in $var)
{
$query = "select * from microsoftdns_cnametype where containername = '" + $var2.name + "'"
$var3 = get-wmiobject -namespace "root\microsoftdns" -query $query | where {$_.ownername -eq $var2.name}
if ($var3 -ne $null)
{
$count += 1
$global:badcnamedomains += $var3.domainname
}
}
}
else
{
write-host "No zones returned"
}
}
else
{
Write-Host "DNS Service is not running"
break;
}
}

if ($count -gt 0)
{
write-host "Total number of zones found: $count"
write-host "The zones are:"
write-host $global:badcnamedomains
}
elseif ($count -eq 0)
{
write-host "No zones found with the issue"
}
$count = $null
$global:badcnamedomains = $null
Dieses Skript identifiziert CNAME-Einträge, die in Konflikt mit SOA-Einträgen in lokal gespeicherten DNS-Zonen. Beim Ausführen des PowerShell-Skripts eine Meldung "DNS-Dienst wird nicht ausgeführt" angezeigt wird, stellen Sie sicher, dass der DNS-Dienst gestartet wird, bevor Sie das Skript ausführen. Gegebenenfalls muss das Update KB3145126 zuerst deinstalliert werden, damit der DNS-Dienst stabil läuft.

Um die CNAME-Datensätze löschen, die nicht mit RFC 2181 anhand der Ausgabe von PowerShell-Skript zurückgegeben wird, geben Sie folgenden Befehl an und drücken:

DNSCMD /recorddelete DNS-Zonennamen @ cname
 

Ausführliche Informationen

Voraussetzungen

Um dieses Update installieren, installieren Sie Service Pack 1 für Windows Server 2008 R2.

Informationen zur Registrierung

Um dieses Update anwenden zu können, müssen Sie die Registrierung NICHT ändern.

Neustartanforderung

Sie müssen den Computer neu starten, nachdem Sie dieses Update angewandt haben.

Ersetzte Updates

Dieses Update ersetzt kein zuvor veröffentlichtes Update.

Status

Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind.

Referenzen

Erfahren Sie mehr über die Terminologie, mit der Microsoft Softwareupdates beschrieben werden.

Dateiinformationen

Die englische (bzw. US-) Version dieses Updates installiert Dateien mit den Attributen, die in den folgenden Tabellen aufgeführt sind.
Windows Server 2008 R2;
Weitere Dateiinformationen
Eigenschaften

Artikelnummer: 3145126 – Letzte Überarbeitung: 21.01.2017 – Revision: 1

Windows Server 2008 R2 Service Pack 1, Windows Server 2008 R2 Datacenter, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Standard, Windows Server 2008 R2 Foundation

Feedback