A proxy is "an interface for a service, especially for one that is remote, resource-intensive, or otherwise difficult to use directly". Source: Proxy - Wiktionary.
Some programs (like wget) use environment variables of the form "protocol_proxy" to determine the proxy for a given protocol (e.g. HTTP, FTP, ...).
Below is an example on how to set these variables in a shell:
http_proxy=http://10.203.0.1:5187/ export http_proxy
Automation with network managers
- NetworkManager can't change the environment variables.
- netcfg is flexible enough to enable per-profile environment variables setting as described in the "Proxy settings" section of the netcfg article.
libproxy (which is available in the extra repository) is an abstraction library which should be used by all applications that want to access a network resource. It still is in development but could lead to a unified and automated handling of proxies in GNU/Linux if widely adopted.
It is already required by libsoup.