假装网络工程师1——TCP/IP上下层接口与静态路由

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了假装网络工程师1——TCP/IP上下层接口与静态路由相关的知识,希望对你有一定的参考价值。

一、背景介绍

总所周知,公有云最难理解的部分在于网络,从事了公有云之后才发现自己的网络差的还很远,干脆从头回炉修炼,既然是从头修炼就从最基础的开始,当然也只是补充以前理解不透彻的地方,闲言少叙,言归正传。

二、TCP/IP模型

所有关于TCP/IP模型的书上都会提到下层为上层服务,此处重点介绍上下层之间的接口。以ip地址为例,网络层如何知道物理层传递过来的究竟是ipv4还是ipv6,此时就需要用到网络层与物理层之间的类型进行区分,0X0800表示需要网络层处理的地址为ipv4,0X86DD则表示ipv6,类似的层与层之间都需要通过接口来向上一层传递信息。如:网络层与传输层需要通过协议号传递,传输层与应用层需要
技术图片
此处以一个ping实验来说明物理通过协议号向网络层传递信息,拓扑如下图所示:
技术图片
通过路由器R1去ping路由器R2,此时在R2的GE0/0/0口抓包就能看到0X0800类型代表了ipv4
技术图片

三、静态路由

此处的静态路由也只阐述以前理解不透彻的地方,通过几个实验进行说明。

1.实验1

拓扑如下图所示:
技术图片
如果希望12.0.0.1/24能ping通34.0.0.4/24地址去方向需要做如下设置:

[R1]ip route-static 34.0.0.0 24 12.0.0.2  
[R2]ip route-static 34.0.0.0 24 23.0.0.3  

此时,数据包就能正常到达R4路由器,之所以R3路由器不需要进行设置,是因为34.0.0.0/24网段是R3路由器的直连网段,此处引出了==第一个重点==:路由器之间互联的接口处于同一个广播域。路由去往目标地址,只需要到达该地址直连网段的路由器即可。
技术图片
同理,数据返回的静态路由只需要在R3,R4上进行配置。

[R4]ip route-static 12.0.0.0 24 34.0.0.3  
[R3]ip route-static 12.0.0.0 24 23.0.0.2  

2.实验2

假设此时拓扑变成如下图所示:
技术图片
如果希望1.1.1.1/24能ping通2.2.2.2/24,在数据包发送方向路由器上的配置如下:

[R1]ip route-static 2.2.2.0 24 12.0.0.2  
[R2]ip route-static 2.2.2.0 24 23.0.0.3  
[R3]ip route-static 2.2.2.0 24 34.0.0.4  

数据包返回方向路由器配置如下:

[R4]ip route-static 1.1.1.0 24 34.0.0.3  
[R3]ip route-static 1.1.1.0 24 23.0.0.2  
[R2]ip route-static 1.1.1.0 24 12.0.0.1  

配置完后此时在R1上ping2.2.2./24发现不通
技术图片
查看路由器确认配置正确,此时引出了==第二个重点==:默认的源地址是与网关在同一网段的地址,具体到本例,ping操作的源地址是12.0.0.1/24
技术图片
由于R4上没有配置到12.0.0.0/24网段的静态路由,所以数据包无法返回
技术图片
尽管R1上没有23.0.0.0/24网段的静态路由但他不影响1.1.1.1/24与2.2.2.2/24地址间的正常通信
技术图片

以上是关于假装网络工程师1——TCP/IP上下层接口与静态路由的主要内容,如果未能解决你的问题,请参考以下文章

OSI模型TCP/IP模型

假装网络工程师11——ospf路径选取详解

《TCP/IP具体解释卷2:实现》笔记--接口层

网络基础OSI七层模型与TCP/IP模型

华为软件测试工程师面试题

3.4 TCP/IP体系结构各层协议