Linux route 命令攻略
route
命令是 Linux 中的一个网络命令,用于在 Linux 网络中查看和修改 IP 路由表。
查看当前路由表
使用 route
命令可以查看当前系统的路由表,以便了解系统的网络情况。
$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default router 0.0.0.0 UG 100 0 0 eth0
10.20.30.0 * 255.255.255.0 U 50 0 0 eth1
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
输出结果中包含了当前系统的路由表信息。其中,每行信息对应一条路由规则,各个字段的含义如下:
- Destination:目标网络地址。
- Gateway:路由器的 IP 地址。
- Genmask:网络掩码,用于判断某个 IP 地址是否属于目标网络。
- Flags:路由规则的状态,包括 U(up,表示路由规则生效)、G(gateway,表示需要走网关)和H(host,表示目标地址为主机)等。
- Metric:路由规则的优先级,当多条规则的 Flags 和 Genmask 相同时,根据 Metric 的大小来判断使用哪条路由规则,Metric 越小,优先级越高。
- Ref:路由规则被使用的次数。
- Use:路由规则被使用的字节数。
- Iface:路由规则对应的网络接口名称。
添加一条路由规则
使用 route add
命令可以添加一条路由规则,下面是一个示例:
$ route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.1
其中,参数的含义如下:
-net
:指定目标网络地址。netmask
:指定网络掩码。gw
:指定路由器的 IP 地址。
这个例子中,我们将目标网络地址设置为 10.0.0.0
,掩码为 255.0.0.0
,网关为 192.168.1.1
。这条路由规则的作用是让系统可以访问 10.0.0.0/8
网络。
删除一条路由规则
使用 route delete
命令可以删除一条路由规则,下面是一个示例:
$ route delete -net 10.0.0.0 netmask 255.0.0.0
这个例子中,我们将 10.0.0.0/8
网络的路由规则删除了。
总结
通过 route
命令,我们可以方便地查看和修改系统的路由表,以便更好地管理网络。在使用该命令时,需要注意参数的含义,以及路由规则的优先级和顺序等。