LINUX.ORG.RU
решено ФорумAdmin

Чем заменить iprange в iptables?

 ,


0

1

Имеется локальный сервер(10.0.0.1) с установленным privoxy и wifi роутер(10.0.0.2) подключенный к провайдеру. Мне нужно чтобы весь www трафик от клиентов(10.0.0.3-10.0.0.255) перенаправлялся на локалхост, там чистился, а оттуда уже через роутер в веб. Состряпал такое правило для роутера:

iptables -t nat -I PREROUTING -i eth0.1 -p tcp --dport 80 -m iprange --src-range 10.0.0.3-10.0.0.255 -j DNAT --to-destination 10.0.0.1
А для моей прошивки openwrt(неофициальная сборка) отсутствует модуль kmod-ipt-iprange как на зло.
Какими правилами можно обойтись что бы 10.0.0.1 и 10.0.0.2 ходили напрямую, а с диапазона 10.0.0.3-10.0.0.255 трафик перенаправлялся?

Ответ на: комментарий от vodz

Я потому и спрашиваю что не знаю как их составить, я это правило день составлял) Допустим я наклепаю 252 правила для каждого из возможных адресов клиентов(iprange то у меня не работает), а первые два адреса как напрямую пустить? остальные 2 и так будут напрямую идти.

Можно ли не имея iprange составить 1-2 правила вместо клепания 252?

lucky_guy ★★★
() автор топика
Последнее исправление: lucky_guy (всего исправлений: 1)
iptables -t nat -I PREROUTING -i eth0.1 -p tcp --dport 80 -s 10.0.0.1 -j ACCEPT
iptables -t nat -I PREROUTING -i eth0.1 -p tcp --dport 80 -s 10.0.0.2 -j ACCEPT
iptables -t nat -I PREROUTING -i eth0.1 -p tcp --dport 80 -s 10.0.0.0/24 -j DNAT --to-destination 10.0.0.1
whoami
()

отсутствует модуль kmod-ipt-iprange как на зло.

А ip_set.ko есть ? Можно и с ним сделать.

AS ★★★★★
()

Нашел. Чтобы перенаправить трафик с роутера на внешний прозрачный прокси нужно как минимум 2 правила:

-A PREROUTING ! -s 10.0.0.1/32 -p tcp --dport 80 -j DNAT --to-destination 10.0.0.1
-A POSTROUTING -d 10.0.0.1/32 -p tcp --dport 80 -j SNAT --to-source 10.0.0.2
Первое правило собственно перенаправляет весь www трафик сети на прокси 10.0.0.1(кроме трафика от самого прокси "!" -s), подменяя в исходящих от клиентов запросах адрес назначения (действие -DNAT).
Второе правило меняет адрес источника запросов на адрес роутера, иначе возвращаться запросы будут к клиентам, а т.к. они к прокси серверу не обращались то ответы от него будут игнорировать.

Поправьте меня если ошибаюсь.

lucky_guy ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.