Gre tunnel是提供点对点通信的一种方法。
<!-- [if !mso]> <style> v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} p\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} v\:textbox {display:none;} </style> <![endif]--><!-- [if !ppt]--><!-- [endif]-->
gre tunnel :
Linux1 和 Linux2 都有一个网卡,但是该网卡上都分别配置了两个 ip :
Linux1 的 192.168.1.10 充当一个网关, 192.168.2.10 是本身的 ip 地址
Linux2 的 192.168.4.10 充当一个网关, 192.168.3.10 是本身的 ip 地址
Linux1 和 Linux2 能够通过 ip192.168.2.10 和 192.168.3.10 互相网络通信。
在 192.168.1.10 上:
去往 192.168.4.x 的使用 gre tunnel 设备,经由 grentun 封装为从 192.168.2.10/32 去往 192.168.3.10/32
在 192.168.4.10 上:
去往 192.168.1.x 的使用 gre tunnel 设备,经由 grentun 封装为从 192.168.3.10/32 去往 192.168.2.10/32
在 192.168.2.10 和 192.168.3.10 上会分别进行解封,然后路由。
配置过程,以 192.168.1.10 为例:
iptunnel add netb (虚拟设备名) mode gre remote 192.168.3.10 local 192.168.2.10 ttl 255
ip link set netb up (开启该虚拟设备)
ipaddr add 192.168.1.10/24 dev netb (添加 ip 地址或网段地址到设备)
iproute add 192.168.4.10/24 dev netb (添加路由)
即从 192.168.1.10/24 去往 192.168.4.10/24 的,要使用这个虚拟设备 netb 。该设备会封装报文,成为从 192.168.3.10 到 192.168.2.10 的。
这样将192.168.1.x的host配置成网关为192.168.1.10;将192.168.4.x的host,配置成网关为192.168.4.10即可互相ping通。