《TCP/IP 详解 卷一》读书笔记-----IP静态 路由
1、主机中的路由表只能被守护进程routing daemon或者“redirect”类型的ICMP报文所更新。
2、在根据路由表进行路由选择时,判断的优先级从高到低依次为1)表中存在与目的IP完全匹配的表项2)表中存在与目的地址的网络地址匹配的表项3)表中存在default,即默认路由表项。经历上述三个步骤仍未匹配成功的,则丢弃该数据报。
3、netstat指令用于查看主机的路由表,如下图所示:

其中Gateway的“0.0.0.0”表示目的主机与当前主机在同一网段中,可直接到达,无需网关进行转发。Destination和Genmask都为“0.0.0.0”表示该表项为default gateway。而Flags字段除了上述的U,G以外还有其他的标识。
U表示该路由表项正在使用,是有效的
G表示目的主机并非与当前主机直接相连,需要通过网关转发到达,即间接路由(indirect routing)。
H表示该目的地址是一个主机完整的IP地址,否则则为网络地址
D表示该路由表项是通过"redirect"得到的
M表示该路由表项经过了“redirect”的修改
4、IP数据报经过路由表匹配后如果没有成功,则分两种情况进行处理:1)若该数据报是主机自己产生的,则给相应的进程返回一个“host unreachable”或“network unreachable”的错误,2)若仅仅只是转发这个数据报,则给该数据报的源主机发送一个“host unreachable”或“network unreachable”的ICMP。
5、ICMP redirect error:所谓的“redirect”重定向是指,A通过B给C发了个数据报,但是A和C其实在同一个网段中,A可以直接和C交互,这时B就会给A发送一个“redirect”类型的ICMP,要求A添加直接到C的路由表项。至于B是如何判断什么时候应该发送“redirect”的ICMP呢?其实只要满足B转发的数据报的入口和出口是同一个网卡接口时就可以了,这就说明了通过B的转发是完全没有必要的。这里需要注意的是,重定向添加的路由表项必然是到主机的路由,即Flags是有H标记的。因为产生重定向的ICMP的路由器对子网结构是不清楚的。
6、路由重定向的一个好处是,在开始配置主机路由表时不用配置太复杂的表项,因为在接下来的运行过程中可以通过重定向来不断优化。
7、ICMP Router Discovery Messages:除了读取配置文件,静态初始化路由表以外,我们还可以通过主机和路由器间护发“advertisement ”和“solicitation ” message的方式。当主机初始化的时候,它会广播一个solicitation message,听到这个消息的路由器就会发送advertisement message作为回应,希望将自己作为主机的默认网关。如果有多个路由器回应,则根据系统管理员的配置,从中选择一个。而且路由器大概会每隔十分钟发送一个advertisement message,使主机中的默认路由选项不会过期。如果超过了30分钟,主机还没有收到与当前默认路由相应的advertisement message,则该默认路由选项过期。
《TCP/IP 详解 卷一》读书笔记-----IP静态 路由的更多相关文章
- 《TCP/IP详解》读书笔记
本书以UNIX为背景,紧贴实际介绍了数据链层.网络层.运输层 一.整体概念 1.各层协议的关系,只讨论四层 各层常见的协议: 网络层协议:IP协议.ICMP协议.ARP协议.RARP协议. ...
- TCP/IP详解 卷一学习笔记(转载)
https://blog.csdn.net/cpcpcp123/article/details/51259498
- 『TCP/IP详解——卷一:协议』读书笔记——10
2013-08-22 22:57:17 3.8 ifconfig命令 这个命令在Linux系统下可以通过下面的指令阅读说明文档: ifconfig 由于书中作者用的系统比较早的某Unix系统,所以我的 ...
- 『TCP/IP详解——卷一:协议』读书笔记——01
从今日起开始认真研读TCP/IP详解这本经典制作,一是巩固我薄弱的计算机网络知识,二来提高我的假期的时间利用率.将心得与思考记录下来,防止白看-哦耶 2013-08-14 18:47:06 第一章 概 ...
- 【TCP/IP详解 卷一:协议】第二章:链路层
2.1 引言 链路层的三个目的: (1)为IP模块发送和接收IP数据报. (2)为ARP模块发送ARP请求和接收ARP应答.地址解析协议:ARP. (3)为RARP模块发送RARP请求和接收RARP应 ...
- 『TCP/IP详解——卷一:协议』读书笔记——02
2013-08-16 20:07:11 1.3 TCP/IP的分层 这是一个很好的图,要多看!!图上有些细节会在今后的笔记中提到,看不懂不必深究. IP是网络层上的主要协议,同时被TCP和UDP(这两 ...
- 『TCP/IP详解——卷一:协议』读书笔记——11
2013-08-23 20:00:18 第4章 ARP:地址解析协议 4.1 引言 ARP(Address Resolution Protocol,地址解析协议)是获取物理地址的一个TCP/IP协议. ...
- 《TCP/IP详解 卷一》读书笔记-----广播&多播&IGMP
1.广播和多播都只适用于UDP,因为TCP是面向连接的,需要将两台主机的两个进程绑定在一起,即IP地址和端口对 2.通常,网卡能看到网络中的每一个数据帧,但是往往它只接受目的地址与自己MAC地址相同的 ...
- 【TCP/IP详解 卷一:协议】第一章概论 学习笔记
第一章 概述 游览了一下,本章主要是简介OSI模型的低层(1-4层).介绍了TCP/IP协议族的相关知识. TCP/IP的分层 Application <--> TCP / UDP < ...
- 【TCP/IP详解 卷一:协议】第十一章 UDP 用户数据报协议
11.1 引言 UDP 是一个简单的 面向数据报 的运输层协议:进程的每个 输出操作 都正好产生一个 UDP数据报,并且组装成一份待发送的IP数据报. 这与 TCP 不一样,它是 面向流字符 的协议, ...
随机推荐
- mysql启动不起来了!
[root@iZ28r2sl9qkZ data]# service mysqld restartMySQL server PID file could not be found! [FAILED]St ...
- 泛函编程(13)-无穷数据流-Infinite Stream
上节我们提到Stream和List的主要分别是在于Stream的“延后计算“(lazy evaluation)特性.我们还讨论过在处理大规模排列数据集时,Stream可以一个一个把数据元素搬进内存并且 ...
- 配置了<mvc:resources> 导致以前的controller 无法访问。
解决方案: <mvc:annotation-driven/>
- 初学者对WAMP服务器的设置
服务器设置 在wamp/bin/apache/Apache###/conf/httpd.conf文件中设置 根文件夹 修改documentroot和directory两项 保存后重启服务 404返回值 ...
- 利用javascript、php和ajax实现计算器
计算器和ajax部分: <?php /** * Created by PhpStorm. * User: Administrator * Date: 16-9-2 * Time: 上午9:20 ...
- hadoop2.2.0伪分布式搭建2--安装JDK
2.1上传FileZilla 上传 https://filezilla-project.org/ 2.2解压jdk #创建文件夹 mkdir /usr/java #解压 tar -zxvf jdk-7 ...
- H5前端面试题及答案(1)
前几天去面试了一家公司,整下改公司的面试题. 1.新的 HTML5 文档类型和字符集是? HTML5 文档类型很简单: <!doctype html> HTML5 使用 UTF-8 编码示 ...
- Thread.CurrentPrincipal & HttpContext.Current.User
据说要这样写才稳妥 // This principal will flow throughout the request.VoyagerPrincipal principal = new Voyage ...
- 用doxygen+graphviz自动化生成代码文档(附详细教程)
一.引子 用这两个工具可以自动的遍历代码,并且产生代码文档,我们先来看看效果,然后放出这两个工具的下载地址. 二.工具的下载地址 doxygen:http://www.stack.nl/~dimitr ...
- java多线程系列5-死锁与线程间通信
这篇文章介绍java死锁机制和线程间通信 死锁 死锁:两个或两个以上的线程在争夺资源的过程中,发生的一种相互等待的现象. 同步代码块的嵌套案例 public class MyLock { // 创建两 ...