ip route命令
命令功能
该命令用于查看或者管理系统中的路由表配置信息。
包含Linux基本ip route命令功能,并在此基础上增加了配置文件的管理功能。
命令格式
- ip route基础命令请参考Linux命令中关于ip route命令的使用方法。
- ip route增强命令如下:
- ip route save SELECTOR
保存路由配置到指定的文件。
- ip route save cancel CONFIG_FILE
删除已保存的路由配置文件。
- ip route save list
查看所有已保存的路由配置文件。
- ip route persist CONFIG_FILE
对路由配置文件进行持久化,系统重启后能够自动恢复CONFIG_FILE文件中的路由配置。
- ip route persist cancel CONFIG_FILE
取消对路由配置文件的持久化。
- ip route persist list
查看当前进行持久化的配置文件。
基础命令和增强命令中的文件名参数,只能是不带路径的文件名。
- ip route save SELECTOR
参数说明
参数 |
参数说明 |
取值 |
---|---|---|
CONFIG_FILE |
配置文件名 |
不带路径信息的文件名 |
使用指南
当网络接口linkdown时,该接口相关的路由表项会包含linkdown标志,此时若执行ip route save SELECTOR命令保存包含linkdown标志的路由信息到文件中,会导致无法通过ip route restore命令将该文件中的路由信息恢复到系统中,并且无法对该文件进行持久化。
一般导致网络接口linkdown的原因包括但不限于:
- 网络接口未连线。
- 物理网络故障。
处理建议:
- 如果linkdown标志的路由表项不是用户新增配置的路由信息,比如系统默认自动生成的路由信息,则可通过SELECTOR规则过滤掉linkdown标志的路由信息,只保存必要的路由表项。
- 如果linkdown标志的路由表项是用户需新增配置的路由信息,则可以先把网络接口恢复linkup,比如物理接口插上网线,恢复物理网络的故障等。重新保存路由信息后,再进行持久化操作。
使用实例
查看ip route帮助信息。
IES:/->ip route help Usage: ip route { list | flush } SELECTOR ip route save SELECTOR ip route restore ip route showdump ip route get [ ROUTE_GET_FLAGS ] ADDRESS [ from ADDRESS iif STRING ] [ oif STRING ] [ tos TOS ] [ mark NUMBER ] [ vrf NAME ] [ uid NUMBER ] [ ipproto PROTOCOL ] [ sport NUMBER ] [ dport NUMBER ] ip route { add | del | change | append | replace } ROUTE SELECTOR := [ root PREFIX ] [ match PREFIX ] [ exact PREFIX ] [ table TABLE_ID ] [ vrf NAME ] [ proto RTPROTO ] [ type TYPE ] [ scope SCOPE ] ROUTE := NODE_SPEC [ INFO_SPEC ] NODE_SPEC := [ TYPE ] PREFIX [ tos TOS ] [ table TABLE_ID ] [ proto RTPROTO ] [ scope SCOPE ] [ metric METRIC ] [ ttl-propagate { enabled | disabled } ] INFO_SPEC := NH OPTIONS FLAGS [ nexthop NH ]... NH := [ encap ENCAPTYPE ENCAPHDR ] [ via [ FAMILY ] ADDRESS ] [ dev STRING ] [ weight NUMBER ] NHFLAGS FAMILY := [ inet | inet6 | ipx | dnet | mpls | bridge | link ] OPTIONS := FLAGS [ mtu NUMBER ] [ advmss NUMBER ] [ as [ to ] ADDRESS ] [ rtt TIME ] [ rttvar TIME ] [ reordering NUMBER ] [ window NUMBER ] [ cwnd NUMBER ] [ initcwnd NUMBER ] [ ssthresh NUMBER ] [ realms REALM ] [ src ADDRESS ] [ rto_min TIME ] [ hoplimit NUMBER ] [ initrwnd NUMBER ] [ features FEATURES ] [ quickack BOOL ] [ congctl NAME ] [ pref PREF ] [ expires TIME ] [ fastopen_no_cookie BOOL ] TYPE := { unicast | local | broadcast | multicast | throw | unreachable | prohibit | blackhole | nat } TABLE_ID := [ local | main | default | all | NUMBER ] SCOPE := [ host | link | global | NUMBER ] NHFLAGS := [ onlink | pervasive ] RTPROTO := [ kernel | boot | static | NUMBER ] PREF := [ low | medium | high ] TIME := NUMBER[s|ms] BOOL := [1|0] FEATURES := ecn ENCAPTYPE := [ mpls | ip | ip6 | seg6 | seg6local ] ENCAPHDR := [ MPLSLABEL | SEG6HDR ] SEG6HDR := [ mode SEGMODE ] segs ADDR1,ADDRi,ADDRn [hmac HMACKEYID] [cleanup] SEGMODE := [ encap | inline ] ROUTE_GET_FLAGS := [ fibmatch ] Other commands: ip route save cancel CONFIG_FILE ip route save list ip route persist CONFIG_FILE ip route persist cancel CONFIG_FILE ip route persist list
ip route add
命令功能
该命令用于新增加策略路由配置。
命令格式
ip route add ROUTE
参数说明
参数 |
参数说明 |
取值 |
---|---|---|
ROUTE |
要添加的路由信息。 |
请参考Linux命令手册。 |
使用指南
具体请参考Linux命令手册。
使用实例
例如:向main路由表增加一条目的网络为192.168.100.0/24的路由,下一跳网关为192.168.2.1。
IES:/->ip route add to 192.168.100.0/24 table main via 192.168.2.1
ip route save
命令功能
该命令用于保存路由配置到指定的文件,查询或删除已保存的配置信息等。
最多可保存20个配置文件。
命令格式
- ip route save cancel CONFIG_FILE
删除已保存的路由配置文件。
- ip route save list
查看所有已保存的路由配置文件。
- ip route save SELECTOR
保存路由配置到指定的文件。
参数说明
参数 |
参数说明 |
取值 |
---|---|---|
CONFIG_FILE |
路由配置文件。 |
不带路径信息的文件名。 |
SELECTOR |
过滤路由配置的规则。 对满足过滤条件的路由进行操作。 |
请参考Linux命令手册。 |
使用指南
若路由配置文件中的路由信息包含linkdown标志,导致持久化过程中恢复失败。详细原因以及处理建议请参考使用指南。
使用实例
例如:保存main路由表的路由配置到route_table_main文件中。
IES:/->ip route save table main > route_table_main
ip route list
命令功能
该命令用于查看路由表的信息。
命令格式
ip route list SELECTOR
参数说明
参数 |
参数说明 |
取值 |
---|---|---|
SELECTOR |
过滤路由配置的规则。 对满足过滤条件的路由进行操作。 |
请参考Linux命令手册。 |
使用指南
具体请参考Linux命令手册。
使用实例
例如:查看main路由表的信息。
IES:/->ip route list table main default via 172.27.0.1 dev eth0 172.17.0.0/24 dev eth1 proto kernel scope link src 172.17.0.1 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 172.27.0.0/16 dev eth0 proto kernel scope link src 172.27.192.110 172.27.5.0/24 dev eth1 proto kernel scope link src 172.27.5.112 192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.116
ip route showdump
命令功能
该命令用于显示某个配置文件中的路由信息。
命令格式
ip route showdump
参数说明
无
使用指南
具体请参考Linux命令手册。
使用实例
例如:显示route_table_main配置文件中的路由信息。
IES:/->ip route showdump < route_table_main default via 172.27.0.1 dev eth0 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 172.27.0.0/16 dev eth0 proto kernel scope link src 172.27.192.110 172.27.5.0/24 dev eth1 proto kernel scope link src 172.27.5.112 linkdown 192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.116 linkdown
ip route del
命令功能
该命令用于删除策略路由配置。
命令格式
ip route del ROUTE
参数说明
参数 |
参数说明 |
取值 |
---|---|---|
ROUTE |
要删除的路由信息。 |
请参考Linux命令手册。 |
使用指南
具体请参考Linux命令手册。
使用实例
例如:删除main路由表中目的网络为192.168.100.0/24的路由。
IES:/->ip route del to 192.168.100.0/24 table main
ip route persist
命令功能
该命令用于对已保存的配置文件进行持久化管理。
命令格式
- ip route persist CONFIG_FILE
对路由配置文件进行持久化,使系统重启后能够自动恢复CONFIG_FILE文件中的路由配置。
- ip route persist cancel CONFIG_FILE
取消对路由配置文件的持久化。
- ip route persist list
查看当前进行持久化的配置文件。
参数说明
参数 |
参数说明 |
取值 |
---|---|---|
CONFIG_FILE |
路由配置文件。 |
不带路径信息的文件名。 |
使用指南
若路由配置文件中的路由信息包含linkdown标志,导致持久化过程中恢复失败。详细原因以及处理建议请参考使用指南。
使用实例
例如:将已保存的路由配置文件route_table_main进行持久化,使系统重启后自动恢复route_table_main中的路由。
IES:/->ip route persist route_table_main