Langsames Browsen im Internet Explorer aufgrund mehrerer isInNet-Funktionsaufrufe

Warnung

Die eingestellte, nicht mehr unterstützte Desktop-Anwendung Internet Explorer 11 wurde durch ein Microsoft Edge-Update in bestimmten Versionen von Windows 10 dauerhaft deaktiviert. Weitere Informationen finden Sie unter Häufig gestellte Fragen zur Einstellung der Desktop-App von Internet Explorer 11.

Dieser Artikel hilft Ihnen, das Problem zu beheben, bei dem ein Problem dazu führt, dass internet-Explorer langsamer als erwartet surfen.

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

Problembeschreibung

Stellen Sie sich folgendes Szenario vor:

  • Internet Explorer ist so konfiguriert, dass eine PAC-Datei (Proxy Auto Configuration) oder WPAD für Proxyeinstellungen verwendet wird.

  • Die PAC-Datei enthält mehrere Aufrufe der isInNet() Funktion, die 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, dauert internet Explorer länger als erwartet, um zu einer Webseite zu navigieren.

Ursache

Dieses Problem tritt auf, weil internet Explorer zusätzliche Aufrufe an das DNS-Subsystem senden müssen, um die IP-Adresse des Hostparameters zu ermitteln. Dies muss erfolgen, um die IP-Adresse des Hostparameters mit dem IP-Adressbereich zu vergleichen, der isInNet() im Funktionsaufruf angegeben wird.

Lösung

Um diese zusätzlichen Aufrufe des DNS-Subsystems bei jeder Übergabe eines Hosts an den isInNet() Funktionsaufruf zu verhindern, führen Sie Schritte aus, um den Hostnamen in die IP-Adresse außerhalb der isInNet() Aufrufe aufzulösen, 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 automatischen Proxykonfigurationsskripts (PAC).