# root @ routerB in / [17:00:36] $ ip r # 查看路由表 20.1.1.0/24 dev eth0 proto kernel scope link src 20.1.1.2 30.1.1.0/24 dev eth1 proto kernel scope link src 30.1.1.1
#routerA and routerC lsmod|grep ip_gre || modprobe ip_gre #ping -c1 ${remoteip} || { echo "make sure the network is ok plz"; exit 1; } ip addr show ${grename} && { echo"${grename} is already exist"; exit 1; }
ip tunnel add ${grename} mode gre remote ${remoteip}local${localip} ikey 1 okey 1 ttl 255; ip addr add ${greip} dev ${grename} peer ${grepeerip}; ip link set${grename} multicast on up; #mtu 1400; # 注意一定要multicast on ip addr show ${grename};
查看gre隧道接口
1 2 3 4 5 6 7 8
# root @ routerA in / [16:53:20] $ ip addr show gre1 7: gre1@NONE: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1472 qdisc noqueue state UNKNOWN group default qlen 1 link/gre 20.1.1.1 peer 30.1.1.2 inet 10.10.10.1 peer 10.10.10.2/32 scope global gre1 valid_lft forever preferred_lft forever inet6 fe80::200:5efe:1401:101/64 scope link valid_lft forever preferred_lft forever
1 2 3 4 5 6 7 8
# root @ routerC in / [16:54:38] $ ip addr show gre1 16: gre1@NONE: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1472 qdisc noqueue state UNKNOWN group default qlen 1 link/gre 30.1.1.2 peer 20.1.1.1 inet 10.10.10.2 peer 10.10.10.1/32 scope global gre1 valid_lft forever preferred_lft forever inet6 fe80::200:5efe:1e01:102/64 scope link valid_lft forever preferred_lft forever
# root @ routerA in / [17:05:10] $ ip r default via 20.1.1.2 dev eth1 10.1.1.0/24 dev eth0 proto kernel scope link src 10.1.1.1 10.2.1.0/24 via 10.10.10.2 dev gre1 proto zebra metric 20 # 这条由zebra生成的就是 10.10.10.2 dev gre1 proto kernel scope link src 10.10.10.1 20.1.1.0/24 dev eth1 proto kernel scope link src 20.1.1.1
1 2 3 4 5 6 7 8
# root @ routerC in / [17:06:24] $ ip r default via 30.1.1.1 dev eth1 10.1.1.0/24 via 10.10.10.1 dev gre1 proto zebra metric 20 # 这条由zebra生成的就是 10.2.1.0/24 dev eth0 proto kernel scope link src 10.2.1.1 10.10.10.1 dev gre1 proto kernel scope link src 10.10.10.2 30.1.1.0/24 dev eth1 proto kernel scope link src 30.1.1.2 192.168.255.0/24 dev eth3 proto kernel scope link src 192.168.255.1
1 2 3 4
# root @ routerB in / [17:00:38] $ ip r # routerB确实没有获取到gre相关路由 20.1.1.0/24 dev eth0 proto kernel scope link src 20.1.1.2 30.1.1.0/24 dev eth1 proto kernel scope link src 30.1.1.1
# By default, all non-loopback multicast capable interfaces are enabled. # If you want to use loopback, set the interface multicast flag on it. -#phyint eth0 disable +phyint eth3 disable# 关闭不想要进行组播的端口
# IGMP default query interval and querier timeout. The latter should # per RFC always be (robustness * interval) + (query-response / 2), for @@ -132,7 +134,7 @@ #group-prefix 224.0.0.0 masklen 4