Comment faire en sorte qu'Ubuntu respecte les paramètres de proxy «ignore-hosts» pour IPv6?

10

Je viens de taper sous "dconf-editor", System → Proxy → ignore-hosts, le contenu suivant:

['localhost', '127.0.0.0/8', '::1', '192.168.0.1', '2000::/3', 'fc00::/8']

Mais, Google Chrome (et apt-get update / upgrade) ignore simplement ces paramètres.

EDITÉ: De plus, Firefox n'honore pas les ingore-hostsparamètres, même en le configurant sur "Utiliser les paramètres du proxy système".

Par exemple, mon serveur proxy (Ubuntu avec Squid3) est en mode double pile MAIS, je ne veux PAS accéder aux sites Web IPv6 via le proxy, c'est pourquoi j'essaie d'ignorer l'intégralité d'Internet IPv6 avec l'entrée 2000::/3, mais, cela ne fonctionne pas comme prévu.

EDITED: De plus, je n'ai pas besoin du proxy pour accéder aux Hyperboriasites, qui réside sous fc00::/8mais, cela ne fonctionne pas non plus ...

Pourquoi je fais ça?

Parce que mon environnement est déjà un réseau IPv6 uniquement et, pour accéder à l'ancienne infrastructure Internet (IPv4 uniquement), je dois passer par le proxy à double pile. Mais j'ai besoin du proxy uniquement lorsqu'un site Web n'a pas IPv6 ...

Comment puis-je savoir que cela ne fonctionne pas?!

C'est simple, il suffit d'accéder à un site Web qui montre une adresse IPv6, par exemple, http://www.sixxs.netou http://ipv6.whatismyv6.comalors, je vois toujours l'adresse IPv6 du serveur proxy, donc, "ignore-hosts entry '2000::/3'"ne semble pas fonctionner.

EDITED: De plus, lorsque j'essaie d'accéder à un Hyperboriasite Web, Squid renvoie une erreur qu'il ne peut pas atteindrefc00::/8 network

(Squid ERROR: (101) Le réseau est inaccessible)

