路由表的 flags 字段显示路由状态:
A 活动的休眠网关检测在路由上被启用。本字段只适用于 AIX 5.1 或更新版本。
U :Up.
H :路由至主机而不是网络。
G :路由至网关。 不带G表示不经过路由
D :路由通过重定向动态地创建。
M :路由通过重定向被修改。
L :链接级地址显示在路由项中。
c :对该路由的访问创建克隆路由。本字段只适用于 AIX 4.2.1 或更新版本。
W :该路由为克隆路由。本字段只适用于 AIX 4.2.1 或更新版本。
1 :协议特定路由标志 #1。
2 :协议特定路由标志 #2。
3 :协议特定路标志 #3。
b :该路由表示广播地址。
e :有绑定的高速缓存项。
l :该路由表示本地地址。
m :该路由表示多点广播地址。
P :锁住的路由。
R :主机或网络不能到达。
S :手工添加。
u :路由可用。
s :组路由的停止搜索选项在路由上被启用。

(1)Destination:目的IP地址或网络地址;
(2)Gateway:即下一站路由器,*表示无须经过下一站路由器就可以直接到达目的地址或目的网络;
(3)Genmask:子网掩码;
(4)Flags:标志字段,这里可能出现U,G,H,D,M,R等,U表示可用;G表示Gateway字段是个路由器,否则表示是个直接出口;H表示Destination是个主机IP地址,没有H表示Destination是网络地址;D表示该路由项由ICMP重定向报文创建;M表示该路由项由ICMP报文修改而来;R表示由动态选路协议恢复的路由项。
多数系统内核对路由表的实现都包含上述内容,其它字段视系统而定。
 
查看路由表的方法:
(1)netstat –r
(2)route
(3)查看相关文件:/proc/net/route
 

IP选路规则:
每当主机要发送IP数据包,都要先搜索路由表,以确定往哪个接口发送数据,并确定下一站路由器,具体的搜索过程如下
(1)搜索匹配的主机地址;
(2)搜索匹配的网络地址;
(3)搜索默认路由。
如果通过以上三个步骤之后都没有匹配的路由项(没有默认路由),则产生主机不可达或者网络不可达ICMP差错报文。
导致路由表发生改变的方法或原因:
(1)可以通过route add或者route del来增加或者删除路由项;
(2)ICMP重定向报文导致接收主机修改或者增加路由项;
(3)ICMP路由通告报文也往往会导致路由表发生变化;
(4)动态选路协议(RIP,OSPF等)导致路由表不断更新。
 
一般认为,主机在引导以后要广播或多播传送一份路由器请求报文。一台或更多台路由器响应一份路由器通告报文。另外,路由器定期地广播或多播传送它们的路由器通告报文,允许每个正在监听的主机相应地更新它们的路由表。
  路由器操作
  当路由器启动时,它定期在所有广播或多播传送接口上发送通告报文。准确地说,这些通告报文不是定期发送的,而是随机传送的,以减小与子网上其他路由器发生冲突的概率。一般每两次通告间隔450秒和600秒。一份给定的通告报文默认生命周期是30分钟。
  使用生命周期域的另一个时机是当路由器上的某个接口被关闭时。在这种情况下,路由器可以在该接口上发送最后一份通告报文,并把生命周期值设为0.除了定期发送主动提供的通告报文以外,路由器还要监听来自主机的请求报文,并发送路由器通告报文以响应这些请求报文。如果子网上有多台路由器,由系统管理员为每个路由器设置优先等级。例如,主默认路由器就要比备份路由器具有更高的优先级。
  主机操作
  主机在引导期间一般发送三份路由器请求报文,每三秒钟发送一次。一旦接收到一个有效的通告报文,就停止发送请求报文。主机也监听来自相邻路由器的请求报文。这些通告报文可以改变主机的默认路由器。另外,如果没有接收到来自当前默认路由器的通告报文,那么默认路由器会超时。只要有一般的默认路由器,该路由器就会每隔10分钟发送通告报文,报文的生命周期是30分钟。这说明主机的默认表项是不会超时的,即使错过一份或两份通告报文。

路由选择协议基础:
  使用协议来查找网络并更新路由表的配置就是动态路由。
名词解释:
AS(Autonomous System 自治系统):AS是基于共同管理域下的网络集合,在同一个AS中所有的路由器共享相同的路由表信息。
IGP(Interior Gateway Protocol 内部网关协议):用于同一个AS中的路由器间交换路由选择信息。
EGP(Exterior Gateway Protocol 外部网关协议):用于AS之间通信。
AD(Administrative Distance 管理距离):衡量接收来自相邻路由器上路由选择信息的可信度,0(最可信)到255(不使用该路由)之间。
提示:如有一个路由器接收到多条对同一远程网络的更新内容后,路由器首先检查AD,较低AD的路由条目会被放在路由表中。如果多条被通告到同一网络的路由具有相同的AD值,具有较低度量值的路由将被放在路由表中。如果多条被通告的路由具有相同的AD和相同的度量值,那么路由协议会对这一远程网络使用负载均衡。

