Ich verwende derzeit eine Windows-Box, auf der Chrome 27 auf dem Entwicklungskanal ausgeführt wird, und ich glaube, dass eine ungewöhnlich große Anzahl von Abhörverbindungen mit dem Prozess verbunden ist.
Der folgende Befehl gibt 268 Überwachungsports zurück:
netstat -aon|find /i /c "11692"
( wobei in diesem Fall 11692 der Hauptchromprozess ist )
So sehen einige der Ports von netstat aus:
UDP 0.0.0.0:62483 : 11692
UDP 0.0.0.0:62486 : 11692
UDP 0.0.0.0:62487 : 11692
UDP 0.0.0.0:62488 : 11692
UDP 0.0.0.0:62489 : 11692
UDP 0.0.0.0:62492 : 11692
UDP 0.0.0.0:62493 : 11692
UDP 0.0.0.0:62494 : 11692
UDP 0.0.0.0:62495 : 11692
UDP 0.0.0.0:62496 : 11692
UDP 0.0.0.0:62498 : 11692
UDP 0.0.0.0:62499 : 11692
UDP 0.0.0.0:62500 : 11692
UDP 0.0.0.0:62501 : 11692
UDP 0.0.0.0:62502 : 11692
UDP 0.0.0.0:62503 : 11692
UDP 0.0.0.0:62504 : 11692
UDP 0.0.0.0:62505 : 11692
UDP 0.0.0.0:62506 : 11692
UDP 0.0.0.0:62509 : 11692
UDP 0.0.0.0:62510 : 11692
UDP 0.0.0.0:62511 : 11692
UDP 0.0.0.0:62512 : 11692
UDP 0.0.0.0:62513 : 11692
UDP 0.0.0.0:62541 : 11692
UDP 0.0.0.0:62542 : 11692
UDP 0.0.0.0:62543 : 11692
UDP 0.0.0.0:62544 : 11692
UDP 0.0.0.0:62545 : 11692
UDP 0.0.0.0:62547 : 11692
UDP 0.0.0.0:62786 : 11692
UDP 0.0.0.0:62787 : 11692
UDP 0.0.0.0:62789 : 11692
UDP 0.0.0.0:62790 : 11692
UDP 0.0.0.0:62791 : 11692
UDP 0.0.0.0:62792 : 11692
UDP 0.0.0.0:62793 : 11692
UDP 0.0.0.0:62794 : 11692
UDP 0.0.0.0:62796 : 11692
UDP 0.0.0.0:62797 : 11692
UDP 0.0.0.0:62798 : 11692
UDP 0.0.0.0:62799 : 11692
UDP 0.0.0.0:62800 : 11692
UDP 0.0.0.0:62801 : 11692
UDP 0.0.0.0:62802 : 11692
UDP 0.0.0.0:62803 : 11692
UDP 0.0.0.0:62805 : 11692
UDP 0.0.0.0:62806 : 11692
UDP 0.0.0.0:62807 : 11692
UDP 0.0.0.0:62808 : 11692
UDP 0.0.0.0:62809 : 11692
UDP 0.0.0.0:62810 : 11692
UDP 0.0.0.0:62812 : 11692
UDP 0.0.0.0:62813 : 11692
UDP 0.0.0.0:62814 : 11692
UDP 0.0.0.0:62815 : 11692
UDP 0.0.0.0:62817 : 11692
UDP 0.0.0.0:62818 : 11692
UDP 0.0.0.0:62820 : 11692
UDP 0.0.0.0:62821 : 11692
UDP 0.0.0.0:62822 : 11692
UDP 0.0.0.0:62823 : 11692
UDP 0.0.0.0:62824 : 11692
UDP 0.0.0.0:62825 : 11692
UDP 0.0.0.0:62826 : 11692
UDP 0.0.0.0:62827 : 11692
UDP 0.0.0.0:62828 : 11692
UDP 0.0.0.0:62829 : 11692
UDP 0.0.0.0:62830 : 11692
UDP 0.0.0.0:64681 : 11692
UDP 0.0.0.0:64682 : 11692
UDP 0.0.0.0:64683 : 11692
UDP 0.0.0.0:65017 : 11692
Vielleicht fehlt mir beim Lesen von netstat etwas, aber das scheint ungewöhnlich hoch zu sein.
Dies ist eine Wiederholungsausgabe. Das einzige, was benötigt wird, um die enorme Anzahl an abhörenden Ports hervorzurufen, ist das Starten von Chrome. Wenn ich Chrome schließe, wird nach dem Schließen des Browsers immer noch mindestens ein Prozess ausgeführt und scheint auf unbestimmte Zeit ausgeführt zu werden ( dies ist nicht der Prozess, der mit der großen Anzahl offener Ports verbunden ist - oder zumindest nicht von selbst - als der Ports verschwinden, wenn ich den Browser schließe .
Weiß jemand:
- Ist das normal?
- Wenn es nicht normal ist, was könnte es erklären?
- Wie könnte ich mehr Informationen darüber erhalten, was tatsächlich vor sich geht?
Ich habe Wireshark installiert, aber es scheint mein Verständnis immer zu verwirren, und ich hatte noch keine Lust, es zu versuchen. Außerdem zeigt das Windows-Ereignisprotokoll nichts an.
Beachten Sie, dass dies kein Duplikat der Frage ist. Warum muss Google so viele Ports öffnen? Da diese Ports überhaupt keinen Websites zugeordnet sind und mit diesen in keinem Zusammenhang zu stehen scheinen.
Danke im Voraus.
Antworten:
Asynchrones DNS in Chrome finden Sie unter The Chromium Projects
Lange Rede, kurzer Sinn: Chrome verwendet standardmäßig native Windows-synchrone DNS-Auflösungen. Dies bedeutet, dass es nacheinander auf jede Auflösung warten muss, unabhängig davon, wie viele Registerkarten gleichzeitig geladen werden. Dies führt je nach der Reihenfolge, in der sie neu aufgelöst werden, zu einer spürbaren Verzögerung beim Laden Gastgeber. Eine vorgeschlagene Lösung bestand darin, diese Komponente asynchron zu machen, damit Chrome die native DNS-Komponente von Windows umgehen, eine eigene hinzufügen und bei Bedarf einige weitere UDP-Ports öffnen konnte.
Dieses Verhalten, in der obersten Frage, ist darauf zurückzuführen, dass sich die Komponente in der Entwicklungsphase befindet und daher so erscheint, dass sie viele Verbindungen hat, uneingeschränkt ist und Ressourcen verschwendet. Dies geschah nur, wenn der Benutzer manuell ein Flag in Chrome geändert hat, um diese Funktion zu aktivieren, die normalerweise Entwicklern oder Mitwirkenden vorbehalten ist. Unter "Veraltete Antwort" finden Sie eine Erläuterung zum Zugriff auf ältere Chrome-Versionen.
Für die neueren Versionen von Chrome kann ich für Version 43 sagen, dass dieses Verhalten behoben wurde und jetzt weniger UDP-Ports verwendet werden, abhängig von der Anzahl der unbekannten Hosts, die aufgelöst werden müssen. Andernfalls werden zwischengespeicherte Auflösungen verwendet und weniger geöffnete Ports.
Soweit ich das beurteilen kann, haben aktuelle Versionen von Chrome kein Flag zum Aktivieren, es existiert und kann über einen Schalter auf chrome.exe aktiviert werden. Standardmäßig ist es deaktiviert .
Bearbeiten Sie die Verknüpfungen von Chrome und fügen Sie --enable-async-dns nach dem Ziel chrome.exe hinzu . Trennen Sie sie durch ein Leerzeichen. Klicken Sie in Windows 7 für eine angeheftete Verknüpfung mit der rechten Maustaste auf die Stecknadel, und klicken Sie im Kachelmenü mit der rechten Maustaste auf die Verknüpfung von Google Chrome Bearbeiten Sie über der Option Dieses Programm entfernen ... und greifen Sie auf seine Eigenschaften zu, und bearbeiten Sie dort das Ziel.
Um herauszufinden, ob asynchrones DNS aktiviert ist, greifen Sie auf chrome: // net-internals / # dns zu. Es sollte eine Liste mit dem Namen Internal DNS client enabled: true oder false vorhanden sein
Veraltete Antwort (Option existiert in älteren Versionen, ungefähr 27):
Geben Sie dies in die Adressleiste von Google Chrome ein:
Scrollen Sie in der Liste nach unten und stellen Sie sicher, dass " Integriertes asynchrones DNS " deaktiviert ist.
quelle