From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <44CCE515.9070709@rambler.ru> Date: Sun, 30 Jul 2006 19:57:57 +0300 From: Olvin User-Agent: Mozilla Thunderbird 1.0.2 (X11/20050626) X-Accept-Language: en-us, en MIME-Version: 1.0 To: ALT Linux sysadmin discuss Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit X-Auth-User: olvin, whoson: (null) Subject: [Sysadmins] =?koi8-r?b?aXB0YWJsZXMsIC1qIE1BUksgySBpcHJvdXRlMg==?= X-BeenThere: sysadmins@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: ALT Linux sysadmin discuss List-Id: ALT Linux sysadmin discuss List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Jul 2006 16:59:28 -0000 Archived-At: List-Archive: 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 локального пользователя.