Зачем это надо?
В случае использования "обычного" прокси, клиент в программном обеспечении просмотра веб-страниц (обозревателе) должен указывать прокси-сервер и порт. Обозреватель выполняет запрос на прокси-сервер, который перенаправляет его к веб-серверу. Это все конечно хорошо, но иногда случаются ситуации, типа
-
Всем клиентам сети приходится настраиваться на прокси-сервер, хотят они этого или нет.
-
Вы хотите, чтобы клиенты использовали прокси-сервер, но не хотите, чтобы они об этом знали.
-
Вы хотите, чтобы клиенты использовали прокси-сервер, но не хотите настраивать сотни или тысячи веб-браузеров.
На помощь вам приходит "прозрачный" прокси-сервер. Веб-запрос перехватывается прокси-сервером абсолютно прозрачно. Т.е. клиентское программное обеспечение думает, что работает с настоящим веб-сервером, хотя, на самом деле, работает с прокси-сервером.
Маршрутизаторы Cisco поддерживают прозрачный прокси. Но, (к вашему большому удивлению) Linux тоже может быть маршрутизатором и поддерживать прозрачный прокси, перенаправляя TCP-соединения на локальные порты. Кроме того, наш прокси-сервер может знать все последствия этого перенаправления, и не делать его. Таким образом у нас есть два пути:
Первый. Если ваш прокси-сервер не может быть прозрачным, вы можете использовать маленький сервер transproxy, который все сделает за вас. transproxy написал John Saunders, и он доступен на ftp://ftp.nlc.net.au/pub/linux/www/ или на вашем местном зеркале metalab. Далее в этом тексте мы не будем обращаться к transproxy.
Более "чистый" путь - взять веб-прокси-сервер, который сам поддерживает прозрачность. Один из них, на который мы хотим обратить внимание - это squid. Squid - это кэширующий прокси-сервер с открытыми исходными текстами (Open Source) для систем Unix. Его можно найти на www.squid-cache.org