### 临时路由 #### 1、通过ip命令进行配置(推荐) 临时路由指在系统运行期间设置的路由,一旦系统重启,路由规则就会失效。适用于运行重要业务而无法重启的系统。 典型的例子在OpenVPN配置中经常需要将特定网段的数据包全部路由到OpenVPN隧道。 ``` ip route add 192.168.0.0/24 via 10.10.10.1 dev tun0 ``` 上面这条命令创建了一条路由,所有发往192.168.0.0/24网段的数据包都会被路由到10.10.10.1这个网关。 也可以通过此命令配置默认网关。 ``` ip route add default via 192.168.88.1 dev eth0 ``` 配置完成后查看路由的方法: ``` ip route list ``` #### 使用route命令配置 route命令在net-tools工具包中,采用Minimal安装的系统没有这个软件包,需要自行安装。如果你查看net-tools说明会发现,他推荐使用iproute包代替。也就是ip命令所在的包。可能大部分人都习惯了route,ifconfig等命令。所以这个包目前仍在使用。推荐学习一下iproute包中的工具。 ``` sudo yum install -y net-tools ``` 上述规则用route命令配置方式如下。需要区分主机(host)还是网络(net)。 ``` route add -net 192.168.0.0/24 gw 10.10.10.1 route add -host 192.168.9.1 gw dev tun0 ``` 配置默认网关的方法如下,可以指定接口或者IP。 ``` route add default gw 192.168.88.1 route add default dev eth0 ``` 查看路由方法 ``` route -n netstat -nr ``` > netstat也是net-tools工具包中的一个命令。 更多用法可以查询手册: ``` man ip man route man netstat ``` ### 永久路由 在配置完临时路由后,暂时可以不用重启系统,但是我们希望下次重启(无论是意外还是计划重启)能够自动创建所需的路由,可以参照下面的方法配置。 #### 创建文件/etc/sysconfig/network-scripts/route-{interface}(推荐) interface为网卡接口名称。 例如,还是OpenVPN的路由规则,创建文件`/etc/sysconfig/network-scripts/route-tun0`,按照`ip route`命令参数格式写入。 ``` 192.168.0.0/24 via 10.10.10.1 dev tun0 ``` #### /etc/sysconfig/static-routes 此配置文件会被`/etc/init.d/network`调用,但是init现已由systemd替代,所以此方式或许以后会失效。 编写规则方式如下: ``` any net any gw 192.168.88.1 any net 192.168.0.0/24 gw 10.10.10.1 any net 192.168.2.0 netmask 255.255.252.0 gw 10.10.10.1 ``` #### /etc/rc.local 将配置路由的命令写入开机脚本,此脚本CentOS 7已不推荐使用,默认是没有执行权限的,需要添加可执行权限。建议不要使用这种方式。 Loading... ### 临时路由 #### 1、通过ip命令进行配置(推荐) 临时路由指在系统运行期间设置的路由,一旦系统重启,路由规则就会失效。适用于运行重要业务而无法重启的系统。 典型的例子在OpenVPN配置中经常需要将特定网段的数据包全部路由到OpenVPN隧道。 ``` ip route add 192.168.0.0/24 via 10.10.10.1 dev tun0 ``` 上面这条命令创建了一条路由,所有发往192.168.0.0/24网段的数据包都会被路由到10.10.10.1这个网关。 也可以通过此命令配置默认网关。 ``` ip route add default via 192.168.88.1 dev eth0 ``` 配置完成后查看路由的方法: ``` ip route list ``` #### 使用route命令配置 route命令在net-tools工具包中,采用Minimal安装的系统没有这个软件包,需要自行安装。如果你查看net-tools说明会发现,他推荐使用iproute包代替。也就是ip命令所在的包。可能大部分人都习惯了route,ifconfig等命令。所以这个包目前仍在使用。推荐学习一下iproute包中的工具。 ``` sudo yum install -y net-tools ``` 上述规则用route命令配置方式如下。需要区分主机(host)还是网络(net)。 ``` route add -net 192.168.0.0/24 gw 10.10.10.1 route add -host 192.168.9.1 gw dev tun0 ``` 配置默认网关的方法如下,可以指定接口或者IP。 ``` route add default gw 192.168.88.1 route add default dev eth0 ``` 查看路由方法 ``` route -n netstat -nr ``` > netstat也是net-tools工具包中的一个命令。 更多用法可以查询手册: ``` man ip man route man netstat ``` ### 永久路由 在配置完临时路由后,暂时可以不用重启系统,但是我们希望下次重启(无论是意外还是计划重启)能够自动创建所需的路由,可以参照下面的方法配置。 #### 创建文件/etc/sysconfig/network-scripts/route-{interface}(推荐) interface为网卡接口名称。 例如,还是OpenVPN的路由规则,创建文件`/etc/sysconfig/network-scripts/route-tun0`,按照`ip route`命令参数格式写入。 ``` 192.168.0.0/24 via 10.10.10.1 dev tun0 ``` #### /etc/sysconfig/static-routes 此配置文件会被`/etc/init.d/network`调用,但是init现已由systemd替代,所以此方式或许以后会失效。 编写规则方式如下: ``` any net any gw 192.168.88.1 any net 192.168.0.0/24 gw 10.10.10.1 any net 192.168.2.0 netmask 255.255.252.0 gw 10.10.10.1 ``` #### /etc/rc.local 将配置路由的命令写入开机脚本,此脚本CentOS 7已不推荐使用,默认是没有执行权限的,需要添加可执行权限。建议不要使用这种方式。 最后修改:2023 年 09 月 20 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 1 如果觉得我的文章对你有用,请随意赞赏