|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Eugene Grosbein 2:5006/1 23 May 2007 12:55:06 To : Victor Sudakov Subject : Re: порядок обработки IP пакета ядром --------------------------------------------------------------------------------
23 май 2007, среда, в 07:57 KRAST, Victor Sudakov написал(а):
VS> Где почитать, в каком порядке применяются к пакету ipfw, ipsec, ipf и
VS> прочее?
Afaik в сорцах. Про ipf/ipfw уже обсуждалось, управлять этим можно
через порядок подгрузки модулей. IPSEC для входящих пакетов отрабатывает
до ipfw в том смысле, что расшифрованные пакеты внутри туннельных
интерфейсов можно фильтровать. Исходящий пакет, разумеется, проходит
сначала по ipfw, потом он шифруется и новый шифрованный пакет снова
проходит по ipfw. Тут есть бага в ядре: если шифрованный пакет
пройдет через divert-сокет (даже не будучи изменён), он снова будет
засунут в IPSEC перед выходом и инкапсулирован по второму разу.
Последствия плачевные. Поэтому стоит делать что-то типа следующего
(чтобы не допустить попадания ESP в divert):
ipfw add skipto XXX esp from any to any out
Еще лучше было бы обойти эту багу средствами самого IPSEC:
spdadd 1.1.1.1/32 2.2.2.2/32 esp -P out none;
spdadd 1.1.1.1/32 2.2.2.2/32 any -P out ipsec ...;
То есть, сказать модулю не пытаться обрабатывать уже обработанные пакеты.
Ядро замечательно отрабатывает такую конструкцию, но к сожалению
парсер в setkey первую строчку не прожевывает, это бага в нем,
лечится тривиальным патчем из PR 107392, о котором gnn забыл
уже скоро полгода как.
Eugene
--
For the Colonel's Lady an' Judy O'Grady
Are sisters under their skins!
--- slrn/0.9.8.0 (FreeBSD)
* Origin: Svyaz Service JSC (2:5006/1@fidonet)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/26093f96a8a00.html, оценка из 5, голосов 10
|