Проблема в неправильной работе ipsec тунеля.
Имеем BoxA(10.1.1.1)----GW1(10.1.1.253/172.16.1.253)=========GW2(172.16.1.254/10.1.2.254)------Box2(10.1.2.1)
шлюзы gw1 и gw2 должын тунелировать траффик проходящий через них (радиоканал). Ядро 2.6.11 с ipsec-tools 0.5 .
-----------------------------
Файл ipsec.conf на GW1:
#!/usr/sbin/setkey -f
flush;
spdflush;
add 172.16.1.253 172.16.1.254 esp 0x200 -m tunnel -E 3des-cbc "secretkey";
add 172.16.1.254 172.16.1.253 esp 0x300 -m tunnel -E 3des-cbc "secondkey";
spdadd 10.1.1.0/24 10.1.2.0/24 icmp
-P out ipsec esp/tunnel/172.16.1.253-172.16.1.254/require;
spdadd 10.1.2.0/24 10.1.1.0/24 icmp
-P in ipsec esp/tunnel/172.16.1.254-172.16.1.253/require;
-------------------------------
Файл ipsec.conf на GW2:
#!/usr/sbin/setkey -f
flush;
spdflush;
add 172.16.1.253 172.16.1.254 esp 0x200 -m tunnel -E 3des-cbc "secretkey";
add 172.16.1.254 172.16.1.253 esp 0x300 -m tunnel -E 3des-cbc "secondkey";
spdadd 10.1.2.0/24 10.1.1.0/24 icmp
-P out ipsec esp/tunnel/172.16.1.254-172.16.1.253/require;
spdadd 10.1.1.0/24 10.1.2.0/24 icmp
-P in ipsec esp/tunnel/172.16.1.253-172.16.1.254/require;
И тут начинаются танцы с бубном:
Запускаю пинг с 10.1.1.1 на 10.1.2.1 и смотрю в iptraf
echo req идет как esp обратный esp тоже приходит
echo reply идет открытым текстом (тобишь всего 3 пакета: 1 esp в одну сторону, один esp в обратную и echo reply воткрытую)
Если запустить пинг наоборот с 10.1.2.1 на 10.1.1.1 таже песня
1 пакет esp в одну сторону, один в другую и echo-req в открытую
Тоесть с 10.1.1.1 на 10.1.2.1 в одну сторону валят незакриптованые пакеты в чем ошибка ? Помогите , уже 2 день бьюсь и никак не пойму где косяк.