Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Suche DNS Command um Host A Einträge zu ändern

Frage Netzwerke DNS

Mitglied: mexx

mexx (Level 2) - Jetzt verbinden

25.04.2014, aktualisiert 11:53 Uhr, 3911 Aufrufe, 7 Kommentare, 2 Danke

Hallo,

in einer reinen Windows Server 2008 R2 Umgebung mit zwei Domaincontrollern auf denen ein DNS Server läuft, besteht die Anforderung einen Host Eintrag im DNS zu ändern. Meine google Suche war bisher erfolglos. Vielleicht ahbt Ihr eine Idee?

Gruß,
mexx
Mitglied: colinardo
25.04.2014, aktualisiert um 11:59 Uhr
Hallo mexx,
kannst du mit Dnscmd machen.

Grüße Uwe
Bitte warten ..
Mitglied: mexx
25.04.2014 um 12:03 Uhr
Ich finde in den Command keinen Schalter zum Ändern. Löschen und Hinzufügen, aber ein Set finde ich nicht.
Bitte warten ..
Mitglied: colinardo
25.04.2014, aktualisiert um 16:38 Uhr
Zitat von mexx:

Ich finde in den Command keinen Schalter zum Ändern. Löschen und Hinzufügen, aber ein Set finde ich nicht.
erst den Eintrag mit:
dnscmd /recorddelete
entfernen und dann wieder mit
dnscmd /recordadd
neu hinzufügen.

http://gallery.technet.microsoft.com/scriptcenter/Update-DNS-records-wi ...

Grüße Uwe
Bitte warten ..
Mitglied: mexx
25.04.2014 um 12:10 Uhr
Nein, den weg möchte ich nicht gehen. Windows 2012 R2 besitzt ein Powershell Modul mit einer Set Cmdlet. Unter 2008 kann es doch nicht notwendig sein, zu löschen und neu zu schreiben. Das ist nicht ändern. Gibt es wirklich keine andere Methode?
Bitte warten ..
Mitglied: colinardo
25.04.2014, aktualisiert um 21:14 Uhr
Zitat von mexx:

Nein, den weg möchte ich nicht gehen. Windows 2012 R2 besitzt ein Powershell Modul mit einer Set Cmdlet. Unter 2008 kann es
doch nicht notwendig sein, zu löschen und neu zu schreiben. Das ist nicht ändern. Gibt es wirklich keine andere Methode?
ohne DNSCmd und nur mit Powershell kannst du das über den WMI-Namespace root\MicrosoftDNS mit der Methode Modify machen.

Beispiel um für einen DNS A-Eintrag die IP-Adresse zu ändern:
(gwmi -Namespace 'root\MicrosoftDNS' -Class MicrosoftDNS_AType -Filter "ContainerName='contoso.com' and OwnerName='mytest.contoso.com'").Modify($null,"192.168.15.66")
Beispiel um für einen DNS CNAME-Eintrag das Ziel zu ändern:
(gwmi -Namespace 'root\MicrosoftDNS' -Class MicrosoftDNS_CNAMEType -Filter "ContainerName='contoso.com' and OwnerName='mycname.contoso.com'").Modify($null,"mytarget.contoso.com")
Die verschiedenen DNS-Typen kannst du hier nachschlagen:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682123%28v=vs ...

