本文共 1149 字,大约阅读时间需要 3 分钟。
GRE隧道是一种IP-over-IP的隧道,是通用路由封装协议,可以对某些网路层协议的数据报进行封装,使这些被封装的数据报能够在IPv4/IPv6 网络中传输。
Tunnel 是一个虚拟的点对点的连接,提供了一条通路使封装的数据报文能够在这个通路上传输,并且在一个Tunnel 的两端分别对数据报进行封装及解封装。 一个X协议的报文要想穿越IP网络在Tunnel中传输,必须要经过加封装与解封装两个过程。
要在Linux上创建GRE隧道,需要ip_gre内核模块,它是GRE通过IPv4隧道的驱动程序。
在两台LINUX开通路由转发,为等下的路由功能做准备。 vim /etc/sysctl.conf修改net.ipv4.ip_forward=0 修改成1sysctl -p
A机器:ip tunnel add tun1 mode gre remote 43.xx.xx.11 local 118.xx.xx.184ip link set tun1 upip addr add 2.2.2.1 peer 2.2.2.2 dev tun1 route add -net 172.16.1.0/24 dev tun1
B机器:ip tunnel add tun1 mode gre remote 118.xx.xx.184 local 43.xx.xx.11ip link set tun1 upip addr add 2.2.2.2 peer 2.2.2.1 dev tun1 route add -net 192.168.1.0/24 dev tun1
在任意一端执行下列命令ip link set tun1 downip tunnel del tun1
eg:A机器:DEVICE=gwONBOOT=yesTYPE=GREPEER_OUTER_IPADDR=2.2.2.2PEER_INNER_IPADDR=10.0.1.0/24MY_INNER_IPADDR=10.0.0.1KEY=haw-haw.orgBOOTPROTO=none
eg:B机器:DEVICE=gwONBOOT=yesTYPE=GREPEER_OUTER_IPADDR=1.1.1.1PEER_INNER_IPADDR=10.0.0.0/24MY_INNER_IPADDR=10.0.1.1KEY=haw-haw.orgBOOTPROTO=none
ifup gw 启动网卡
转载于:https://blog.51cto.com/somethingshare/2407050