У меня Squid работает на выделенной виртуальной машине. У него ip 192.168.1.5. Сервер, на котором запущен squid, имеет только одну сетевую карту. Интернет-соединение подключено к другому (физическому) серверу с двумя сетевыми адаптерами. Внутренняя сетевая карта локальной сетевой карты - 192.168.1.1.
Теперь у меня есть клиент, которому нужно подключиться к Интернету через прокси-сервер squid, поэтому я указываю настройку прокси на 192.168.1.5. Вижу запрос в / var / log / squid. Пока все хорошо, но, к сожалению, Squid каким-то образом не может «доставить» Интернет клиенту.
Я думаю, что пропускаю последний шаг, но не могу понять, что это такое. Любая помощь приветствуется.
Ситуация:
┌──────────────────┐ ┌─────────────────────┐
│ Squid proxy │ │ │
│ 1 nic │◀─────────│ client │
│ │ │ │
└──────────────────┘ └─────────────────────┘
│
│
▼
┌──────────────────┐
│ server │
┌──────────┐ │ 192.168.1.1 │
│ INTERNET │───────▶│ does NAT │
└──────────┘ │ 2 nics │
└──────────────────┘
Хост Squid отлично может подключаться к Интернету. Сетевая конфигурация хоста выглядит следующим образом:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.5
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 192.168.1.1
Можно ли подключиться к Интернету с хоста Squid (например, w / curl или что-то в этом роде)? Похоже, маршрутизация от хоста Squid неверна. Сосредоточьтесь на использовании 'curl' от хоста squid и разрешении его способности подключаться к Интернету.
Кроме того, экспериментировали ли вы с какими-либо правилами в экземпляре NAT, чтобы предотвратить доступ в Интернет других хостов, кроме squid?