Я использую CentOS 6.5 на своем рабочем столе. Я установил Network Proxy
используя приложение сетевого прокси, предоставленное в Preferences
. Я также установил следующие исключения: localhost, 127.0.0.0 / 8,172.16.0.0 / 12,192.168.0.0. / 16
Но всякий раз, когда я использую wget (я тестирую настройки прокси с помощью wget), wget пытается подключиться к прокси для частных адресов, но wget localhost
работает нормально и не использует прокси.
Я также удалил все настройки прокси и установил прокси в оболочке:
export http_proxy="<proxy_url>:<port>"
export https_proxy="<proxy_url>:<port>"
export no_proxy="localhost,127.0.0.0/8,172.16.0.0/12,192.168.0.0./16"
Это работает, когда я использую команду wget <external_url>
или wget localhost
но не работает, когда я использую команду wget <private address from the $no_proxy variable>
.
Я также попытался установить переменные в Ubuntu 14.04 и столкнулся с той же проблемой.
Изменить: я обнаружил, что оболочка игнорирует нотацию CIDR. Если мне нужно просмотреть 127.0.0.1 без прокси, мне нужно ввести 127.0.0.1 в no_proxy
переменная вместо 127.0.0.0/8
У вас есть дополнительная точка на одном из диапазонов:
export no_proxy="localhost,127.0.0.0/8,172.16.0.0/12,192.168.0.0/16"
РЕДАКТИРОВАТЬ:
После поиска кажется, что no_proxy не будет работать с сетями, только с доменами .sample.com
или точный IP 192.168.1.2
, поэтому либо вы добавляете свой локальный домен, весь IP-адрес вашей сети, либо используете такие флаги, как wget --no-proxy
Если нам нужно исключить 192.168.1.0/24 из настройки прокси, мы можем установить переменную среды no_proxy, как показано ниже:
export no_proxy=localhost,.localdomain
export no_proxy=${no_proxy},$(echo 192.168.1.{1..255} | sed 's/ /,/g')