Чтение онлайн

на главную - закладки

Жанры

Linux Advanced Routing & Traffic Control HOWTO

Larroy Pedro

Шрифт:

Этот раздел написал Рэм Нарул (Ram Narula), из "Internet for Education" (Таиланд).

Прозрачное проксирование — это обычное перенаправление серверу squid трафика, отправляемого на порт 80 (web).

Существует 3 общеизвестных способа такого перенаправления:

Шлюз.

Вы можете настроить шлюз таким образом, что он будет перенапрвлять все пакеты, адресованные на порт 80, сереверу squid

НО

Это увеличит нагрузку на шлюз. Кроме того, некоторые коммерческие роутеры не поддерживают такую возможность.

Layer 4 switch

Свичи

выполняют такое перенаправление без особых проблем.

НО

Стоимость этого оборудования очень высока и может быть сопоставима с ценой связки "обычный роутер" + "Linux-сервер"

Использовать кэш-сервер в качестве шлюза.

Вы можете отправить ВЕСЬ трафик через кэш-сервер.

НО

Это довольно рисковано, поскольку squid довольно значительно нагружает CPU, что может привести к снижению производительности сети. Кроме того, squid может "рухнуть" и тогда никто из сети не сможет выйти в Интернет.

Мы предлагаем 4-й вариант:
Linux+NetFilter.

Эта методика предполагает установку меток на пакеты, с портом назначения равным числу 80, и дальнейшая маршрутизация помеченных пакетов, с помощью iproute2, на squid.

|----------------|

| Реализация |

|----------------|

Используемые адреса

10.0.0.1 naret (NetFilter)

10.0.0.2 silom (Squid)

10.0.0.3 donmuang (Router, соединенный с Интернет)

10.0.0.4 kaosarn (некий сервер в сети)

10.0.0.5 RAS

10.0.0.0/24 main network

10.0.0.0/19 total network

|---------------|

|Структура сети |

|---------------|

Internet

|

donmuang

|

– -----------hub/switch----------

| | | |

naret silom kaosarn RAS etc.

Прежде всего — весь трафик должен идти через naret, для этого на всех компьютерах пропишем его в качестве шлюза по-умолчанию. Исключение составляет silom, для которого шлюз по-умолчанию — donmuang (в противном случае web-трафик зациклится).

(на всех компьютерах в моей сети был прописан шлюз по-умолчанию – 10.0.0.1, который ранее принадлежал donmuang , поэтому я изменил IP-адрес у donmuang

на 10.0.0.3, а серверу naret присвоил адрес 10.0.0.1)

Silom — настройка squid и ipchains

 Настройте прокси-сервер squid на silom. Убедитесь, что он поддерживает прозрачное проксирование. Обычно прокси-серверу, для приема запросов от пользователей, назначают порт 3128, поэтому весь трафик, отправляемый на порт 80 будет перенаправлен на порт 3128. С помощью ipchains это делают следующие правила:

silom# ipchains –N allow1

silom# ipchains –A allow1 –p TCP –s 10.0.0.0/19 –d 0/0 80 –j REDIRECT 3128

silom# ipchains –I input –j allow1

iptables:

silom# iptables –t nat –A PREROUTING –i eth0 –p tcp –dport 80 –j REDIRECT –to-port 3128

За информацией по настройке сервера squid, обращайтесь на http://squid.nlanr.net/.

Убедитесь, что на этом сервере разрешен форвардинг, и заданный по умолчанию шлюз для него — donmuang (НЕ naret !).

Naret — настройка iptables и iproute2; запрет ICMP-сообщений о перенаправлении (если необходимо)

1. Пометить пакеты, с портом назначения 80, числовой меткой 2.

naret# iptables –A PREROUTING –i eth0 –t mangle –p tcp –dport 80 \

 –j MARK –set-mark 2

2. Настроить маршрутизацию так, чтобы помеченные пакеты отправлялись на silom.

naret# echo 202 www.out >> /etc/iproute2/rt_tables

naret# ip rule add fwmark 2 table www.out

naret# ip route add default via 10.0.0.2 dev eth0 table www.out

naret# ip route flush cache

Если donmuang и naret находятся в одной подсети, то naret не должен выдавать ICMP-сообщения о перенаправлении. Запрет можно наложить так:

naret# echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects

naret# echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects

naret# echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects

На этом настройку можно считать завершенной. Проверим конфигурацию

Для naret:

naret# iptables -t mangle -L

Chain PREROUTING (policy ACCEPT)

target prot opt source destination

MARK tcp -- anywhere anywhere tcp dpt:www MARK set 0x2

Chain OUTPUT (policy ACCEPT)

Поделиться:
Популярные книги

Старшеклассник без клана. Апелляция кибер аутсайдера 3

Афанасьев Семён
3. Старшеклассник без клана. Апелляция аутсайдера
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Старшеклассник без клана. Апелляция кибер аутсайдера 3

Печать Пожирателя

Соломенный Илья
4. Пожиратель
Фантастика:
аниме
сказочная фантастика
фэнтези
попаданцы
5.00
рейтинг книги
Печать Пожирателя

Неудержимый. Книга XXIX

Боярский Андрей
29. Неудержимый
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Неудержимый. Книга XXIX

Изменяющий-Механик. Компиляция. Книги 1-18

Усманов Хайдарали
Собрание сочинений
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Изменяющий-Механик. Компиляция. Книги 1-18

Лекарь Империи 2

Карелин Сергей Витальевич
2. Лекарь Империи
Фантастика:
городское фэнтези
аниме
дорама
фэнтези
попаданцы
5.00
рейтинг книги
Лекарь Империи 2

Черный маг императора

Герда Александр
1. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Черный маг императора

Курсант: назад в СССР

Дамиров Рафаэль
1. Курсант
Фантастика:
попаданцы
альтернативная история
7.33
рейтинг книги
Курсант: назад в СССР

Идеальный мир для Лекаря

Сапфир Олег
1. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря

Путь домой

Поселягин Владимир Геннадьевич
3. Четвертое измерение
Фантастика:
попаданцы
альтернативная история
6.44
рейтинг книги
Путь домой

Император Пограничья 5

Астахов Евгений Евгеньевич
5. Император Пограничья
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Император Пограничья 5

Как я строил магическую империю 11

Зубов Константин
11. Как я строил магическую империю
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Как я строил магическую империю 11

Император Пограничья 4

Астахов Евгений Евгеньевич
4. Император Пограничья
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Император Пограничья 4

Мой муж – чудовище! Изгнанная жена дракона

Терин Рем
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Мой муж – чудовище! Изгнанная жена дракона

Страж Кодекса. Книга VII

Романов Илья Николаевич
7. КО: Страж Кодекса
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Страж Кодекса. Книга VII