`route`命令是Linux系统中用于管理和显示网络路由表的工具。它可以帮助用户查看、添加、删除或更改系统中的路由配置。`route`命令通常用于手动配置静态路由,这对于网络管理员来说非常重要,尤其是在复杂的网络环境中。
基本语法
`route`命令的基本语法如下:
`route [-nNvee] [-FC] []`:列出内核中的路由表。
`-n`:以数字格式显示IP地址和网关。
`-N`:显示每个路由的网络接口名称。
`-v`:显示详细信息。
`-e`:显示每个路由的扩展信息。
`-F`:显示IPv6路由表。
`-C`:显示IPv4路由表。
默认情况下,`route`命令会显示IPv4路由表。如果需要显示IPv6路由表,可以使用`-F`标志。
`[]`:指定地址族(Address Family)。如果没有指定,则默认为IPv4。常见的包括`AF_INET`(IPv4地址族)和`AF_INET6`(IPv6地址族)。
常用命令
`route add`:添加一条新的路由规则。需要指定目标地址、子网掩码、网关地址和接口等参数。
`route delete`:删除一条已存在的路由规则。
`route change`:更改现存路由。
`route print`:打印出当前的路由表信息。
`route -f`:清除所有不是主路由(网掩码为255.255.255.255的路由)、环回网络路由(目标为127.0.0.0,网掩码为255.255.255.0的路由)或多播路由(目标为224.0.0.0,网掩码为240.0.0.0的路由)的条目的路由表。
`route -p`:将添加的路由规则持久化保存,即在重启后仍然有效。
示例
查看当前路由表
```bash
route
```
添加一条路由规则
```bash
route add 192.168.1.0 mask 255.255.255.0 192.168.0.1 if eth0
```
删除一条路由规则
```bash
route delete 192.168.1.0 mask 255.255.255.0 192.168.0.1
```
设置默认网关
```bash
route add default gw 192.168.1.1
```
注意事项
在使用`route`命令时,确保你有足够的权限,通常需要以root用户身份运行。
添加的路由规则可以通过将规则添加到系统启动脚本(如`/etc/rc.local`)或使用`netplan`(在Ubuntu等系统)来持久化保存。
通过以上信息,你可以更好地理解和使用`route`命令来管理和配置Linux系统中的网络路由表。