[Sysadmins] iptables и цель ROUTE
Olvin
=?iso-8859-1?q?olvin_=CE=C1_rambler=2Eru?=
Сб Авг 9 01:15:19 MSD 2008
Pavel пишет:
>> $ ping ya.ru
>> connect: Network is unreachable
> Имя, как я понял, разрешить не удается?
В том то и дело, что удаётся. Иначе не было бы сообщения "Network
unreachable".
> Изменяются ли при выполнении ping'а счетчики в выводе:
> iptables -t mangle -L OUTPUT -nv
для ping'а - нет, остаются прежними. А вот если что-то качнуть по
ftp/http - увеличиваются. Пробовал добавить iptables -t mangle -A OUTPUT
-p icmp -j MARK --set-mark 0
Для этого правила счётчик увеличивается, но если в это же правило
добавить "-m owner --uid-owner user1", то для этого правила счётчик
остаётся нулевым. Только если вместо user1 написать root, то счётчик
начинает считать, при чём без разницы, от какого пользователя запущен
ping...
Кто-нибудь может пояснить мне этот момент? Ведь я-то вижу, что
uid=euid=user1 для процесса ping...
>> # ip route show table main
>> 169.254.0.0/16 dev homelan scope link
>> 192.168.0.0/16 via 10.12.7.1 dev homelan
>> 172.16.0.0/12 via 10.12.7.1 dev homelan
>> 10.0.0.0/8 via 10.12.7.1 dev homelan
>> 224.0.0.0/4 dev homelan scope link
> Сперва пропиши маршруты в homelan (и, возможно, еще к своему
> DNS-серверу, если он у тебя не в ней) в таблицах 101 и 102.
Зачем? Всё, что идёт на intranet адреса - идёт по таблице main
независимо от пользователя. Это видно из приведённых правил.
> Если не ошибаюсь, нужно добавить еще правило:
> iptables -t nat -A POSTROUTING -m mark --mark 0/0 -j MASQUERADE
> (выполняет маскарадинг _всех_ меченных пакетов). Во всяком случае у меня
> только с маскарадингом и заработало.
Возможно. Хотя при изменении выходного интерфейса адрес должен
подставляться автоматом во время принятия второго решения о маршрутизации.
Подробная информация о списке рассылки Sysadmins