route和ip route
一、route
在Linux操作系统中,route
是一个命令行工具,用于管理和查看网络路由表。网络路由表是一个记录了如何将数据包从一个网络接口发送到另一个网络接口或主机的列表。这个表格决定了数据包的路径,以确保它们能够正确地到达目的地。
#临时
#示例route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1 dev eth0
route add -net x.x.x.x/x gw x.x.x.x dev 网卡
#参数
add/delete 增加/删除一条路由
-net/-host 地址段/主机地址
netmask 掩码
gw 默认网关
dev 网卡设备接口
#永久
cat >> /etc/sysconfig/network-scripts/route-网卡 <
x.x.x.x/x via x.x.x.x dev 网卡
EOF
#验证方法1、route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.100.1 0.0.0.0 UG 100 0 0 ens32
11.0.1.0 0.0.0.0 255.255.255.0 U 101 0 0 ens192
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.18.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-db1ffbbff50d
192.168.100.0 0.0.0.0 255.255.255.0 U 100 0 0 ens32
#flags说明
Destination:这一列显示了目标网络或主机的IP地址或网络地址。这是数据包要到达的目的地。
Gateway:这一列显示了用于到达目标网络或主机的网关的IP地址。网关是数据包离开本地网络并进入其他网络的出口点。
Genmask:这一列显示了子网掩码,用于确定目标网络的范围。子网掩码与目标地址进行按位与运算,以确定数据包是否在目标网络范围内。
Flags:这一列显示了与路由条目相关的标志,例如 U(Up,路由可用)、G(Gateway,路由使用网关)、H(Host,目标是主机而不是网络)、 D(Dynamic,动态路由条目)、M(Modified,路由表已被修改)等。
Metric:这一列显示了路由的度量值。度量值是用于确定最佳路由的权重,较小的度量值表示更优先的路由。
Ref:这一列显示了路由条目的引用计数。引用计数表示有多少路由条目引用了这个路由。
Use:这一列显示了路由条目的使用计数。使用计数表示有多少数据包已经通过这个路由。
Iface:这一列显示了与路由条目关联的网络接口的名称。这是数据包将要从哪个接口发送的信息。
#验证方法2、route -n
default via 192.168.100.1 dev ens32 proto static metric 100
11.0.1.0/24 dev ens192 proto kernel scope link src 11.0.1.99 metric 101
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
172.18.0.0/16 dev br-db1ffbbff50d proto kernel scope link src 172.18.0.1
192.168.100.0/24 dev ens32 proto kernel scope link src 192.168.100.99 metric 100
二、ip route
ip route
命令用于管理和查看Linux系统的路由表。这个命令在许多Linux发行版中取代了旧的 route
命令,并提供更多的功能和灵活性。以下是一些常用的 ip route
参数及其解释:
-
ip route add:用于添加一条新的路由规则到路由表。
ip route add 192.168.1.0/24 via 192.168.0.1 dev eth0 192.168.1.0/24`:目标网络地址和子网掩码,表示数据包要发送到的目的地网络。 `via 192.168.0.1`:指定网关的IP地址,表示数据包应该通过该网关路由到目标网络。 `dev eth0`:指定要使用的网络接口。
-
ip route del:用于删除一条路由规则。
ip route del 192.168.1.0/24
这将删除之前添加的路由规则。
-
ip route show:用于显示当前系统的路由表。
ip route show
这会列出当前系统的路由表条目,包括目标网络、网关、网络接口等信息。
-
ip route flush:用于清空整个路由表。
ip route flush
这会删除所有路由规则,慎用,因为它会导致系统失去网络连接。
-
ip route default:用于设置默认路由规则,指定数据包应该通过哪个网关发送到不在已知路由表中的目的地。
ip route add default via 192.168.0.1
这将设置默认路由,将所有不在已知路由表中的数据包发送到指定的网关。
-
ip route table:用于在不同的路由表之间切换。
ip route show table main