The problem in my case occurs when routers is deployed in nat mode
The network architecture is as follows

huawei-usg-fw enables keepalive;so routeros only replay keepalive packet
keepalive packet from huawei-usg-fw

routeos send gre keepalive replay packet
but source address is wan ip;so the gw will drop this packet ;must local address

#pcap file
no.70 huawei-usg-fw send keepalive packet
no.71 routeos remove the gre header ;will send‘s packet
no.72 routeos send gre keepalive replay packet(use ether2’s mac(in routeos config use source route to ether2 out),but this packet src address use the wan ip;so gw will drop this packet)
gretunnel-0809.zip (28.6 KB)