Erkennen, Wenn IPv6 Aktiviert ist auf Windows-Rechnern
Schreibe ich ein powershell-Skript, das handeln wird als build-compliance test für unsere Server. Eines der Dinge, die ich tun müssen, ist zu erkennen, wenn IPv6-Netzwerk deaktiviert wurde.
WMI zeigt an, dass diese Informationen finden Sie in der IPAddress Eigenschaft von Win32_NetworkAdapterConfiguration aber kann IPv6 oder IPv4. Dies gibt mir nicht eine "ja/Nein" Antwort, die ich bin der Hoffnung zu finden.
Andere Vorbehalte sind, die ich würde es vorziehen, nicht zu kratzen die Daten durch Zugriff auf die registry direkt, noch kratzen aus der Ausgabe eines Kommandos wie ipconfig.
Gegeben, unsere Umwelt hat einen mix von 2003/2008-Maschinen, kann jemand denken, ein Weg, um test für IPv6?
Cheers
InformationsquelleAutor Ben Short | 2010-01-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie die .NET Weg :
Wird die Eigenschaft true, wenn es möglich ist, eine IPv6-Datagramm-socket. Diese Eigenschaft ist auch geprägt durch die Globale Maschine.config-Datei so, dass die IPv6-status nicht immer korrekt sein.
Edit: um Zu testen, diese auf einem remote-Computer, können Sie immer noch mit der powershell, aber es muss powershell 2.0 installiert ist, und WinRM aktiviert.
Wenn diese beiden Bedingungen erfüllt sind, dann können Sie wahrscheinlich verwenden Sie Invoke-Command zu tun.
Diese Lösung ist allzu optimistisch-es wird sagen, wenn das OS im Allgemeinen unterstützt es, aber NICHT, wenn es tatsächlich aktiviert auf jedem adapter. Finden Sie die Lösung unten, um zu bestimmen, die letzteren.
InformationsquelleAutor Jerome Laban
Test für IPv6 in der Regel komplizierter als eine ja/Nein-Antwort mit XP, die Sie haben,
Presumaly (1) gefunden werden kann mit einem Powershell-Skript zeigt als Microsoft:
http://gallery.technet.microsoft.com/ScriptCenter/en-us/c4eb1596-7ac9-4be7-a711-b43446a3e3df
InformationsquelleAutor Steve-o
Tatsächlich, ein Kollege kam mit einem schönen Weg, es zu tun - ein wenig klobig aber funktioniert. 🙂
InformationsquelleAutor Ben Short
Wenn Sie möchten, um speziell zu überprüfen, dass IPv6 aktiviert ist und funktioniert, würde ich sagen, der beste Weg wäre, zu versuchen und eine Verbindung zu einem test-host. Daß Weise, Sie nicht nur testen, einige spezifische software-Einstellung, aber Sie finden auch heraus, so dass alle routing-Konfiguration und alles, was um ihn herum so funktioniert wie es sollte.
InformationsquelleAutor Dolda2000
Dies ist, was Sie nicht wollen, zu tun, aber es scheint die beste Methode, über die Ausgabe, die netsh interface bietet.
Möchten Sie vielleicht suchen Sie hier nach, was Sie nach. Ihre Umsetzung wäre einfacher, aber der Iteration über die
netsh interface ipv6 show interfaces
Ergebnisse ist aller, den Sie benötigen, wenn Sie finden Schnittstellen, es irgendwo aktiviert, wenn Sie nicht finden, das ist es nicht.InformationsquelleAutor Nick Craver
Habe ich nicht getestet, aber die .NET Socket-Klasse hat eine OSSupportsIPv6 Eigenschaft. So etwas entlang der Linien
In der Dokumentation sagt: "true", wenn das Betriebssystem und Netzwerk-Adaptern, unterstützen das IPv6-Protokoll; andernfalls false." Es ist nicht klar für mich, wenn das bedeutet, dass der Wert basiert auf, was das OS in der Lage ist, oder was es konfiguriert ist.
Ich sah dies auf meinem lokalen helfen, damit ich nicht über ein MSDN-link praktisch. Sollte nicht allzu schwer zu finden.
InformationsquelleAutor Kleinux
Ich weiß, dies ist ein Alter thread, aber ich brauchte, um zu überprüfen, die gleiche Sache.
Überprüfen der ipv6-Bindung für einen bestimmten adapter verwenden:
Dadurch erhalten Sie den Status von "aktiviert" für diesen adapter.
Wenn Sie wollen einfach abrufen, der Zustand, die Sie verwenden können:
Hoffe, das hilft. Ich habe überprüfen, dass dies funktioniert so weit zurück wie 2012. docs.microsoft.com nicht Liste der Versionen unterhalb von default für 2012/Win8
InformationsquelleAutor ComputingDon