Ubuntu – How to make Ubuntu honor “ignore-hosts” proxy settings for IPv6

ipv6networkingPROXY

I just typed under "dconf-editor", System → Proxy → ignore-hosts, the following content:

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

But, Google Chrome (and apt-get update / upgrade) is just ignoring this settings.

EDITED: Also, Firefox doesn't honor the ingore-hosts settings, even configuring it to "Use system proxy settings".

For example, my Proxy Server (Ubuntu with Squid3) is in dual-stacked mode BUT, I do NOT want to access IPv6 web sites through the Proxy, that's why I'm trying to ignore the entire IPv6 Internet with the entry 2000::/3, but, it does not work as expected.

EDITED: Also, I don't need the proxy to access Hyperboria sites, which resides under fc00::/8 but, it doesn't work either…

Why I'm doing this?

Because my environment is already a IPv6-Only Network and, to access the old internet infrastructure (IPv4-Only), I need to go through the dual-stacked proxy. But I need the proxy only when a web site doesn't have IPv6…

How can I know that it doesn't work?!

It is simple, just access a web site that shows a IPv6 address on it, for example, http://www.sixxs.net or http://ipv6.whatismyv6.com, then, I'm still seeing the IPv6 address of the Proxy Server, so, "ignore-hosts entry '2000::/3'" doesn't seem to be working.

EDITED: Plus, when I'm trying to access a Hyperboria website, Squid returns an error that it can not reach fc00::/8 network

(Squid ERROR: (101) Network is unreachable)

(of course it can't, the cjdns router is running right on my Ubuntu Desktop, so, no need to go through proxy when browsing Hyperboria fc00::/8 but, Ubuntu isn't honoring ignore-hosts under proxy settings.

Best Answer

It looks like this won't work with Gnome proxy settings. The ignore-hosts setting works for hostnames, addresses and address ranges, but apparently does not resolve hostnames before checking against addresses.

From the ignore-hosts documentation (emphasis by me):

Also note that hostname exclusions apply only to connections made to hosts identified by name, and IP address exclusions apply only to connections made to hosts identified by address. That is, if example.com has an address of 192.168.1.1, and the :ignore-hosts list contains only "192.168.1.1", then a connection to "example.com" (eg, via a GNetworkAddress) will use the proxy, and a connection to "192.168.1.1" (eg, via a GInetSocketAddress) will not.