CIDR-Umgehung in curl scheitert, während --noproxy '*' funktioniert
Erklären Sie Unterschiede in der Umgehungsfunktion mit der tatsächlichen Client- und verknüpften Bibliotheksversion, statt ein ganzes Betriebssystem-Release zu beschuldigen.
Eine Anfrage an eine wörtliche private IP verwendet den Proxy mit einer Subnetz-Ausnahme, geht aber mit --noproxy '*' direkt. Das beweist nicht, dass das Betriebssystem jede Proxy-Ausnahme ignoriert.
Der Client hat eine verstandene Umgehungsform gezeigt. Die nächste Frage ist, ob er die von Ihnen angegebene Bereichsform umsetzt.
curl hat die CIDR-Übereinstimmung für diese Ausnahmen in 7.86.0 ergänzt. Ein Rechner mit einem neuer wirkenden Betriebssystem-Release kann dennoch einen Client oder eine verknüpfte Bibliothek aus einer anderen Versionslinie haben. Prüfen Sie die tatsächlich aufgerufene ausführbare Datei und deren verknüpfte libcurl, nicht nur den Betriebssystemnamen im Titel des Problems.
Eine Anwendung, die libcurl nutzt, kann sich auch vom eigenständigen curl-Befehl unterscheiden. Distribution-Patches können eine Rolle spielen, daher ist die Funktionsdokumentation des installierten Pakets heranzuziehen, wenn die Basisversion allein nicht aussagekräftig ist.
Halten Sie die Anfrageeingabe exakt. Ein Hostname, der in das Subnetz auflöst, ist ein anderer Fall als eine URL mit der wörtlichen Adresse. Ein unterstützter CIDR-Parser führt nicht automatisch eine DNS-Abfrage aus, um jeden Namen in eine adressbasierte Umgehungsentscheidung zu verwandeln.
Sammeln Sie Client-Identität, genaue URL, Ausnahmewert und kontrolliertes Ergebnis, bevor Sie Pakete ersetzen oder eine riesige Liste einzelner Adressen erzeugen. Eine globale Umgehung für alle Hosts ist ein nützlicher Beleg für den Vergleich; sie ist aber nicht automatisch die beabsichtigte dauerhafte Routing-Richtlinie.