URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 78406
[ Назад ]

Исходное сообщение
"Linux netfilter: пакеты пропадают между mangle и nat"

Отправлено Incubus , 24-Янв-08 17:48 
Машина с linux 2.6.18, две сетевухи, одна в локальную сеть, другая в интернет.
На машине nat для локальных клиентов.
На ней же поднимается ipsec (esp tunnel) через racoon для соединения с другим офисом (с другой стороны cisco).
Проблема: пинги (и все прочие пакеты) прекрасно проходят "наружу" --- до другой сети.
Ответы на них приходят, увеличивая счётчик пакетов, вышедших из ipsec-туннеля, пападают в netfilter, успешно проходят цепочку PREROUTING в таблцах raw и mangle, а в таблицу nat и далее так никогда и не попадают, погибая где-то перед ней.

Вопрос к знатоками netfilter и iptables: где они там могут пропадать?

Симптомы:


Chain PREROUTING (policy ACCEPT 10221 packets, 4941K bytes)
pkts bytes target     prot opt in     out     source               destination        
    5   300 ACCEPT     0    --  *      *       192.168.1.44         192.168.48.13      
    6   360 ACCEPT     0    --  *      *       192.168.48.13        192.168.1.44        
...
Chain PREROUTING (policy ACCEPT 800 packets, 60295 bytes)
pkts bytes target     prot opt in     out     source               destination        
    6   360 ACCEPT     0    --  *      *       192.168.48.13        192.168.1.44        
    0     0 ACCEPT     0    --  *      *       192.168.1.44         192.168.48.13      
...


Содержание

Сообщения в этом обсуждении
"Linux netfilter: пакеты пропадают между mangle и nat"
Отправлено angra , 25-Янв-08 23:06 
А почему они должны туда попадать? Если мы натим из локалки в мир, то через nat проходит только первый пакет соединения, все остальные(в том числе и ответ) туда уже не попадают.

"Linux netfilter: пакеты пропадают между mangle и nat"
Отправлено PavelR , 28-Янв-08 13:51 
>А почему они должны туда попадать? Если мы натим из локалки в
>мир, то через nat проходит только первый пакет соединения, все остальные(в
>том числе и ответ) туда уже не попадают.

Ответ гениален.


"Linux netfilter: пакеты пропадают между mangle и nat"
Отправлено nesh , 25-Янв-08 23:34 
>[оверквотинг удален]
>pkts bytes target     prot opt in   out     source   destination
>    5   300 ACCEPT    0    --  *    *       192.168.1.44  192.168.48.13
>    6   360 ACCEPT    0    --  *    *       192.168.48.13 192.168.1.44
>...
>Chain PREROUTING (policy ACCEPT 800 packets, 60295 bytes)
> pkts bytes target     prot opt in  out     source   destination
>    6   360 ACCEPT    0    --  *  *       192.168.48.13   192.168.1.44
>    0     0 ACCEPT    0    --  *  *       192.168.1.44    192.168.48.13
>...

если это таблица НАТ, то там политика ACCEPT, непонятно назначение правил, что Вы хотите получить?
если нужно разрешить движение через роутер то эти правила вносятся в цепочку FORWARD таблицы filter и там будут считатся все пройденные пакеты в обоих направлениях

также проверьте
cat /proc/sys/net/ipv4/ip_forward

должно быть значение 1


"Linux netfilter: пакеты пропадают между mangle и nat"
Отправлено Incubus , 28-Янв-08 11:46 
>[оверквотинг удален]
>>    6   360 ACCEPT    0    --  *    *       192.168.48.13 192.168.1.44
>>...
>>Chain PREROUTING (policy ACCEPT 800 packets, 60295 bytes)
>> pkts bytes target     prot opt in  out     source   destination
>>    6   360 ACCEPT    0    --  *  *       192.168.48.13   192.168.1.44
>>    0     0 ACCEPT    0    --  *  *       192.168.1.44    192.168.48.13
>>...
>
>если это таблица НАТ, то там политика ACCEPT, непонятно назначение правил, что
>Вы хотите получить?

Эти правила добавлены с целью локализовать место исчезновения пакетов.
До FORWARD они, конечно же, не доходят.

> [ликбез удалён]