LINUX.ORG.RU
ФорумAdmin

проблема с правилом iptables


0

0

Всем привет!

Есть небольшая сеть и в ней на основе Debian Sarge есть сервак, на котором есть 2 интерфейса eth0 и eth1 (192.168.0.11) Поставил в свое время squid - все работает более чем нормально.. но вот возникла нужда, чтобы этот комп был шлюзом для всех, и, собственно не врубаюсь, в чем моя глупость:

iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j SNAT --to-source 87.87.87.87

junk:/# cat /proc/sys/net/ipv4/ip_forward 1

... и все равно не пускает


попробуй:
добавить в цепочку FORWARD -s 192.168.0.0/24 -j ACCEPT
FORWARD -d 192.168.0.0/24 -j ACCEPT

anonymous
()
Ответ на: комментарий от nettoy

Попробуй вот это:
iptables -t nat -A POSTROUTING -o eth0 -m owner --uid-owner squid -j SNAT --to-source 87.87.87.87

SlavikSS ★★
()
Ответ на: комментарий от nettoy

добавил

iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT iptables -A FORWARD -d 192.168.0.0/24 -j ACCEPT

все равно не пускает... кроме squid'a...

может быть с сетевухами проблема!?

nettoy
() автор топика

Не понятно. У тебя сквид в режиме прозрачного прокси? Тогда надо ещё и пакета ему перебрасывать. Если нет, тогда не понятно, зачем NAT? Ну и вдобавок оговорил бы реакцию squid, а то формулировка типа "не работает" как-то расплывчата.

Anoxemian ★★★★★
()
Ответ на: комментарий от nettoy

Посмотри с помощью tcpdump куда бегают пакеты(или не бегают).

SlavikSS ★★
()
Ответ на: комментарий от Anoxemian

дело все в том, что реакция squid юзер открывает браузер, вводит логин пароль и если хост существует, то он на него заходит =)

т.е. какбы какая именно реакция-то должна быть... а прозрачным его сейчас сделать не реально, т.к. какого-то хрена не транслируются адреса через внешний интерфейс!

nettoy
() автор топика
Ответ на: комментарий от sdio

у юзерове есстественно прописан gateway как надо, т.е. 192.168.0.11 =))

junk:/home/nettoy# iptables -L -t nat -v Chain PREROUTING (policy ACCEPT 2 packets, 311 bytes) pkts bytes target prot opt in out source destination

Chain POSTROUTING (policy ACCEPT 2 packets, 373 bytes) pkts bytes target prot opt in out source destination 0 0 SNAT all -- any eth0 anywhere anywhere to:87.87.87.87

Chain OUTPUT (policy ACCEPT 2 packets, 373 bytes) pkts bytes target prot opt in out source destination

nettoy
() автор топика
Ответ на: комментарий от nettoy

а вы знаете, я вот сейчас взял просто полностью сервак ребутнул и вот с этим последним правилом все заработало!

но тогда остается вопрос - ЧТО ЭТО БЫЛО??? куда вообще можно посмотреть, что это могло быть?

спасибо всем, кто принимал участие в обсуждении!

nettoy
() автор топика
Ответ на: комментарий от nettoy

Возможно какой-то процесс не работал или модуль небыл подгружен(?iptables,...), ... Как сказал Anoxemian, для кеширующего сквида нат не нужен, он для транзитного трафика.

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