五一假期打算维护一下自己的网络,这个五一假期还是蛮开心的。
本篇文章将会作为一个系列编写,因为几个人配置起来比较快,但是最后整理文件有些地方要处理或记录一部分内容,所以文章会写的比较慢。
技术栈
- 因为不擅长使用WG或其他,所以咱的网络打算 有固定IP采用GRE Tunnel,无固定IP采用ZeroTier或 使用DDNS来配置GRE Tunnel
- 本文基本会采用FRR/IOS,因为是基于咱以及别人所有的网络设备进行配置,将会配置物理\虚拟设备,包括但不限于FRR、Cisco IOS、TP-Link、Ikuai等设备。
- 由于咱没钱租公网IP、所以将会使用11.0.0.0/8 或 10.0.0.0/8 网段
- 本系列文章均会进行数据脱敏处理(本文章是线上网络操作之后的记录,因为涉及到几位小可爱,也为了以后,本文用来记录以及学习)
- 推荐创建个文件夹\GitHub仓库记录下每次的配置
- 感谢高冷的Oo和某位小透明帮助配置
预配
加载GRE模块 (命令 直接执行即可)
echo 'ip_gre' >> /etc/modules-load.d/gre.conf
modprobe ip_gre
开启路由转发(命令 直接执行即可)
echo "
net.ipv4.conf.all.forwarding = 1
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.default.forwarding = 1
net.ipv6.conf.all.forwarding = 1
net.ipv6.conf.all.proxy_ndp = 1
net.ipv6.conf.all.accept_ra = 2
" > /etc/sysctl.conf
sysctl -p
若你们网络\设备开启防火墙或配置了特殊规则请自己处理,请先熟悉自己要配置的设备再进行配置。
网卡配置
CentOS GRE Tunnel配置文件写法(/etc/sysconfig/network-script/ifcfg-tun0)
DEVICE=tun0
BOOTPROTO=none
ONBOOT=no
TYPE=GRE
PEER_OUTER_IPADDR=192.168.1.100
PEER_INNER_IPADDR=192.168.168.2
MY_INNER_IPADDR=192.168.168.1
Debian GRE Tunnel配置文件写法 (/etc/network/interfaces)
(不知为啥,这种配置写法在Debian10有问题,先直接用命令起tunnel吧,咱们还在测试新玩意,后续再fix这里)
auto gre1
iface gre1 inet static
address 10.10.10.10 # inside side a address
netmask 255.255.255.0
pre-up ip tunnel add gre1 mode gre remote 173.230.145.76 local 173.230.147.224 #remote external ip local external ip
post-down ip tunnel del gre1
IOS GRE Tunnel配置文件写法
interface Tunnel0
ipaddress 11.0.0.1 255.255.255.0
tunnel source 10.1.1.1
tunnel destination 10.1.1.2
开始配置
配置的步骤如下
- 制定IP分配规划,每台设备使用什么IP,系统版本
- SSH/VNC进服务器,更改上面的网卡配置模板并建立Tunnel
- 启动接口,测试连通性
配置案例
开启GRE Tunnel+IP转发
配置GRE Tunnel
Host1 (Debian)
ip tunnel add gre_tunnel mode gre remote 对端IP local 本地IP ttl 255
ip addr add 隧道IP dev gre_tun1
ip link set gre_tunnel up
Host2 (CentOS)
#编辑文件/etc/sysconfig/network-script/ifcfg-tun0
DEVICE=tun0
BOOTPROTO=none
ONBOOT=no
TYPE=GRE
PEER_OUTER_IPADDR=对端本地IP
PEER_INNER_IPADDR=对端公共IP
MY_INNER_IPADDR=本地IP
#启动接口
ifup tun0
配置GRE的过程很枯燥,也就是ssh过去改配置,启网卡,ping一下 然后下一台,为了后续,请部署最好的链路(两个节点之间连接最稳定,延迟最低)
草 RBQLabs 在写文章的时候炸了
大佬牛逼 ,前排围观
有些地区的运营商已经和谐了GRE协议。。。
@蛋疼实验室 emm,国内机器咱就装zt了。国内的确emmm
@yfsama zt?那是啥?