Benutzer mit den meisten Antworten
DNS Adresse: Dynamisch oder nicht? Einstellung abfragen

Frage
-
Moin,
Es gelingt mir, über
Dim objMC As ManagementClass = New ManagementClass("Win32_NetworkAdapterConfiguration") Dim objMOC As ManagementObjectCollection = objMC.GetInstances For Each objMO As ManagementObject In objMOC
alles mögliche abzufragen, einschließlich der DNS-Adresse(n). Allerdings kann ich ums Verrecken nicht entdecken, wie ich rauskriege, ob 'DNS-Adresse automatisch beziehen' oder 'Folgende DNS-ServerAdressen verwenden' in den IPv4-Einstellungen festgelegt ist, denn DNS-Adressen werden so oder so zurückgegeben.
(die Eigenschaften 'DomainDNSRegistrationEnabled' und 'FullDNSRegistrationEnabled' verändern sich hier nicht.
Hab das auch so probiert:Dim adapters() As NetworkInterface = NetworkInterface.GetAllNetworkInterfaces() For Each adap As NetworkInterface In adapters If adap.Description = Korrekteradapter Then Dim props As IPInterfaceProperties = adap.GetIPProperties 'Return props.IsDnsEnabled 'geht nicht Return props.IsDynamicDnsEnabled 'geht auch nicht End If
M.E. gibt das die beiden gleichen Werte zurück wie mein Managementobjekt)
Ach: Und dann müsste ich noch wissen, wie man das 'DNS-Adresse automatisch beziehen' per code setzt. ('Folgende DNS-ServerAdressen verwenden' wird automatisch gesetzt, wenn man eine DNS-Adresse setzt per code)
Kann mir hier jemand helfen?
Antworten
-
Hallo Thomas,
wenn ich das richtig sehe, kannst Du diese Einstellung nicht in der Form abfragen, dass Du das über eine Eigenschaft ermitteln könntest. Siehe dazu:
Das einzige, was Du hier machen kannst, dürfte das abfragen von DHCPEnabled sein.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
- Bearbeitet Stefan FalzModerator Dienstag, 12. Januar 2016 23:57
- Als Antwort markiert Migration Sucks Mittwoch, 13. Januar 2016 16:52
-
Hallo Migration Sucks,
Sieh Dir folgenden Thread an:
Set DNS to 'Obtain automatically' programmaticallyWenn Du den DNSServerSearchOrder-Parameter des von GetMethodParameters zurückgegebenen BaseManagementObjects auf null setzt, werden die Adressen automatisch bezogen, andernfalls werden die als String-Array zugewiesenen Adressen verwendet. Der Code lässt sich mit einem Konverter nach VB.NET konvertieren.
Gruß,
DimitarBitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.
- Als Antwort markiert Migration Sucks Dienstag, 12. Januar 2016 16:55
- Tag als Antwort aufgehoben Migration Sucks Dienstag, 12. Januar 2016 23:24
- Als Antwort markiert Migration Sucks Mittwoch, 13. Januar 2016 16:53
Alle Antworten
-
Hallo Migration Sucks,
Sieh Dir folgenden Thread an:
Set DNS to 'Obtain automatically' programmaticallyWenn Du den DNSServerSearchOrder-Parameter des von GetMethodParameters zurückgegebenen BaseManagementObjects auf null setzt, werden die Adressen automatisch bezogen, andernfalls werden die als String-Array zugewiesenen Adressen verwendet. Der Code lässt sich mit einem Konverter nach VB.NET konvertieren.
Gruß,
DimitarBitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.
- Als Antwort markiert Migration Sucks Dienstag, 12. Januar 2016 16:55
- Tag als Antwort aufgehoben Migration Sucks Dienstag, 12. Januar 2016 23:24
- Als Antwort markiert Migration Sucks Mittwoch, 13. Januar 2016 16:53
-
Sieh Dir folgenden Thread an:
Set DNS to 'Obtain automatically' programmaticallyWenn Du den DNSServerSearchOrder-Parameter des von GetMethodParameters zurückgegebenen BaseManagementObjects auf null setzt, werden die Adressen automatisch bezogen, andernfalls werden die als String-Array zugewiesenen Adressen verwendet.
Vielen Dank Dimitar, das sieht vielversprechend aus und klingt logisch.
nur noch schnell zur Sicherheit (denn so lese und setze ich bis jetzt schon die Parameter): Null in C ist NOTHING in VB, gelle?
ManagementBaseObject mboDNS = mObj.GetMethodParameters("SetDNSServerSearchOrder"); if (mboDNS != null) { mboDNS["DNSServerSearchOrder"] = null; mObj.InvokeMethod("SetDNSServerSearchOrder", mboDNS, null); }
-
Hi,
nur noch schnell zur Sicherheit (denn so lese und setze ich bis jetzt schon die Parameter): Null in C ist NOTHING in VB, gelle?
In der Regel ja. Ob das nun immer und überall gilt, weiß ich nicht, dafür kenne ich mich in C, C++, ... nicht genug aus. Aber für alle Fälle, in denen mir das bislang untergekommen ist, ist deine Annahme korrekt.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Sieh Dir folgenden Thread an:
Set DNS to 'Obtain automatically' programmaticallyNochmal an Alle die mitlesen:
Die Frage: wie setze ich DNS auf 'automatisch beziehen' ist durch Dimitar beantwortet.
Ich kann das nun setzen. Der Umkehrschluss gilt allerdings nicht: auch bei 'automatisch beziehen' wird eine DNS-Adresse bei der Abfrage zurückgegeben. Das eignet sich also nicht als Lösung für meine Eingangsfrage.
Daher nochmal:
Wie kann ich abfragen ob 'DNS automatisch beziehen' gesetzt ist oder nicht?
Vielen Dank an Euch für die Hilfe bis hierhin!
Thomas -
Hallo Thomas,
wenn ich das richtig sehe, kannst Du diese Einstellung nicht in der Form abfragen, dass Du das über eine Eigenschaft ermitteln könntest. Siehe dazu:
Das einzige, was Du hier machen kannst, dürfte das abfragen von DHCPEnabled sein.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
- Bearbeitet Stefan FalzModerator Dienstag, 12. Januar 2016 23:57
- Als Antwort markiert Migration Sucks Mittwoch, 13. Januar 2016 16:52
-
http://serverfault.com/questions/582199/can-you-use-wmi-to-determine-if-a-connection-gets-its-dns-servers-from-dhcp
Danke Stefan, ein interessanter Link. Schlecht nachvollziehbar, dass man diese Info tatsächlich offenbar nirgends mit Bordmitteln bekommen kann, wo doch netsh diese Information abrufen kann.Das einzige, was Du hier machen kannst, dürfte das abfragen von DHCPEnabled sein.