GRE保持与Linux和RouterOS

我有一个Linux主机和几个routerboadrs。 我创build了一个GRE隧道,但Linux不回答存活包。 然后路由器gre连接标记为不可达 ,所以我不能从路由器子网发送到Linux主机。 如果linux发送的东西进入隧道(ping等) – RouterOS标记连接为可重复的。 第二个和下一个软件包路由很好,直到闲置一分钟(没有stream量)。

在linux中的隧道是这样做的:

remote=xxxx dev=gre21 network=10.21.0.0/16 ip tunnel add ${dev} mode gre remote ${remote} ttl 255 ip addr add 172.16.1.1/24 peer 172.16.1.21 dev ${dev} ip link set ${dev} up ip route add ${network} dev ${dev} 

ip l

 14: gre21: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1476 qdisc noqueue state UNKNOWN link/gre 0.0.0.0 peer 109.60.170.15 

如何设置状态“运行”?

如何保持活力隧道? Ping在cron中?

这不完全是对GRE隧道keepalive的直接回答,但是您可能会发现将MikroTik EoIP选项用于Linux服务器更容易,因为这已经被移植并允许隧道ID和Keepalive以类似的方式(也可以处理任何碎片大小链接)。

https://code.google.com/p/linux-eoip/

crontab -e

* / 1 * * * * ping -c 69

它的作品对我来说很简单,一直坚持着活着。