:网络层

Posted capf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了:网络层相关的知识,希望对你有一定的参考价值。

网络层功能

定义了基于IP协议的逻辑地址

连接不同的媒介类型

选择数据通过网络的最佳路径

ICMP协议

ICMP协议(Internet control Message Protocol)的全称是"Internet控制消息协议"主要用于在IP网络中发送控制消息,提供可能发生在通信环境中的各种问题的反馈

例如,当路由器收到一个不能被送到最终目的地的数据包时,路由器会向源主机发送一个ICMP主机不可达的消息

 

ICMP原理

ICMP协议属于网络层协议

传输ICMP信息时,要先封装ICMP头部

然后再封装IP头部

最后再交给数据链路层

ICMP协议的使用

ping命令的返回信息在检查网络连通性时,ping命令是用得最多的当我们ping一台主机时,本地计算机发出的就是一个典型的CMP数据包,用来测试两台主机是否能够顺利连通

ping命令能够检测两台设备之间的双向连通性,即数据包能够到达对端,并能够返回

 

ping命令的基本格式

-t 参数会一直不停的执行ping(持续测试连通性时候使用)

ctrl+c 终止

-a 参数可以显示主机名称

-l 参数可以设定ping包的大小(字节,测试通信质量)

用法

C:\>ping  [–t] [-l 字节数] [-a] [-i] IP_Address| target_name

 

ping (网络诊断工具)

因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP(因特网信报控制协议);回声请求消息给目的地并报告是否收到所希望的ICMPecho(ICMP回声应答)。它是用来检查网络是否通畅或者网络连接速度的命令。

Ping是Windows、Unix和Linux系统下的一个命令。ping也属于一个通信协议,是TCP/IP协议的一部分。利用“ping”命令可以检查网络是否连通,可以很好地帮助我们分析和判定网络故障。

TTL(生存周期值)

TTL是IPv4包头的一个8 bit字段,TTL的最大值是255,TTL的一个推荐值是64

TTL是IP数据包在计算机网络中可以转发的最大跳数。TTL字段由IP数据包的发送者设置,在IP数据包从源到目的的整个转发路径上,每经过一个路由器,路由器都会修改这个TTL字段值,具体的做法是把该TTL的值减1,然后再将IP包转发出去。如果在IP包到达目的IP之前,TTL减少为0,路由器将会丢弃收到的TTL=0的IP包并向IP包的发送者发送 ICMP time exceeded消息。

 

TTL的主要作用

避免IP包在网络中的无限循环和收发,节省了网络资源,并能使IP包的发送者能收到告警消息

TTL值100-130之间主机为windows

TTL值240-255之间主机为linux或Unix

 

不同的操作系统,它的TTL值是不相同的。默认情况下:

Linux系统的TTL值为64或255

Windows NT/2000/XP系统的TTL值为128

Windows 98系统的TTL值为32

UNIX主机的TTL值为255

 

ARP协议

Address Resolution Protocol,地址解析协议,将一个已知的IP地址解析成MAC地址

 

ARP解析过程

A主机要同网段的B主机做通信,A主机首先会查本机缓存中有没有B主机的mac地址,如果没有,A主机发送arp请求(广播),同个网段中的机器收到广播后会查看请求的是否是自己的IP地址,如果是自己的IP地址,则吧自己mac地址以单播形式发送给主机A,主机A再进行包的组装,主机内的缓存不是永久保留的

 

以上是关于:网络层的主要内容,如果未能解决你的问题,请参考以下文章

(网络安全)主动信息收集 第三层网络层

计算机网络 华南理工大学期末重点 第三章 数据链路层 谢希仁

第三章 计算机网络-数据链路层

第三章 TCP/IP简介

计算机网络第三章:数据链路层

韩立刚计算机网络——第三章:数据链路层