静态选路:默认方式生成(直连接口),通过route增加,通过ICMP重定向生成(默认方式出错)。
动态选路:相邻路由之间的通信,以告知对方每个路由器当前所连接的网络。其改变的是选路策略,在路由表中动态的添加或删除信息。
自治系统AS内使用的路由协议称为:内部网关协议IGP,常用的是RIP、OSPF。

                 外部网关协议EGP,常用的是BGP。

网络--路由表&IP选路的更多相关文章

  1. [TCPIP] IP路由表及选路 Note

    TCP/IP IP路由表及选路 1.路由表信息 路由表一般包含信息:目的IP地址.下一站路由器的IP地址.标志. 为数据报传送指定的一个网络接口. 查看路由表信息mac-abeen:~ abeen$ ...

  2. TCP/IP详解学习笔记(5)-IP选路,动态选路,和一些细节

    1.静态IP选路 1.1.一个简单的路由表 选路是IP层最重要的一个功能之一.前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据包的IP地址来选择路由.这里就不重复了.首先来看看一个简单的系统 ...

  3. TCP/IP详解之:IP选路 动态选路协议

    第九章 IP选路 netstat -rn 显示路由表 初始化路由表的两种方法: 方法1:在配置文件中指定静态路由(不常用) 方法2:运行路由守护程序 或者 使用ICMP路由器发现报文 没有到达目的地的 ...

  4. IP选路

    IP选路 1.概述      路由算法是用于获取路由表中的路由项目.它是路由选择协议的核心. 2.路由算法的分类      从路由算法能否随网络的通信量或拓扑自适应的进行调整变化来分,可以分为两类. ...

  5. 5.IP选路,动态选路

    1.静态IP选路 1.1.一个简单的路由表 选路是IP层最重要的一个功能之一.前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据包的IP地址来选择路由.这里就不重复了.首先来看看一个简单的系统 ...

  6. TCP/IP学习20180805-数据链路层-IP选路

    转,原文链接https://blog.csdn.net/wh1511995112/article/details/51474692 IP选路 什么是IP选路? IP选路,即IP寻路,就是根据路由表中的 ...

  7. TCP/IP学习笔记(5)------IP选路

    静态IP选路 一个简单的路由表 选路是IP层最重要的一个功能之一.前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据包的IP地址来选择路由.这里就不重复了.首先来看看一个简单的系统路由表. D ...

  8. route-显示并设置Linux内核中的网络路由表

    route命令 网络配置 route命令用来显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由.要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两 ...

  9. route---设置Linux内核中的网络路由表

    route命令用来显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由.要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现. 在L ...

随机推荐

  1. 2017.10.29 C/C++/C#程序如何打成DLL动态库

    C/C++程序如何打成DLL动态库: **1.在VS中新建main.h,添加如下内容:** extern "C" _declspec(dllexport) int onLoad() ...

  2. Mac 修改用户环境变量

    Mac 修改用户环境变量 sudo vim ~/.bash_profile

  3. prepareStatament和Statement和callableStatement的区别

    关系与区别 Statement.PreparedStatement和CallableStatement都是接口(interface) Statement 1.Statement接口提供了执行语句和获取 ...

  4. 第一个C#程序Hello World

    一.编写第一个C#程序——Hello World1. 启动Microsoft Visual Studio 2010.2. 点击“文件”菜单,选择“新建”项,在弹出的子菜单中选择“项目”命令.3. 弹出 ...

  5. java基础必备单词讲解 day three

    if 如果 else 否则 switch 切换判断 case 实例 break 退出 return 返回 default 默认 variable array 数组 null 空的 无效的 pointe ...

  6. JavaScript: window.onload = function() {} 里面的函数不执行

    问题:写了一个最简单的页面.在script标签中使用的 window.onload = function() { function add() { //... } } 页面上:<div oncl ...

  7. JS浏览器的三种弹框:

    1.alert:使用alert弹框提示信息,最后都会被转化为字符串输出(因为调用了toString这个方法).比如alert(1+1)弹出的结果应该是字符串形式的“2”. 2.Confirm:在ale ...

  8. POJ的层次感分类

    转载自:[http://blog.csdn.net/zzycsx/article/details/49103451] OJ上的一些水题(可用来练手和增加自信)  (poj3299,poj2159,po ...

  9. UOJ#179. 线性规划(线性规划)

    描述 提交 自定义测试 这是一道模板题. (这个题现在标程挂了..哪位哥哥愿意提供一下靠谱的标程呀?) 本题中你需要求解一个标准型线性规划: 有 nn 个实数变量 x1,x2,…,xnx1,x2,…, ...

  10. poj_3696_The Luckiest number

    Chinese people think of '8' as the lucky digit. Bob also likes digit '8'. Moreover, Bob has his own ...