`route` 命令是 Linux 系统中用于显示和操作 IP 路由表的工具。它允许用户添加、删除、修改或查看网络路由,从而控制数据包在网络中的传输路径。以下是 `route` 命令的详细解析:
基本语法
```
route [选项] [命令] [目标] [子网掩码] [网关] [度量值] [接口]
```
常用选项和命令
`-f` 或 `--flush`:清除路由表中的所有非主路由(网掩码为 255.255.255.255 的路由)、环回网络路由(目标为 127.0.0.0,网掩码为 255.255.255.0 的路由)或多播路由(目标为 224.0.0.0,网掩码为 240.0.0.0 的路由)。
`-p` 或 `--persistent`:创建永久路由,这些路由在系统启动时会被自动添加到路由表中。
`-n` 或 `--numeric`:以数字形式显示地址,不进行 DNS 反向查找。
`-e` 或 `--expand`:使用 netstat 格式显示路由表。
`-v` 或 `--verbose`:显示详细的处理信息。
`-C` 或 `--cache`:显示路由缓存中的条目,而不是 FIB(转发信息库)。
`add`:添加一条路由到路由表。
`delete`:从路由表中删除一条路由。
`print` 或 `show`:显示当前的路由表内容。
`change`:修改现有路由表中的条目。
示例
显示当前路由表:
```
route -n
```
添加一条到特定主机的路由:
```
route add 192.168.1.100 mask 255.255.255.0 gw 192.168.1.1
```
删除一条路由:
```
route delete 192.168.1.100
```
清除所有路由表中的路由:
```
route -f
```
注意
当使用 `route` 命令时,请确保你了解你正在添加或删除的路由对系统网络配置的影响。
对于更高级的网络配置,可能需要使用 `ip` 命令,它是 `route` 命令的现代替代品,提供了更多的功能和灵活性。
希望这些信息能帮助你更好地理解和使用 `route` 命令