(bien sûr, il ne peut pas, le cjdnsrouteur fonctionne directement sur mon bureau Ubuntu, donc, pas besoin de passer par un proxy lors de la navigation Hyperboria fc00::/8mais, Ubuntu ne respecte pas ignore-hostsles paramètres de proxy.

ThiagoCMC
la source
Certaines applications n'utilisent tout simplement pas ce paramètre et envoient toutes les demandes via le proxy, le cas échéant.
Michael Hampton

Réponses:

2

Il semble que cela ne fonctionnera pas avec les paramètres du proxy Gnome. Le ignore-hostsparamètre fonctionne pour les noms d'hôtes, les adresses et les plages d'adresses, mais ne résout apparemment pas les noms d'hôtes avant de vérifier les adresses.

D'après la ignore-hostsdocumentation (souligné par moi):

Notez également que les exclusions de nom d'hôte s'appliquent uniquement aux connexions établies avec les hôtes identifiés par leur nom, et les exclusions d'adresse IP s'appliquent uniquement aux connexions établies avec les hôtes identifiés par l'adresse . Autrement dit, si example.com a une adresse de 192.168.1.1 et que la liste: ignore-hosts ne contient que "192.168.1.1", alors une connexion à "example.com" (par exemple, via une adresse GNetworkAddress) utilisera le proxy , et une connexion à "192.168.1.1" (par exemple, via un GInetSocketAddress) ne le sera pas.

Dubu
la source
1

Pour Google Chrome et Chromium, vous pouvez créer un fichier de stratégie à l'échelle de la machine.

Guide de démarrage rapide de l'administrateur Linux Chrome

Voici divers paramètres et descriptions de proxy du modèle de stratégie :

// Proxy bypass rules
  //-------------------------------------------------------------------------
  // Google Chrome will bypass any proxy for the list of hosts given here.  This
  // policy only takes effect if you have selected manual proxy settings at
  // 'Choose how to specify proxy server settings'.  You should leave this
  // policy not set if you have selected any other mode for setting proxy
  // policies.  For more detailed examples, visit:
  // http://www.chromium.org/developers/design-documents/network-settings#TOC-
  // Command-line-options-for-proxy-sett

  //"ProxyBypassList": "http://www.example1.com,http://www.example2.com,http://internalsite/",

  // Choose how to specify proxy server settings
  //-------------------------------------------------------------------------
  // Allows you to specify the proxy server used by Google Chrome and prevents
  // users from changing proxy settings.  If you choose to never use a proxy
  // server and always connect directly, all other options are ignored.  If you
  // choose to use system proxy settings or auto detect the proxy server, all
  // other options are ignored.  If you choose fixed server proxy mode, you can
  // specify further options in 'Address or URL of proxy server' and 'Comma-
  // separated list of proxy bypass rules'.  If you choose to use a .pac proxy
  // script, you must specify the URL to the script in 'URL to a proxy .pac
  // file'.  For detailed examples, visit: http://www.chromium.org/developers
  // /design-documents/network-settings#TOC-Command-line-options-for-proxy-sett
  // If you enable this setting, Google Chrome ignores all proxy-related options
  // specified from the command line.  Leaving this policy not set will allow
  // the users to choose the proxy settings on their own.

  //"ProxyMode": "direct",

  // URL to a proxy .pac file
  //-------------------------------------------------------------------------
  // You can specify a URL to a proxy .pac file here.  This policy only takes
  // effect if you have selected manual proxy settings at 'Choose how to specify
  // proxy server settings'.  You should leave this policy not set if you have
  // selected any other mode for setting proxy policies.  For detailed examples,
  // visit: http://www.chromium.org/developers/design-documents/network-settings
  // #TOC-Command-line-options-for-proxy-sett

  //"ProxyPacUrl": "http://internal.site/example.pac",

  // Address or URL of proxy server
  //-------------------------------------------------------------------------
  // You can specify the URL of the proxy server here.  This policy only takes
  // effect if you have selected manual proxy settings at 'Choose how to specify
  // proxy server settings'.  You should leave this policy not set if you have
  // selected any other mode for setting proxy policies.  For more options and
  // detailed examples, visit: http://www.chromium.org/developers/design-
  // documents/network-settings#TOC-Command-line-options-for-proxy-sett

  //"ProxyServer": "123.123.123.123:8080",

  // Enable or disable PIN-less authentication
  //-------------------------------------------------------------------------
  // If this setting is enabled or not configured, then users can opt to pair
  // clients and hosts at connection time, eliminating the need to enter a PIN
  // every time.  If this setting is disabled, then this feature will not be
  // available.
Jon Skanes
la source
Voici également la documentation de la ligne de commande Chromium: Paramètres du proxy de la ligne de commande Chromium
Jon Skanes
1

Je ne sais pas comment faire Ubuntu obéir à ce paramètre, mais il pourrait y avoir des solutions:

  • APT suit les paramètres de /etc/apt/apt.confou les variables d'environnement (telles que http_proxy). Les pages de manuel de apt.confne mentionnent pas les paramètres dconf, donc je pense qu'apt ne les vérifie pas. Pour spécifier les sites pour lesquels apt doit ignorer le proxy, ajoutez à /etc/apt/apt.conf:

    Acquire::http::Proxy::<hostname/ip> DEFAULT;
    

    Je pense que cela ne peut pas être fait pour les plages ou les sous-réseaux, et vous aurez besoin d'une entrée pour chaque hôte à exclure.

  • Chrome honore la variable d'environnement no_proxy, donc on pourrait essayer de l'utiliser:

    no_proxy=localhost,127.0.0.0/8,::1,192.168.0.1,2000::/3,fc00::/8 google-chrome
    

    Définir no_proxydans /etc/environmentpour assurer partout sa disponibilité. D'autres programmes sont également connus pour honorer cette variable.

  • Enfin, vous pourriez envisager d'exécuter deux serveurs Squid. Le nouveau utilisera votre actuel comme parent, mais uniquement pour certains hôtes, en utilisant les paramètres allow_direct/ never_direct. Réglez ensuite le nouveau comme serveur proxy partout ( /etc/apt/apt.conf, /etc/environment, les dconfentrées). Je ne connais pas grand-chose au réseau à double pile, donc je ne sais pas si cela fonctionnerait, mais cela vaut la peine d'être mentionné.

Je n'utilise pas la mise en réseau à double pile, mais comme je suis derrière un proxy de campus, je dois jongler avec les paramètres de proxy et je trouve que la dernière option est la meilleure. Laissez le calmar jongler.

muru
la source