Langsames Browsen in Internet Explorer aufgrund mehrerer IsInNet-Funktionsaufrufe

Wichtig

Die Internet Explorer 11-Desktopanwendung wird für bestimmte Versionen von Windows 10 eingestellt und ab dem 15. Juni 2022 nicht mehr unterstützt.

Sie können mit dem Internet Explorer-Modus in Microsoft Edge weiterhin auf ältere Websites zugreifen, für die Internet Explorer erforderlich ist. Anleitung.

Die Internet Explorer 11-Desktopanwendung wird schrittweise an den schnelleren, sichereren Microsoft Edge-Browser umgeleitet und letztendlich über Windows Update deaktiviert werden. Deaktivieren von IE heute.

Dieser Artikel hilft Ihnen, das Problem zu beheben, bei dem internet Explorer langsamer als erwartet durchsucht wird.

Gilt für:   Internet Explorer 9, Internet Explorer 10
Ursprüngliche KB-Nummer:   3140773

Problembeschreibung

Stellen Sie sich folgendes Szenario vor:

  • Internet Explorer ist für die Verwendung einer PAC-Datei (Proxy Auto Configuration) oder WPAD für Proxyeinstellungen konfiguriert.

  • Die PAC-Datei enthält mehrere Aufrufe der isInNet() Funktion, die etwa wie folgt aussehen:

    function FindProxyForURL(url, host)
    {
    
        if (isInNet(host, "192.168.3.0","255.255.255.0")) ||
        isInNet(host, "10.10.1.0", "255.255.255.0") ||
        isInNet(host, "72.10.0.0", "255.255.0.0")) ||
        isInNet(host, "172.16.0.0", "255.255.0.0"))
        {
    
            return PROXY <proxyname:PORT>;
    
        }
    }
    

Wenn mehrere solcher isInNet() Aufrufe in der PAC-Datei vorhanden sind, benötigt Internet Explorer länger als erwartet, um zu einer Webseite zu navigieren.

Ursache

Dieses Problem tritt auf, da Internet Explorer zusätzliche Aufrufe an das DNS-Subsystem ausführen muss, um die IP-Adresse des Hostparameters zu ermitteln. Dies muss ausgeführt werden, um die IP-Adresse des Hostparameters mit dem IP-Adressbereich zu vergleichen, der im Funktionsaufruf angegeben isInNet() ist.

Lösung

Um zu verhindern, dass diese zusätzlichen Aufrufe an das DNS-Subsystem jedes Mal erfolgen, wenn ein Host an den Funktionsaufruf übergeben isInNet() wird, führen Sie Schritte aus, um den Hostnamen in die IP-Adresse außerhalb der Aufrufe aufzulösen, isInNet() indem Sie die IP-Adresse anstelle des Hostnamens übergeben.

Ändern Sie dazu den Beispielcode im Abschnitt "Symptome" wie folgt:

function FindProxyForURL(url, host)
{
    var resolved_IP = dnsResolve(host);
    if (isInNet(resolved_IP, "192.168.3.0","255.255.255.0")) ||
    isInNet(resolved_IP, "10.10.1.0", "255.255.255.0") ||
    isInNet(resolved_IP, "72.10.0.0", "255.255.0.0")) ||
    isInNet(resolved_IP, "172.16.0.0", "255.255.0.0"))
    {
        return PROXY <proxyname:PORT>;
    }
}

References

Weitere Informationen finden Sie unter Optimieren der Leistung mit skripts für die automatische Proxykonfiguration (PAC).