linux搭建GRE隧道
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux搭建GRE隧道相关的知识,希望对你有一定的参考价值。
GRE介绍GRE隧道是一种IP-over-IP的隧道,是通用路由封装协议,可以对某些网路层协议的数据报进行封装,使这些被封装的数据报能够在IPv4/IPv6 网络中传输。
Tunnel 是一个虚拟的点对点的连接,提供了一条通路使封装的数据报文能够在这个通路上传输,并且在一个Tunnel 的两端分别对数据报进行封装及解封装。
一个X协议的报文要想穿越IP网络在Tunnel中传输,必须要经过加封装与解封装两个过程。
相关配置
1、加载ip_gre模块,开通转发
要在Linux上创建GRE隧道,需要ip_gre内核模块,它是GRE通过IPv4隧道的驱动程序。
在两台LINUX开通路由转发,为等下的路由功能做准备。
vim /etc/sysctl.conf
修改net.ipv4.ip_forward=0 修改成1
sysctl -p
2、建立隧道
A机器:
ip tunnel add tun1 mode gre remote 43.xx.xx.11 local 118.xx.xx.184
ip link set tun1 up
ip 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.11
ip link set tun1 up
ip addr add 2.2.2.2 peer 2.2.2.1 dev tun1
route add -net 192.168.1.0/24 dev tun1
3、撤销GRE隧道
在任意一端执行下列命令
ip link set tun1 down
ip tunnel del tun1
4、将配置写入网卡
eg:
A机器:
DEVICE=gw
ONBOOT=yes
TYPE=GRE
PEER_OUTER_IPADDR=2.2.2.2
PEER_INNER_IPADDR=10.0.1.0/24
MY_INNER_IPADDR=10.0.0.1
KEY=haw-haw.org
BOOTPROTO=none
eg:
B机器:
DEVICE=gw
ONBOOT=yes
TYPE=GRE
PEER_OUTER_IPADDR=1.1.1.1
PEER_INNER_IPADDR=10.0.0.0/24
MY_INNER_IPADDR=10.0.1.1
KEY=haw-haw.org
BOOTPROTO=none
ifup gw 启动网卡
以上是关于linux搭建GRE隧道的主要内容,如果未能解决你的问题,请参考以下文章