From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <4alt@mail.ru> Date: Mon, 10 Jul 2006 12:55:25 +0300 From: Dank Bagryantsev <4alt@mail.ru> X-Priority: 3 (Normal) Message-ID: <6310373020.20060710125525@lugaport.net> To: ALT Linux sysadmin discuss In-Reply-To: <44B21A20.2060205@altlinux.ru> References: <44B21A20.2060205@altlinux.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8bit Subject: Re: [Sysadmins] =?koi8-r?b?0NLP2tLB3s7ZyiDQ0s/L08kgySDOxdPLz8zYy88g?= =?koi8-r?b?zM/LwczYztnIINDPxNPF1M/L?= X-BeenThere: sysadmins@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: Dank Bagryantsev <4alt@mail.ru>, ALT Linux sysadmin discuss List-Id: ALT Linux sysadmin discuss List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 09:55:46 -0000 Archived-At: List-Archive: Здравствуйте, Anton. Вы писали понедельник 10 июля 2006 г., 12:13:04: AG> Появилось желание поднять прозрачный прокси..Точнее он уже есть на AG> тестовом сервере и даже работает.. Но встала 1 задача - добиться чтоб на AG> несколько локальных подсеток трафик ходил мимо прокси. AG> На сколько я понимаю в правиле для iptables нельзя несколько -d указать. AG> Что здесь можно придумать? AG> # iptables -t NAT -A PREROUTING -d ! адрес_самого_сервера \ AG> -i внутренний_сетевой_интерфейс -p tcp -m tcp --dport 80 \ AG> -j REDIRECT --to-ports 3128 2 варианта: 1. Через ACCEPT: $IPTABLES -t nat -A PREROUTING -p tcp -i внутренний_сетевой_интерфейс -d 192.168.1.0/24 --dport 80 -j ACCEPT $IPTABLES -t nat -A PREROUTING -p tcp -i внутренний_сетевой_интерфейс -d 192.168.2.0/24 --dport 80 -j ACCEPT $IPTABLES -t nat -A PREROUTING -p tcp -i внутренний_сетевой_интерфейс -d адрес_самого_сервера --dport 80 -j ACCEPT $IPTABLES -t nat -A PREROUTING -p tcp -i внутренний_сетевой_интерфейс --dport 80 -j REDIRECT --to-ports 3128 2. Через mark: $IPTABLES -t mangle -A PREROUTING -i внутренний_сетевой_интерфейс -d 192.168.1.0/24 -j MARK --set-mark 100 $IPTABLES -t mangle -A PREROUTING -i внутренний_сетевой_интерфейс -d 192.168.2.0/24 -j MARK --set-mark 100 $IPTABLES -t mangle -A PREROUTING -i внутренний_сетевой_интерфейс -d адрес_самого_сервера -j MARK --set-mark 100 $IPTABLES -t nat -A PREROUTING -m mark --mark ! 100 -p tcp --dport 80 -j REDIRECT --to-ports 3128 или $IPTABLES -t nat -A PREROUTING -m mark --mark 100 -p tcp --dport 80 -j ACCEPT $IPTABLES -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128 естественно, еще: IPTABLES="/sbin/iptables" $IPTABLES -t nat -A OUTPUT -p tcp --dport 80 -j ACCEPT -- С уважением, Dank