欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

计算机网络主之网络层

程序员文章站 2022-03-11 09:00:28
...

计算机网络之网络层

网络层基础

的使用场景下,所有的网络层设备应该遵循的标准,配合完成某项网络层的功能。协议之间也有依赖关系,IP协议依赖于ARP协议。

  • IP协议

  • ARP协议

  • ICMP协议

  • IGMP协议

ARP协议
APR定义

ARP(Address Resolution Protocal)地址解析协议:根据IP地址获取实际上的物理地址(Mac地址),但仅仅限于局域网内部,用来确认消息数据应该发送到哪台主机上(Mac地址)。

ARP执行流程
  1. 主机A需要发送数据到局域网内部的主机B,A会首先将包含目标IP地址的请求广播到局域网上的所有主机,局域网内部的所有主机接受到此消息后,对比消息中的目标IP地址和自身的IP地址,如果相同,则返回自己的Mac地址给A主机。
  2. 主机A接受到B返回的Mac地址后,将B的IP地址和Mac地址缓存到本地并保留一段时间,下次发送时直接从缓存中就可以查到目标B地址的Mac地址,从而可以直接发送数据。
ARP欺骗

APR协议的执行过程默认信任局域网内的所有服务器,但是如果主机A访问主机B,向局域网内的所有主机发起ARP广播,主机C冒充主机B,返回自己的Mac地址,那么以后主机A发送给主机B的消息都会发给主机C。这就是ARP欺骗。

ARP命令
arp -a  //查看本机的ARP缓存
arp -s 192.168.10.1 08-60-83-e8-d0-ce //指定某个IP地址对应设备的mac地址,指定后就不需要arp协议广播获取了
ICMP协议
ICMP定义

ICMP协议(Internet Control Message Protocol),internet控制报文协议,作用是检测网络故障,确认两个IP地址之间的联通性。

TTL

TTL(TIME TO LIVE):TTL字面意思是存活时间,实际上指的是一个网络包在网络上通过的最大的网段数量,TTL是IP协议报文中一个8 bit的字段。IP数据包在网络上每经过一个路由器转发(网段),TTL减1,如果减为为0,则此数据包会被路由器丢弃。TTL最大的作用是避免IP数据包在网络上死循环,无线转发,节省网络资源。

常用命令
ping命令:Packet Internet Grope,因特网包嗅探器,用于测试网络连接量的程序。ping程序会发送一个ICMP回声请求消息,并监测是否可以收到回应。
ping -t 192.168.1.1 // 永远ping下去
ping -n 10 192.168.1.1 //指定ping的次数
ping -i 1 102.168.1.1 //指定TTL的数量(TTL可能被耗尽)
ping -l 64 1 102.168.1.1//指定数据包的大小

1.ping请求超时,代表着发送的数据包可以到达目标服务器,但是无法返回数据包(原因可能很多)
2.ping目标不可达,代表者发送的数据包无法到达目标服务器(可能由于发送路径的路由器无法确定转发路径,路由表中没有)

pathping命令(windows支持):跟踪网络报的转发路径,显示的轨迹路径更详细
tracert命令(都支持):跟踪网络包路径

IGMP协议
IGMP定义

IGMP:Internet Group Managment Protocol。因特网组播协议,该协议运行在主机和组播路由器之间。即在局域网内发送一分数据,所有局域网内的其他计算机都可以收到消息,但是对于发送的这一方,只需要发送一份。IGMP是配置在路由器上,路由器会定时监控局域网内的服务器是否绑定了此多播,如果绑定了就给这些主机发送对应的消息。

  • 单播(点对点):一台主机发送信息到另一台主机
  • 广播(点到所有节点):局域网内的一台主机A发送消息,局域网内的所有其他主机都可以接受这个消息,主机A只需要发送一份即可
  • 组播(多播点到部分绑定节点):局域网内一台主机A(路由器)发送消息,那么绑定了A地址其他主机可以收到对应消息(可选择绑定或者不绑定),IGMP协议使用组播。
IP协议
  • 静态路由:由网络管理员手动配置某个网段如何转发,需要管理员手动配置所有未与该路由器直连的网络路由规则,即要到某个未直连的网咯下一跳给哪个路由器,这种方式配置的路由器

  • 动态路由:路由器自己根据RIP协议,周期性向与自己直接连接的路由器发送自己可以到达的网段,通过这种方式,让路由器学习到达某个网段的所有路由路径。

  • 路由的注意点:每个路由器需要配置到目标网段的路由规则(下一跳往哪里跳),只要不是与路由器直接相连的网路,都需要配置。

    **例如路由器A到192.169.5.0网段,需要经过过192.169.2.0、192.169.3.0、192.169.4.0 三个网段的路由器,**A可以ping通192.169.5.0,并不意味着,A可以ping通192.169.4.0 ,因为192.169.2.0网段配置了到192.169.5.0网段路由规则,但是不一定配置了到192.169.4.0 网段的路由规则,这种情况下192.169.2.0不知道到192.169.4.0如何走。

IP协议报文

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TzFymOCo-1591524063117)(https://gitee.com/perfectisshit/piccloud/raw/master/img/20200606175402.png)]