Здравствуйте.
Возможно, какая-то типичная проблема.
Гейтвей. 2 внешних интерфейса: eth1, eth2. Настроен IPSec (tunnel), бегающий через вторичный интерфейс eth2, т.е. имеются записи
default via <provider1_gw_ip> dev eth1
default via <provider2_gw_ip> dev eth2 metric 1
Пингую из своей подсети удалённую. Вижу, что IPSec работает и расшифрованный icmp echo reply появляется на eth2, но в локалку (eth0) он (reply) не попадает.
Если eth2 сделать дефолтным (уронить eth1), то всё ок.
Ещё стоит упомянуть, что та сторона IPSec находится в разных подсетях с eth2. Т.е. присутствует
<ipsec_peer_ip> via <provider2_gw_ip> dev eth2
Файрволл приводить не буду. Думаю, он тут ни причём. NAT для ipsec-подсетей выключен.