* [Sysadmins] перенаправление маркированых пакетов
@ 2008-04-07 6:21 Serge
2008-04-09 4:50 ` Gosha
0 siblings, 1 reply; 5+ messages in thread
From: Serge @ 2008-04-07 6:21 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
Здравствуйте!
использую Server 4.0 + branch
c помощью iproute2 + маркированием пакетов, перенаправляю нужные пакеты на
другой интерфейс роутера, смотрящего в инет.
Проблемма:
/etc/net/ifaces/default/fw/iptables/mangle
cat PREROUTING
-i eth1 tcp from 192.168.1.2 to ! $LOCALNET dports
20,21,22,25,110,113,119,143,3389 -j MARK
-i eth1 udp from 192.168.1.2 to ! $LOCALNET dports
20,21,22,25,110,113,119,143,3389 -j MARK
cat MARK
if from 192.168.1.2/255.255.255.0 to 172.26.15.0/24 mark 5 (эти пакеты я хочу
пересылать через интерфейс, являющийся default gw)
if from 192.168.1.2/255.255.255.0 to ! 192.168.1.0/24 mark 2 (хочу переслать
пакеты не через default gw)
return
как сделать что бы после выполнения 1 го правила в MARK дальше проверка не
производилась. Так как в зависимости от того в какой последовательности
записаны правила по разному перенаправляются пакеты
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Sysadmins] перенаправление маркированых пакетов
2008-04-07 6:21 [Sysadmins] перенаправление маркированых пакетов Serge
@ 2008-04-09 4:50 ` Gosha
2008-04-09 7:25 ` Serge
0 siblings, 1 reply; 5+ messages in thread
From: Gosha @ 2008-04-09 4:50 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
Serge пишет:
> cat MARK
> if from 192.168.1.2/255.255.255.0 to 172.26.15.0/24 mark 5 (эти пакеты я хочу
> пересылать через интерфейс, являющийся default gw)
>
> if from 192.168.1.2/255.255.255.0 to ! 192.168.1.0/24 mark 2 (хочу переслать
> пакеты не через default gw)
> return
>
> как сделать что бы после выполнения 1 го правила в MARK дальше проверка не
> производилась. Так как в зависимости от того в какой последовательности
> записаны правила по разному перенаправляются пакеты
А зачем Вы маркируете пакеты, которые пойдут через default gw?
Они и без маркировки пойдут куда следует. :-)
Маркируйте только те, которые пойдут другим путем и только для
них и делайте отдельную табличку маршрутизации c помощью iproute2.
--
Gosha
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Sysadmins] перенаправление маркированых пакетов
2008-04-09 4:50 ` Gosha
@ 2008-04-09 7:25 ` Serge
2008-04-09 17:01 ` Gosha
0 siblings, 1 reply; 5+ messages in thread
From: Serge @ 2008-04-09 7:25 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
В сообщении от Wednesday 09 April 2008 07:50:56 am Gosha написал(а):
> Serge пишет:
> > cat MARK
> > if from 192.168.1.2/255.255.255.0 to 172.26.15.0/24 mark 5 (эти пакеты я
> > хочу пересылать через интерфейс, являющийся default gw)
> >
> > if from 192.168.1.2/255.255.255.0 to ! 192.168.1.0/24 mark 2 (хочу
> > переслать пакеты не через default gw)
> > return
> >
> > как сделать что бы после выполнения 1 го правила в MARK дальше проверка
> > не производилась. Так как в зависимости от того в какой
> > последовательности записаны правила по разному перенаправляются пакеты
>
> А зачем Вы маркируете пакеты, которые пойдут через default gw?
> Они и без маркировки пойдут куда следует. :-)
> Маркируйте только те, которые пойдут другим путем и только для
> них и делайте отдельную табличку маршрутизации c помощью iproute2.
разве правило
if from 192.168.1.2/255.255.255.0 to ! 192.168.1.0/24 mark 2 (хочу
переслать пакеты не через default gw)
не будет абсолютно ВСЕ пакеты заворачивать на другой интерфейс, не являющийся
default GW?
Можно ли как то дописать в правиле еще и return. Что бы дальше не проверялись
правила, если уже произошло совпадение?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Sysadmins] перенаправление маркированых пакетов
2008-04-09 7:25 ` Serge
@ 2008-04-09 17:01 ` Gosha
2008-04-10 4:52 ` Serge
0 siblings, 1 reply; 5+ messages in thread
From: Gosha @ 2008-04-09 17:01 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
Hi!
Serge пишет:
> В сообщении от Wednesday 09 April 2008 07:50:56 am Gosha написал(а):
>> Serge пишет:
>>> cat MARK
>>> if from 192.168.1.2/255.255.255.0 to 172.26.15.0/24 mark 5 (эти пакеты я
>>> хочу пересылать через интерфейс, являющийся default gw)
>>>
>>> if from 192.168.1.2/255.255.255.0 to ! 192.168.1.0/24 mark 2 (хочу
>>> переслать пакеты не через default gw)
>>> return
>>>
>>> как сделать что бы после выполнения 1 го правила в MARK дальше проверка
>>> не производилась. Так как в зависимости от того в какой
>>> последовательности записаны правила по разному перенаправляются пакеты
>> А зачем Вы маркируете пакеты, которые пойдут через default gw?
>> Они и без маркировки пойдут куда следует. :-)
>> Маркируйте только те, которые пойдут другим путем и только для
>> них и делайте отдельную табличку маршрутизации c помощью iproute2.
> разве правило
> if from 192.168.1.2/255.255.255.0 to ! 192.168.1.0/24 mark 2 (хочу
> переслать пакеты не через default gw)
> не будет абсолютно ВСЕ пакеты заворачивать на другой интерфейс, не являющийся
> default GW?
>
> Можно ли как то дописать в правиле еще и return. Что бы дальше не проверялись
> правила, если уже произошло совпадение?
Кстати, у Вас прописано: 192.168.1.2/255.255.255.0 - это ошибка,
адрес хоста с маской сети класса С.
Предположим, что Вы имели в виду просто адрес хоста 192.168.1.2.
Насколько я понял, Вы хотите, чтобы пакеты в сеть 172.26.15.0/24
и в локальную сеть 192.168.1.0/24 шли бы дефолтным маршрутом, а во все
остальные сети - не дефолтным маршрутом.
IMHO вот это обеспечит Ваши нужды:
iptables -t mangle -A PREROUTING -s 192.168.1.2 -d 192.168.1.0/24 \
-j RETURN
iptables -t mangle -A PREROUTING -s 192.168.1.2 -d ! 172.26.15.0/24 \
-j MARK --set-mark 2
--
Gosha
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Sysadmins] перенаправление маркированых пакетов
2008-04-09 17:01 ` Gosha
@ 2008-04-10 4:52 ` Serge
0 siblings, 0 replies; 5+ messages in thread
From: Serge @ 2008-04-10 4:52 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
> Кстати, у Вас прописано: 192.168.1.2/255.255.255.0 - это ошибка,
> адрес хоста с маской сети класса С.
> Предположим, что Вы имели в виду просто адрес хоста 192.168.1.2.
>
> Насколько я понял, Вы хотите, чтобы пакеты в сеть 172.26.15.0/24
> и в локальную сеть 192.168.1.0/24 шли бы дефолтным маршрутом, а во все
> остальные сети - не дефолтным маршрутом.
> IMHO вот это обеспечит Ваши нужды:
>
> iptables -t mangle -A PREROUTING -s 192.168.1.2 -d 192.168.1.0/24 \
> -j RETURN
>
> iptables -t mangle -A PREROUTING -s 192.168.1.2 -d ! 172.26.15.0/24 \
> -j MARK --set-mark 2
Спасибо Gosha!
правда, cделал таким образом:
cat MARK
if from 192.168.1.2 to 172.26.15.0/24 mark 5
if from 192.168.1.2 to 172.26.15.0/24 return
if from 192.168.1.2 to ! 192.168.1.0/24 mark 2
if from 192.168.1.2 to ! 192.168.1.0/24 return
return
последний return лишний, но оставил на всяк случай
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2008-04-10 4:52 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-04-07 6:21 [Sysadmins] перенаправление маркированых пакетов Serge
2008-04-09 4:50 ` Gosha
2008-04-09 7:25 ` Serge
2008-04-09 17:01 ` Gosha
2008-04-10 4:52 ` Serge
ALT Linux sysadmins discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \
sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com
public-inbox-index sysadmins
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sysadmins
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git