* [Sysadmins] iptables, -j MARK и iproute2
@ 2006-07-30 16:57 Olvin
2006-08-16 9:29 ` Vadim Gusev
2006-08-16 9:42 ` Vadim Gusev
0 siblings, 2 replies; 4+ messages in thread
From: Olvin @ 2006-07-30 16:57 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
ALM2.4
Выход в инет был через обычный модем по dialup. Теперь появляется ADSL,
но хочется, чтобы тот, кто платит, ходил через ADSL, а кто не платит,
так и остался на dialup. Пользователей различаю по UID. ADSL-соединение
_постоянно_ (прерывать недопустимо), а модемное - эпизодическое.
Как сделать?
Я пробовал
iptables -t mangle -A OUTPUT \
-m owner --uid-owner 500 \
-j MARK --set-mark 1
ip route add all via 5.6.7.9 dev eth1 table 100
ip rule add fwmark 1 table 100
ip route flush cache
но всё равно пакеты от пользователя с uid=500 идут через ppp0. Поскольку
замена fwmark 1 на fwmark 0 всё-таки даёт перенаправление на eth1, то
заключаю, что дело в первой команде - она не помечает пакет, как её просят.
В документе
file:/usr/share/doc/alt-docs/master/ch06s05.html#distrib.setup.network.firewall
Есть схема, из которой видно, что решение о маршрутизации принимается
ещё до того, как отработает моё правило. Т.е. первая команда бесполезна.
Что делать? Надо различать именно по UID локального пользователя.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Sysadmins] iptables, -j MARK и iproute2
2006-07-30 16:57 [Sysadmins] iptables, -j MARK и iproute2 Olvin
@ 2006-08-16 9:29 ` Vadim Gusev
2006-08-16 9:42 ` Vadim Gusev
1 sibling, 0 replies; 4+ messages in thread
From: Vadim Gusev @ 2006-08-16 9:29 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
> Я пробовал
> iptables -t mangle -A OUTPUT \
> -m owner --uid-owner 500 \
> -j MARK --set-mark 1
> ip route add all via 5.6.7.9 dev eth1 table 100
> ip rule add fwmark 1 table 100
> ip route flush cache
> В документе
> file:/usr/share/doc/alt-docs/master/ch06s05.html#distrib.setup.network.fire
>wall Есть схема, из которой видно, что решение о маршрутизации принимается
> ещё до того, как отработает моё правило. Т.е. первая команда бесполезна.
>
> Что делать? Надо различать именно по UID локального пользователя.
Я маркировал в выходной цепочке, не -t mangle, а основной (filter), все
пучком.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Sysadmins] iptables, -j MARK и iproute2
2006-07-30 16:57 [Sysadmins] iptables, -j MARK и iproute2 Olvin
2006-08-16 9:29 ` Vadim Gusev
@ 2006-08-16 9:42 ` Vadim Gusev
2006-08-16 19:08 ` Olvin
1 sibling, 1 reply; 4+ messages in thread
From: Vadim Gusev @ 2006-08-16 9:42 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
Извиняюсь, чушь написал, потому что давно это делал.
Ваш пример описан вот тут http://www.opennet.ru/docs/RUS/LARTC/c322.html
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Sysadmins] iptables, -j MARK и iproute2
2006-08-16 9:42 ` Vadim Gusev
@ 2006-08-16 19:08 ` Olvin
0 siblings, 0 replies; 4+ messages in thread
From: Olvin @ 2006-08-16 19:08 UTC (permalink / raw)
To: ALT Linux sysadmin discuss
Vadim Gusev wrote:
> Извиняюсь, чушь написал, потому что давно это делал.
> Ваш пример описан вот тут http://www.opennet.ru/docs/RUS/LARTC/c322.html
:)
Повторяю ещё раз: мне не нужно по IP-адресам (это получается без
проблем). Мне нужно с критерием owner, т.е. по uid на самом сервере,
который по совместительству ещё и рабочая станция. Т.е. IP-адрес
получается один и единственный способ различать, по какому каналу
пускать, это uid.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2006-08-16 19:08 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-07-30 16:57 [Sysadmins] iptables, -j MARK и iproute2 Olvin
2006-08-16 9:29 ` Vadim Gusev
2006-08-16 9:42 ` Vadim Gusev
2006-08-16 19:08 ` Olvin
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