# route 命令

选项:

  • -v :显示详细信息。

  • -n :不执行 DNS 反向查找(即不解析名称),直接显示数字形式的 IP 地址。

  • -e :netstat 格式显示路由表。

  • -C :打印 Linux 内核的路由缓存。

  • add :增加路由记录 / del :删除路由记录

    • -net :目的地址是一个网络。
    • -host :目的地址是一台主机。
    • netmask :目的地址的网络掩码。
    • gw :路由数据包通过的网关。
    • metric :设置路由跃点。

eg:

1、添加主机路由

添加主机路由
route add -net 10.0.0.10 netmask 255.255.255.255 gw 10.139.128.1 dev eth0
route -n
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.10       10.139.128.1    255.255.255.255 UGH   0      0        0 eth0
...

2、添加网络路由

添加网络路由
route add -net 10.0.0.0 netmask 255.255.255.0 gw 10.139.128.1 dev eth0
route -n
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.0        10.139.128.1    255.255.255.0   UG    0      0        0 eth0
...

3、添加设置默认网关跃点为 80

添加设置默认网关
route add default gw 192.168.1.1 metric 80
route -n
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
...

4、删除路由

删除路由
route del default gw 192.168.1.1 metric 80

# 字段分析

使用 route or route -n 命令查看内核路由表:

命令行提示符
route
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    100    0        0 ens33
default         _gateway        0.0.0.0         UG    1000   0        0 br0
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 br0
192.168.29.0    0.0.0.0         255.255.255.0   U     0      0        0 ens33
_gateway        0.0.0.0         255.255.255.255 UH    100    0        0 ens33
route -n
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.29.2    0.0.0.0         UG    100    0        0 ens33
0.0.0.0         192.168.10.1    0.0.0.0         UG    1000   0        0 br0
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 br0
192.168.29.0    0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.29.2    0.0.0.0         255.255.255.255 UH    100    0        0 ens33

字段分类说明:

字段说明
Destination目标网络或目标主机。Destination 为 default( 0.0.0.0 )时,表示这个是默认网关,所有数据都发到这个网关(这里是 10.139.128.1 )。
Gateway网关地址, 0.0.0.0 表示当前记录对应的 Destination 跟本机在同一个网段,通信时不需要经过网关(同一个局域网内 2 台主机通信不需要经过网关)。
GenmaskDestination 字段的网络掩码,Destination 是主机时需要设置为 255.255.255.255 ,是默认路由时会设置为 0.0.0.0
Flags见下文说明。
Metric跃点,指到达指定网络所需的中转数,是大型局域网和广域网设置所必需的 (不在 Linux 内核中使用)。
Ref路由项引用次数 (不在 Linux 内核中使用)。
Use此路由项被路由软件查找的次数。
Iface网卡名字,例如 eth0 ;要去往这个网段需要使用哪一个网络接口。也就是 eth0 这张网卡。

可以看到 Flags 下面有许多字母组合,他们分别的含义是:

  • U (route is up) :该路由处于活跃;

  • H (target is a host) :目标是一部主机 (IP) 而非网域(子网掩码是 255.255.255.255);

  • G (use gateway) :需要透过外部的主机 (gateway) 来转递封包(一般指向默认网关);

  • R (reinstate route for dynamic routing) :使用动态路由时,恢复路由资讯的旗标;

  • D (dynamically installed by daemon or redirect) :已经由服务或转 port 功能设定为动态路由

  • M (modified from routing daemon or redirect) :路由已经被修改了;

  • ! (reject route) :这个路由将不会被接受(用来抵挡不安全的网域)。

# 路由种类

路由类型子网掩码Flag 字段描述
主机路由255.255.255.255UH指向单个 IP 地址或主机名的路由记录
网络路由255.255.255.0U代表主机可以到达的网络,比如说目的地址是 192.168.10.xxx
默认路由0.0.0.0UG当主机不能在路由表中查找到目标主机的 IP 时,数据包就发到默认路由上
更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

夏沫の浅雨 微信支付

微信支付

夏沫の浅雨 支付宝

支付宝