Linux 路由表说明

Posted 夏沫の浅雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 路由表说明相关的知识,希望对你有一定的参考价值。

写在前面:

本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。

目录

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 时,数据包就发到默认路由上

以上是关于Linux 路由表说明的主要内容,如果未能解决你的问题,请参考以下文章

Linux命令(10)route命令

linux netstat(网络信息统计) 工具说明及使用方法(检验本机各端口的网络连接情况,显示网络连接路由表网络接口)

#yyds干货盘点#Linux显示或管理路由表

Linux route指定静态路由配置

交换机,linux主机及windwos主机上路由表查看

Linux 路由配置问题!!200分