Grüße Uwe
Bitte warten ..
Mitglied: colinardo
25.04.2014, aktualisiert um 14:31 Uhr
habe das ganze mal zu einem CMD-Let zusammengeschrieben, welche bis jetzt A und CNAME Einträge unterstützt:
01.
function Change-DNSRecord{ 
02.
    param( 
03.
        [parameter(mandatory=$false)][string]$DNSServer = $env:COMPUTERNAME, 
04.
        [parameter(mandatory=$true)][ValidateSet("A","CNAME")][string]$EntryType, 
05.
        [parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$Container, 
06.
        [parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$EntryName 
07.
08.
 
09.
    DynamicParam{ 
10.
        $attrCollection = new-object System.Collections.ObjectModel.Collection[System.Attribute] 
11.
        $paramDic = new-object System.Management.Automation.RuntimeDefinedParameterDictionary 
12.
 
13.
        Switch($EntryType.ToUpper()){ 
14.
            "A"{ 
15.
                $attr = new-object System.Management.Automation.ParameterAttribute 
16.
                $valAttr1 = new-Object System.Management.Automation.ValidateNotNullOrEmptyAttribute 
17.
                $valAttr2 = New-Object System.Management.Automation.ValidatePatternAttribute("^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$") 
18.
                $attr.ParameterSetName = "AllParameterSets" 
19.
                $attr.Mandatory = $true 
20.
                $attrCollection.Add($attr) 
21.
                $attrCollection.Add($valAttr1) 
22.
                $attrCollection.Add($valAttr2) 
23.
                $dynParam1 = new-object System.Management.Automation.RuntimeDefinedParameter("IPAddress", [String], $attrCollection) 
24.
                $paramDic.Add("IPAddress", $dynParam1) 
25.
                return $paramDic 
26.
27.
            "CNAME"{ 
28.
                $attr = new-object System.Management.Automation.ParameterAttribute 
29.
                $valAttr1 = new-Object System.Management.Automation.ValidateNotNullOrEmptyAttribute 
30.
                $attr.ParameterSetName = "AllParameterSets" 
31.
                $attr.Mandatory = $true 
32.
                $attrCollection.Add($attr) 
33.
                $attrCollection.Add($valAttr1) 
34.
                $dynParam1 = new-object System.Management.Automation.RuntimeDefinedParameter("TargetHost", [String], $attrCollection) 
35.
                $paramDic.Add("TargetHost", $dynParam1) 
36.
                return $paramDic 
37.
38.
 
39.
40.
     
41.
42.
    begin{} 
43.
    process{ 
44.
        switch($EntryType.ToUpper()){ 
45.
            "A"{ 
46.
 
47.
                $entry = gwmi -Namespace 'root\MicrosoftDNS' -Class MicrosoftDNS_AType -Filter "ContainerName='$Container' and OwnerName='$EntryName'" -ComputerName $DNSServer 
48.
                if ($entry -ne $null){ 
49.
                    $Error.Clear() 
50.
                    $entry.Modify($null,$PSBoundParameters.IPAddress) | out-null 
51.
                    if ($Error.Count -eq 0){ 
52.
                        $newEntry = gwmi -Namespace 'root\MicrosoftDNS' -Class MicrosoftDNS_AType -Filter "ContainerName='$Container' and OwnerName='$EntryName'" -ComputerName $DNSServer 
53.
                        return $newEntry 
54.
                    }else{ 
55.
                        return $false 
56.
57.
                }else{ 
58.
                    write-host "Ein Eintrag mit dem Name '$EntryName' konnte im Container '$Container' nicht gefunden werden!" -ForegroundColor Red 
59.
                    return $false 
60.
61.
 
62.
63.
            "CNAME"{ 
64.
        
65.
                $entry = gwmi -Namespace 'root\MicrosoftDNS' -Class MicrosoftDNS_CNAMEType -Filter "ContainerName='$Container' and OwnerName='$EntryName'" -ComputerName $DNSServer 
66.
                if ($entry -ne $null){ 
67.
                    $Error.Clear() 
68.
                    $entry.Modify($null,$PSBoundParameters.TargetHost) | out-null 
69.
                   if ($Error.Count -eq 0){ 
70.
                        $newEntry = gwmi -Namespace 'root\MicrosoftDNS' -Class MicrosoftDNS_CNAMEType -Filter "ContainerName='$Container' and OwnerName='$EntryName'" -ComputerName $DNSServer 
71.
                        return $newEntry 
72.
                    }else{ 
73.
                        return $false 
74.
75.
                }else{ 
76.
                    write-host "Ein Eintrag mit dem Name '$EntryName' konnte im Container '$Container' nicht gefunden werden!" -ForegroundColor Red 
77.
                    return $false 
78.
79.
80.
81.
         
82.
         
83.
84.
    end{} 
85.
}
Benutzt wird das für A-Einträge dann so:
Change-DNSRecord -EntryType "CNAME" -Container "contoso.com" -EntryName "hostXYZ.contoso.com" -IPAddress "192.168.77.2"
und für CNAME Einträge so
Change-DNSRecord -EntryType CNAME -Container "contoso.com" -EntryName "hostXYZ.contoso.com" -TargetHost "mytarget.contoso.com"
Optional ist dann noch die Angabe des DNS-Servers mit dem Parameter -DNSServer, ansonsten wird der Server vermutet auf welchem das Script ausgeführt wird.

Viel Spaß.

Grüße Uwe
Bitte warten ..
Mitglied: mexx
06.05.2014 um 10:36 Uhr
Vielen Dank für die Hilfe!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Registry per Batch abfragen und INI Einträge hinzufügen bzw. ändern (18)

Frage von kampen zum Thema Batch & Shell ...

Windows Server
DNS Windows Server 2008R2 alte DNS Einträge löschen lassen (3)

Frage von WinLiCLI zum Thema Windows Server ...

E-Mail
PTR (Reverse DNS) - Einträge (8)

Frage von tigernrw zum Thema E-Mail ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst ZIP-Archive nach Dateien durchsuchen und Pfade ausgeben (33)

Frage von evinben zum Thema Batch & Shell ...

Router & Routing
Routingproblem in Homerouter-Kaskade mit Raspi (20)

Frage von Oldschool zum Thema Router & Routing ...

Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (14)

Frage von Datsspeed zum Thema Exchange Server ...

Verschlüsselung & Zertifikate
Mit Veracrypt eine zweite interne (non-system) Festplatte verschlüsseln (9)

Frage von Bernulf zum Thema Verschlüsselung & Zertifikate ...