一、安装操作系统
操作系统使用CentOS Linux release 7.5.1804 (Core),安装过程省略。
二、基础环境配置
1、内网物理口IP地址配置
1)编辑网卡配置
vim /etc/sysconfig/network-scripts/ifcfg-p2p1
DEVICE=p2p1
ONBOOT=yes
HOTPLUG=no
TYPE=Ethernet
IPV6INIT=no
BOOTPROTO=none
#办公室内网
IPADDR=x.x.x.x
NETMASK=x.x.x.x
说明:待所有网卡都配置好了后重启网络服务
2)重启网络服务
systemctl restart network #重启网络服务
systemctl status network #查看网络服务
2、外网物理口IP地址配置
1)编辑网卡配置
vim /etc/sysconfig/network-scripts/ifcfg-p2p2
DEVICE=p2p1
ONBOOT=yes
HOTPLUG=no
TYPE=Ethernet
IPV6INIT=no
BOOTPROTO=none
#办公室内网
IPADDR=x.x.x.x
NETMASK=x.x.x.x
说明:待所有网卡都配置好了后重启网络服务
2)重启网络服务
systemctl restart network #重启网络服务
systemctl status network #查看网络服务
3、外网GRE隧道IP地址配置(可选)
#GRE详细部署:https://www.cnblogs.com/wangzengyi/p/12557019.html
1)编辑GRE隧道口配置
vim /etc/sysconfig/network-scripts/ifcfg-tun1
# 此处可以写接口描述
DEVICE=tun1
BOOTPROTO=none
ONBOOT=yes
TYPE=GRE
TTL=64
MTU=1500
PEER_OUTER_IPADDR=x.x.x.x
PEER_INNER_IPADDR=x.x.x.x
MY_INNER_IPADDR=x.x.x.x
MY_OUTER_IPADDR=x.x.x.x
说明:创建GRE两端的服务器的隧道口配置都以如上格式配置
2)重启网络服务
systemctl restart network #重启网络服务
systemctl status network #查看网络服务
4、keepalive配置
具体见:https://www.cnblogs.com/wangzengyi/p/12498950.html
三、启用IP转发功能
1、检查IPv4转发功能是否启用
sysctl net.ipv4.ip_forward #方法一,0代表未开启,1代表开启了;
cat /proc/sys/net/ipv4/ip_forward #方法二,0代表未开启,1代表开启了;
2、临时启用IPv4转发功能
sysctl -w net.ipv4.ip_forward=1 #方法一,临时开启,立刻生效;
echo 1 > /proc/sys/net/ipv4/ip_forward #方法二,临时开启,立刻生效;
3、永久启用IPv4转发功能
编辑目录:/etc/sysctl.conf
增加内容:net.ipv4.ip_forward = 1
如果没有执行临时启用IPv4转发功能,则还需要重启服务才能生效转发,方法如下;
sysctl -p /etc/sysctl.conf #方法一,适用于centos7
service network restart #方法二,适用于redhat系列
/etc/init.d/procps.sh restart #方法三,适用于debian或Ubuntu早期版本
/etc/init.d/procps restart #方法四,适用于debian或Ubuntu最新版本
四、导入路由表
1、将路由表写入内存中
http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest
2、将路由表写入配置文件永久保存
五、配置iptables
具体见:https://www.cnblogs.com/wangzengyi/p/12525291.html
六、手动添加删除修改路由条目
ip route del 52.0.3.31/32 via 10.11.12.1 dev tun13
//删除某条路由
ip route add 52.0.3.31/32 via 10.11.12.1 dev tun13
//增加某条路由
ip route change 52.0.3.31/32 via 10.11.17.1 dev tun4
//修改下一跳
ip route get 1.1.1.1
//查看某条路由
七、脚本添加修改路由条目
while read line;do ip r a $line;done < route.txt
while read line;do ip r c $line;done < route.txt
八、增加策略路由:
vim /etc/iproute2/rt_tables //在这个文件里增加表名字和ID的对应关系;
ip rule add from 192.168.208.0/24 lookup test //增加test的匹配原地址表;
ip route add default via 192.168.17.1 table test //调用test表并指定该表里默认路由为192.168.17.1
ip rule show //查看所有表,以及表的源地址匹配;
ip route show table mojitest //查看指定表的路由配置;