12.27每日讨论:网络层
12.27今日讨论:梳理网络层
1:网络层的核心功能有哪些
一个是路由一个是转发,转发是将数据从本地路由器传到目的地址的路由器;
路由是选择这其中经过的路由器,根据路由算法选择。
2:说说你知道的哪些关键 IP 首部字段
首部长度,区分服务,标识,片位移,标志
3:ARP 是什么?解决什么问题 ?具体过程 ?
ARP是网络层的地址解析协议,用来解决同一个局域网内的主机或路由器的ip和硬件地址的映射问题,
说白了就是知道ip地址求硬件地址的协议。
过程:
(1)首先,若主机A有的ARP高速缓存中有主机B的ip地址时,则直接把硬件地址写入MAC帧,
通过局域网把此MAC帧传送此硬件地址,这是网络层以下做的事了。
(2)若主机A找不到主机B的ip地址,此时主机A将在本局域网内发送广播(一个ARP请求:寻找主机B的
硬件地址),所有主机都会接收到此请求,但只要主机B会将自己的硬件地址响应回主机A(单播)。
(3)主机A收到响应后将主机B的硬件地址写入到自己的ARP高速缓存中,而且很有可能主机B也会向主机A发送数据
所以主机B也会将主机A的硬件地址保存到自己的高速缓存中以减少网络上的通信量。
4:常见有哪些路由算法,有什么区别?
ospf和isis典型的链路状态型协议,都是LSA通告,同步LSDB,老化,而且收敛速度非常快。他们有
两点不同,区域边界和骨干区域,ospf有ABR,但isis路由器只能属于一个边界;ospf只有area 0 是骨干
区域,但isis所以level2和level-1-2构成了骨干网。
5:网络层设备?如何进行路由转发?
路由器,三层交换机,防火墙。
路由转发:(这里直接复制以前总结的笔记了)
一个简单的网络拓扑:主机0&主机1————交换机————路由器0————路由器1————主机2
主机ip配置需要配置主机ip地址,子网掩码和默认网关。ip地址就是这台主机的地址,子网掩码是一个网段,代表该主机在哪一个网络当中,默认网关是告诉该主机访问别的网络应该找哪个路由器接口将数据包转发出去(即一个网络的出口)。
每一个路由器都有一个路由表,路由表的作用是存储转发,其中路由器左右两个接口是连接两个不同的网段,是默认存储在路由表中的。存储形式如下:连接的网络——路由器端口(将数据包通过这个接口转发到目的网络)。
数据的传输是遵循ICMP协议的,是双向连通的(知道怎么到,也要知道怎么回来)。你发数据给目的ip地址,对方也需要返回确认信息给你。所以可以使用静态路由设置,告诉对方你的网段,将数据转发到哪个路由器端口(路由器该端口ip地址)。ICMP应答类型:0是正常应答,8是对方的请求包返回的应答,3代表传输出现了错误。
若主机0想ping主机2(需要知道主机2的网络):
(首先在同网络查看ARP有无目的ip地址,有则将IP地址转换成MAC地址进行转发,找到该网络的出口进行转发)由于两个主机是不同的网络,则应先设置主机0的默认网关(路由器0右端口:该网络出口),然后数据包传到路由器0处。
此时路由器0并不知道主机2的目的网络在哪里,所以此时应该在路由器0添加一条静态路由(通过路由器1左端点转发到主机2所在网络)
于是,路由器0将发送信息数据包转发到了路由器1,路由器1查看其路由表,发现目的网络通过其右端点可转发到达。
此时数据包到达了主机2的所在网络,在该网络内通过查看数据表内目的ip地址查到到了主机2的MAC地址,并将数据包发送给了主机2。但此时主机2是不知道如何应答的,主机2收到的是主机0的发送数据包,而主机2并不知道主机0的网络在哪。
因为主机2接收到的是另一个网络的信息了,所以此时要给主机2配置默认网关(路由器1右端点ip地址),告诉他怎么走出主机2所在网络。于是返回确认信息的数据包从主机2发送到了路由器1。
返回确认数据包里有目的网络(源地址和目的地址此时已相反),而路由器1刚刚也配置了到目的网络的静态路由,所以此时路由器1将数据表发送给了路由器0。而目的路由刚好在路由器0的一端(路由器两端为默认路由,自动添加到路由表中),所以不需要配置静态路由。
于是返回确认信息数据表回到了主机0的网络,于是查看本网络的ARP协议找到了主机0的ip地址,ARP表上有主机0的MAC地址,最终经历九九八十一难返回确认数据表到了主机0。全剧终。