Linux Advanced Routing & Traffic Control HOWTO
Шрифт:
Свичи выполняют такое перенаправление без особых проблем.
НО
Стоимость этого оборудования очень высока и может быть сопоставима с ценой связки "обычный роутер" + "Linux-сервер"
Вы можете отправить ВЕСЬ трафик через кэш-сервер.
НО
Это довольно рисковано, поскольку squid довольно значительно нагружает CPU, что может привести к снижению производительности сети. Кроме того, squid может "рухнуть" и тогда никто из сети не сможет выйти в Интернет.
Эта методика предполагает установку меток на пакеты, с портом назначения равным числу 80, и дальнейшая маршрутизация помеченных пакетов, с помощью iproute2, на squid.
Прежде всего — весь трафик должен идти через naret, для этого на всех компьютерах пропишем его в качестве шлюза по-умолчанию. Исключение составляет silom, для которого шлюз по-умолчанию — donmuang (в противном случае web-трафик зациклится).
(на всех компьютерах в моей сети был прописан шлюз по-умолчанию – 10.0.0.1, который ранее принадлежал donmuang , поэтому я изменил IP-адрес у donmuang на 10.0.0.3, а серверу naret присвоил адрес 10.0.0.1)
Настройте прокси-сервер squid на silom. Убедитесь, что он поддерживает прозрачное проксирование. Обычно прокси-серверу, для приема запросов от пользователей, назначают порт 3128, поэтому весь трафик, отправляемый на порт 80 будет перенаправлен на порт 3128. С помощью ipchains это делают следующие правила:
iptables:
За информацией по настройке сервера squid,
обращайтесь на http://squid.nlanr.net/.Убедитесь, что на этом сервере разрешен форвардинг, и заданный по умолчанию шлюз для него — donmuang (НЕ naret !).
1. Пометить пакеты, с портом назначения 80, числовой меткой 2.
2. Настроить маршрутизацию так, чтобы помеченные пакеты отправлялись на silom.
Если donmuang и naret находятся в одной подсети, то naret не должен выдавать ICMP-сообщения о перенаправлении. Запрет можно наложить так:
На этом настройку можно считать завершенной. Проверим конфигурацию
15.5.1. Схема движения пакетов после настройки.