В общем, появилась необходимость подключить проблемное место одно к общей сети. Связь есть только через йоту.
Вся сеть построена на сабже, поэтому хотелось однообразно подключить и этот объект. Нарыл проект OpenNHRP, который как раз и реализует недостающую часть стека протоколов DMVPN (IPSEC + NHRP + mGRE), плюс Racoon.
Всё вроде как завелось, хотя ракун IPSEC фазу 2 с цыской устанавливает как-то тяжело, не с первого раза, и периодическ ругается «ERROR: invalid flag 0x08».
Ну это ладно, я просто в скрипте долблю его до победного конца, с 2-3 попытки встает. Дальше вступает в дело OpenNHRP, регистрируется на цыске, всё хорошо. Траффик начинает ходить по туннелю:
Apr 5 15:10:03 kadashi opennhrp[1641]: Interface lo: new or configured up, mtu=16436
Apr 5 15:10:03 kadashi opennhrp[1641]: Interface eth0: new or configured up, mtu=1500
Apr 5 15:10:03 kadashi opennhrp[1641]: Interface eth1: new or configured up, mtu=1500
Apr 5 15:10:03 kadashi opennhrp[1641]: Interface gre0: new or configured up, mtu=1476
Apr 5 15:10:03 kadashi opennhrp[1641]: Interface gre1: new or configured up, mtu=1472
Apr 5 15:10:03 kadashi opennhrp[1641]: Interface gre1: GRE configuration changed. Purged 1 peers.
Apr 5 15:10:03 kadashi opennhrp[1641]: Adding local 10.254.254.18/32 dev gre1
Apr 5 15:10:03 kadashi opennhrp[1641]: Adding local 10.254.254.255/32 alias 10.254.254.18 dev gre1
Apr 5 15:10:03 kadashi opennhrp[1641]: Filter code installed (19 opcodes)
Apr 5 15:10:10 kadashi racoon: WARNING: attribute has been modified.
Apr 5 15:10:11 kadashi opennhrp[1641]: [10.254.254.1] Peer up script: success
Apr 5 15:10:11 kadashi opennhrp[1641]: NL-ARP(gre1) 10.254.254.1 is-at x.x.x.x
Apr 5 15:10:11 kadashi opennhrp[1641]: Sending Registration Request to 10.254.254.1 (my mtu=0)
Apr 5 15:10:11 kadashi opennhrp[1641]: Sending packet 3, from: 10.254.254.18 (nbma 10.0.0.10), to: 10.254.254.1 (nbma x.x.x.x)
Apr 5 15:10:11 kadashi opennhrp[1641]: Received Registration Reply from 10.254.254.1: success
Apr 5 15:10:11 kadashi opennhrp[1641]: NAT detected: our real NBMA address is 94.25.147.132
Apr 5 15:10:11 kadashi opennhrp[1641]: Sending Purge Request (of local routes) to 10.254.254.1
Но через какое-то небольшое время всё умирает. Спасает убийство туннеля и установка заново. Сначала грешил на связь, но потери пакетов нет, пинги 100-200 и OpenVPN по этому же каналу работает на ура, так что приходится пока сидеть на нём.
Есть у кого опыт борьбы с этой штукой? :)
ЗЫ: Пробовал и без НАТа между хостами, разницы никакой.