2013-03-07 8 views
6

In Windows (Vista und höher) gibt es einen Weg, oder ein Werkzeug, das bestimmen kann, ob eine bestehende, bereits bestehende, ausgehende TCP-Verbindung mit dem SO_KEEPALIVE erstellt wurde Möglichkeit.Ermitteln, ob bestehende Verbindungen TCP KeepAlive unter Windows verwenden

Auf Unix-Plattformen kann dies normalerweise mit netstat angezeigt werden (dh. Netstat -o zeigt eine separate Spalte für KEEPALIVE).

Netstat unter Windows verfügt nicht über diese Funktion. Noch andere Microsoft/SysInternals Netzwerk-Tools, die ich getestet habe.

Ich bin nicht in der Lage, ein Werkzeug zu finden, das diese Informationen bereitstellen kann.

Szenario ist: Für Anwendungen, die auf einem Windows 2008 R2-Server ausgeführt werden, muss TCP-Keepalive für alle eingerichteten Verbindungen aktiviert sein. Einige Anwendungen haben nicht die Option, TCP-Keepalive zu aktivieren, und ich muss feststellen, ob sie für diese Anwendungen standardmäßig aktiviert ist.

Um es klar zu sagen: Ich brauche ein Tool oder Vorschläge zur Programmierung eines Tools, das zeigt, ob bestehende Winsock-Verbindungen TCP Keepalive aktiviert haben oder nicht. Zwar gibt es andere Möglichkeiten, dies zu ermitteln (z. B. den Datenverkehr zu überwachen und zu überprüfen, ob Keep-Alive-Pakete gesendet werden), aber sie sind alle mit Unsicherheiten behaftet. Außerdem sprechen wir von vielen Servern und vielen Anwendungen.

Antwort

0

Verwenden Sie WireShark, um die TCP Keepalive-Pakete anzuzeigen. Wenn Sie den Loopback überprüfen müssen, wie ich https://github.com/nmap/npcap

verwendet habe
Verwandte Themen