IPIP interface seems to have a keepalive feature with some special packets and disable the interface if the remote doesn’t respond …
But if I terminate an IPIP tunnel with a linux host, it doesn’t know how to handle those and so the mikrotik disables the interface …
I’d like to completely disable this feature and always have the tunnel be “running” no matter what the mikrotik thinks the remote state is.
Just don’t specify the keep alive parameter when creating it, it appears to be disabled by default when you go to create that interface. If it already created, go to it in WinBox and click on the arrow that will remove that part of the config.
It’s not disabled by default … it’s set to 10 x 10s by default.
export shows “!keepalive” but that apparently just takes the hardcoded default and doesn’t disable it.
If you do an export verbose you see the actual default.
/interface ipip
add !keepalive local-address=10.10.10.5 name=ipip-tunnel1 remote-address=10.10.10.6
/interface ipip print
Flags: X - disabled, R - running, D - dynamic
# NAME MTU ACTUAL-MTU LOCAL-ADDRESS REMOTE-ADDRESS KEEPALIVE DSCP
0 R ipip-tunnel1 auto 1480 10.10.10.5 10.10.10.6 inherit
Works for me on my test router running 6.34.4. As long as the local-address is tied to an actual IP address that exists on the router. If it’s not tied to an actual IP it doesn’t do anything.
If I specify the !keepalive when creating the IPIP tunnel, then the keep alive is indeed not present when I do a print.
But if I don’t specify anything when creating it, then an export will show “!keepalive” but will in fact have the default 10,10s enabled !
That’s actually a pretty worrying bug because it proves that what you see when you do “export” might not be what’s actually running ! (and yeah the bug survives a reboot)
I don’t think that is a bug. When you do a compact export (which is the default) you get the commands and parameters
required to setup the router as it is now. When a parameter is at its default value, the export will not show that parameter.
So when the default for keepalive is 10/10, and you have not changed that, the export will show nothing about keepalive.
When you have turned it off, the export will show !keepalive. All fine and dandy.
Note how the “!keepalive” was added there. I didn’t type it when creating the interface and the export show it. And when doing a print, it will show that keep alive is at its default 10,10s value.
Now if I delete that interface and add it again with the !keepalive , the export will show exactly the same as previously but then the keep alive will be disabled.
Report issues/bugs to support@mikrotik.com. Include a couple of Supout.rif when sending in the report. One with the issue where it puts in the keep alive automatically and one where you specify. You can also include a link to this thread for them to reference.