计算机网络复习-网络层
网络层提供的两种服务
网络层的两种服务:虚电路服务和数据报服务。
网际协议IP
虚拟互连网络
路由器的功能到三层截止。只有权力发,没有权力查看数据。
分类的IP地址
IP地址是网络层地址(4个字节),MAC地址是物理地址(6个字节)。
如何求网络地址:将ip地址与子网掩码相与就是网络号
若IP地址为130.16.5.8,子网掩码为255.255.0.0,网络号为130.16.0.0
IP地址的一些特点
路由器的作用是连接不同网络,所以路由器的每个接口要的IP要在配置不同的网络,如果配置相同的网络号的IP,根本配置不上去。
如果注意H1要给H2发送IP数据包,首先源IP和目标IP在传播过程中一直不改变,然后从网络层到数据链路层要进行封装帧,给IP数据包在局域网中的传输加上MAC地址,所加MAC地址要注意看是在哪个局域网中,不能盲目地将目标MAC地址写为目标主机的MAC地址,要根据局域网中的传输,找到局域网中路由器的某个接口对应的MAC地址,IP数据包传送到路由器之后,先经过数据链路层脱去MAC的帧头帧尾,然后上传到路由器的网络层,网络层得到的就是IP帧格式,然后通过查找路由表,找到该目标IP地址所在的网络,然后为后一次传输(局域网中的传输)做好MAC的封装准备,同前一次一样,要注意源MAC地址和目标MAC地址。
路由器只根据目的站的 IP 地址的网络号进行路由选择
路由器R1的左接口是主机H1的网关,那么主机H1是怎么知道自己的网关ip地址的呢?————>ipconfig可以查看默认网关即网关地址,即在配置得到ip的时候,就知道自己的网关了。
主机如何从服务器得到ip呢?————>DHCP动态主机配置协议。
但主机H1又怎么知道自己网关的MAC地址的呢?————>ARP协议。
主机为什么要传给自己的网关呢?————> 不在同一网络的通信只能交给网关。这句话可以解释主机为什么要传给网关然后到其他网络,而不是在自己局域网内迷茫地找寻。
主机怎么知道自己IP和目标IP在不在同一个网络下?
用主机自己的子网掩码和目标IP相与,得到一个网络号,观察这个网络号和自己IP在不在一个网络下即可发现。
插曲,为什么A类地址的网络掩码可以是255.255.0.0 ——>查ipconfig发现的。
原因:因为255.0.0.0包含了255.255.0.0,也就是说8为掩码可以涵盖16位掩码,比如你的ip为10.69.125.104,你的默认网关为255.255.0.0,就表示需要检查前两位,必须是10.69.xx.xx才能访问你的网卡,而10.69.0.0又正好是这个网络的网络号,也就意味着要在同一个局域网下才能互相访问网卡。如果你的默认网关为255.0.0.0,那么意味着只用检查第一位,只要是10.xx.xx.xx就能访问你的网卡,而10.0.0.0正是这个网络的网络号,同理。。。(后面知道这个是子网划分的内容,上面的阐述应该也算正确)
地址解析协议ARP
ARP 作用:
从网络层使用的 IP 地址,解析出在数据链路层使用的硬件地址。
发送的是MAC帧,帧中的类型字段为0806H,数据内容就是ARP请求包。
**注意:**ARP只在本局域网工作。与外面网络没有任何关系。路由器不会转发ARP请求
ARP工作过程
点对点协议PPP中是用 串口直接通信,不是用MAC地址通信,存在不同的地址问题。
路由器是按照路由表工作的。
交换机是按照交换表工作的。
了解:arp攻击
IP数据报的格式
同一个标识标识,属于同一个数据报
片位移是为了将数据报拆散之后,当要重新组合成一个大数据报时,能找到前后的关联顺序,谁在前面,谁在后面由片位移决定。
IP层转发分组的流程
现在确定要H1向H2发送数据报,主机H1先通过计算,判断这个目的IP在外网(该局域网外),所以要通过路由器转发,因此要去找路由器,但是并不知道路由器的MAC地址,但知道路由器的IP地址(在主机的路由表中有)。因此主机H1通过ARP协议,然后问的应该是,对局域网内所有的主机进行提问:“我是主机H1,我的IP地址是xx.xx.xx.xx,MAC地址是xx.xx.xx.xx.xx.xx,谁是IP为yy.yy.yy.yy的主机(这个yy.yy.yy.yy不是IP数据报中的目的IP,而是路由表中路由器的IP)?你的MAC地址为多少”。然后路由器告诉主机H1自己的MAC地址。
然后路由器R1得到这个MAC帧之后,首先进行解封装,得到IP数据报,然后通过目的IP得到网络号,再根据路由表查询到对应的下一跳地址(即同一局域网下的另一个路由器的端口的IP地址)。如果该路由器和下一个路由器之间是PPP协议,那么就不用进行ARP协议得到MAC地址,PPP帧格式的首部首先是广播地址,因为是点对点,所以采用广播地址就能到达对点。如果该路由器和下一个路由器之间是以太网,那么就要首先根据已得到的下一跳的IP地址通过ARP协议进行广播得到下一个路由器的MAC地址,然后进行传输。
划分子网
注意 :划分子网之后,每个子网段的第一个地址(主机号为全0)为网络地址,最后一个地址(主机号为全1)为广播地址。
划分子网的时候能随意划分吗 比如192.168.1.0-192.168.1.255为一个子网,并且这个子网的子网掩码为255.255.255.0;122.168.2.0-122.168.3.255为一个子网,这个子网的子网掩码为255.255.0.0?或者说分开 122.168.2.0是一个子网,122.168.3是一个子网,他们合成一个大子网,但实际上不是一个子网,网络掩码还是255.255.255.0?
注意:如果192.168.1.0是19.2.168.0.0的一个子网,那就说明我们将192.168.0.0这个网络划分成了254个子网(256减去网络地址和广播地址),因此192.168.1.0的子网掩码只能为255.255.255.0和192.168.2.0是两个子网,并且子网掩码都为255.255.255.0,因此如果我们一个部门有255台主机,那么一个子网的ip就不够分配,需要人为认定另外一个子网中的一个ip分给该部分。
(后面发现也可以随便分。。。子网掩码也可以不同)
在子网划分的情况下路由器怎么转发分组
为什么有子网划分路由器转发分组的情况就不一样了呢?因为传统网络(未划分子网的)本来是一个大网络,根据网络号就可以找到对应的那个网络,现在划分子网之后,要在大网络之下还要找到更细更小的网络,根据之前的路由表中的选项只能得到那么大网络,如果要得到小网络还要进行更细的确认。
原来得到网络地址的办法是直接相与就找到网络号了。现在子网划分之后,必须用目的IP对每个网络的子网相与,原来一个IP对应一个子网掩码(根据类别就三类),现在一个IP可能对应的就不是那个固定的子网掩码了,因此要都要相与。
DHCP动态主机配置协议
当主机加入IP网络,允许主机从DHCP服务器动态获取IP地址
网络地址转换
ICMP协议(网际控制报文协议)
应用:ping和路由跟踪
路由选择协议
内部网关协议RIP
RIP路由协议在上面的使用过程如下,路由器R6的路由表接收到R4发送来的路由更新信息,Net1为R6中没有的路由,直接添加进去;如果下一条路由器一样(这里Net下一条路由器都为R4),Net2会更新为最新的接收到的消息,尽管原来的距离更小;Net3被更新是因为接收到的消息中下一条路由器发生了变化,使得距离更加短了,RIP会采用更短的一条路由。
内部网关协议OSPF
为了克服RIP的一些缺点开发出来。
RIP:只和邻居交换信息(路由表)。
OSPF:向全网通告自己的链路状态信息。(想法得到网络拓扑图)
OSFP直接用IP数据报传送,而不用UDP传送。
Dijkstra算法
图论:Dijkstra算法——最详细的分析,图文并茂,一次看懂!-CSDN博客
随便找的一个解释。
注意:迪杰斯特拉算法注意的点是,要将什么点加入路径中,取决的是,已经加入路径中的点到达该点的路径是其中最短的。
外部网关协议BGP
略。文章来源:https://www.toymoban.com/news/detail-834585.html
典型的路由器结构
文章来源地址https://www.toymoban.com/news/detail-834585.html
到了这里,关于计算机网络复习-网络层的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!