[systemd-devel] [RFC 2/6] proxy-discoveryd: Add the basics for parsing the default configuration

Lennart Poettering lennart at poettering.net
Mon Apr 13 07:23:02 PDT 2015


On Sun, 12.04.15 13:03, Marcel Holtmann (marcel at holtmann.org) wrote:

> Hi Lennart,
> 
> >>>> The config file will be in /etc/systemd/proxy/<filename>.conf
> >>>> 
> >>>> It currently only load "Proxy" parts, with the key PAC. Rest is ignored.
> >>>> The PAC keyword is a path to a .pac file (a specific js script for proxy
> >>>> configuration).
> >>>> 
> >>>> Only one PAC based proxy configuration will be loaded at a time.
> >>> 
> >>> (Just a side note: I figure in the long run we should probably track
> >>> PAC data per-interface (plus maybe one global setting), so that
> >>> clients can query this specifically for an interface, and so that we
> >>> can search PAC data over the right network. But I figure for now this
> >>> doesn't matter too much.).
> >> 
> >> why would you have a global PAC file. I think they should be all per
> >> interface and nothing else.
> > 
> > Well, maybe not a global PAC file, but probably an explicitly
> > configurable global HTTP proxy, if people want that... I mean, it is a
> > pretty common setting to have I figure, and the daemon should
> > proibably cover both PAC and straightforward proxy config...
> 
> yes that makes sense. So what we have done in PACrunner was that
> instead of a PAC file you could just give it the HTTP proxy
> address. And that would also work per interface. When then libproxy
> or someone did FindProxyForURL, the configured HTTP proxy URL was
> returned.

Yupp, definitely makes sense. networkd should have a setting
HttpProxy=  or so that proxy-discoveryd should pick up.

Oh, and there's one more thing I want: I figure for the bigger
webbrowsers which have their own JS engine, it might make sense to
export the discovered per-interface PAC files directly, so that they
can opt for making use of our WPAD logic, but can run the JS stuff on
their own. And this would then probably also mean synthesizing a PAC
file from that networkd information.

> I still wonder if it is a good idea to have a global proxy there. I
> would assume you just configure the proxy per interface in your
> network configuration file. This should be treated similar to DNS
> configuration. You want this per interface.

Well, we do have per-interface DNS as well as global DNS. We also have
per-interface NTP as well as global NTP. I am tempted to say that this
shouldn't be any different...

Lennart

-- 
Lennart Poettering, Red Hat


More information about the systemd-devel mailing list