协议森林06 瑞士军刀 (ICMP协议) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 到现在为止,我们讲解了网络层中最重要的IP协议(参考协议森林).IP协议的一个重要补充是是ICMP协议. ICMP协议 ICMP(Internet Control Message Protocol)是介于网络层和传输层的协议.它的主要功能是传输网络诊断信息. ICMP传输的信息可以分为两类,一类是错误(error)信息,这一类信息可用来诊…
协议森林13 9527 (DNS协议) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在周星驰的电影<唐伯虎点秋香>中,周星驰饰演的主角一进入华府,就被强制增加了一个代号9527.从此,华府的人开始称呼主角为9527,而不是他的姓名. 域名(domain name)是IP地址的代号.域名通常是由字符构成的.对于人类来说,字符构成的域名,比如www.yahoo.com,要比纯粹数字构成的IP地址(106.10.170.118…
协议森林07 傀儡 (UDP协议) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们已经讲解了物理层.连接层和网络层.最开始的连接层协议种类繁多(Ethernet.Wifi.ARP等等).到了网络层,我们只剩下一个IP协议(IPv4和IPv6是替代关系).进入到传输层(transport layer),协议的种类又开始繁多起来(比如TCP.UDP.SCTP等).这就好像下面的大树,根部(连接层)分叉很多,然后统一到一个树干…
分析所用软件下载:Wireshark-win32-1.10.2.exe 阅读导览 1. 分析并且应用ARP协议 2.分析IP协议 3.分析ICMP协议 1.分析arp报文的格式与内容 (1)ping 172.18.3.132 的arp请求报文: 000108000604000100e04c512ae8ac12038e000000000000ac120384 物理网络类型Hardware type: 0001 - Ethernet (1) 协议类型Protocol type: 0800 - IP…
在TCP/IP协议族中,ICMP协议是一个介于网络层和传输层中间的一个协议,许多材料都会认为ICMP是网络层的一个部分,但是ICMP协议的报头是被包裹在IP协议之中的,而UDP协议又可以被ICMP协议包装,所以不妨认为它是在一个所谓的“中间层”. 一.首先看一下ICMP报文的类型来概括了解一下ICMP的主要功能: 当类型代码为0的时候,ICMP用于返回“不可达”差错:而当类型代码为5的时候,表示该ICMP报文表达“重定向”的操作.其余的类型代码皆可以和图中描述一一对应. 下列图是ICMP不同类型…
目录 一.IP协议的助手 —— ICMP 协议(网络层协议) 二.ping —— 查询报文类型的使用 三.traceroute —— 差错报文类型的使用 参考:从Wireshark抓包软件角度理解PING命令:https://juejin.im/post/5c15ec0f6fb9a049ec6af8b2 参考:ping好几年 ?今天终于把 ping 的原理搞懂了,打算图解教你! ping(Packet Internet Groper)是一个服务命令,它可以用来测试网络连通性.网络时延.根据域名得…
IP协议的助手 —— ICMP 协议 IP协议的助手 —— ICMP 协议 ping 是基于 ICMP 协议工作的,所以要明白 ping 的工作,首先我们先来熟悉 ICMP 协议. ICMP 是什么? ICMP 全称是 Internet Control Message Protocol,也就是互联网控制报文协议. 里面有个关键词 —— 控制,如何控制的呢? 网络包在复杂的网络传输环境里,常常会遇到各种问题.当遇到问题的时候,总不能死个不明不白,没头没脑的作风不是计算机网络的风格.所以需要传出消息…
作者:Vamei 出处:http://www.cnblogs.com/vamei 转载请先与我联系. DHCP协议用于动态的配置电脑的网络相关参数,如主机的IP地址,路由器出口地址.DNS域名服务器地址等.一台电脑只要接上网,就可以通过DHCP协议获得相关配置,从而顺利的畅游网络. 网络配置 电脑刚刚接上网络时,像一个走入一家新餐厅的食客,不免会有很多疑惑: “我该坐在哪里?” “我怎么点菜?” “我该如何结账?” 初入大饭店 如果顾客的问题长时间得不到解答,那么餐厅很可能失去这位客人.于是,餐…
ping命令是什么协议? 维基百科: ping是一种电脑网络工具,用来测试数据包能否通过IP协议到达特定主机.ping的运作原理是向目标主机传出一个ICMP echo@要求数据包,并等待接受echo回应数据包.程序会按时间和成功响应的次数估算丢失数据包率(丢包率)和数据包往返时间(网络时延). 可以知道,ping属于ICMP协议. ICMP属于哪一层? IP协议还缺少主机和管理查询所需要的机制.主机有时候需要判断某个路由或者是对方主机是否活跃.有时网络管理元也需要来自其他主机或路由的信息. 网络…
ICMP协议 IP不提供可靠的传输服务,也不提供端到端或点到点的确认,如果出错可以通过ICMP报告来看,它在IP模块中实现.TCP/IP协议设计了ICMP就是为了弥补IP协议的不足. 它是TCP/IP协议族的一个子协议,用于在IP主机.路由器之间专递控制消息.控制消息指网络通不通,主机可以否达,路由是否可用等.这些控制消息传递的并不是用户数据,但是对用户数据的传输起到了重要的作用. 作用:负责差错控制,拥塞控制,传输控制. 工作过程: ping是ICMP协议的工作过程. 本机发送一个ICMP E…
ICMP协议 ICMP是"Internet Control Message Ptotocol"(Internet控制消息协议)的缩写.它是TCP/IP协议族的一个子协议,用于在IP主机.路由器之间传递控制消息 ping命令 ping命令通常用来作为网络可用性的检查.ping命令可以对一个网络地址发送测试数据包,看该网络地址是否有响应并统计响应时间,以此测试网络. ping和ICMP的关系 ping命令发送数据使用的是ICMP协议. ping的原理 向指定的网络地址发送一定长度的数据包,…
主要内容: 1.ping的原理以及工作过程 2.ICMP协议 3.ICMP的应用:ping,traceroute 1.ping的原理以及工作过程  ping的原理  ping 程序是用来探测主机到主机之间是否可通信,如果不能ping到某台主机,表明不能和这台主机建立连接. ping 使用的是ICMP协议,它发送icmp回送请求消息给目的主机.ICMP协议规定:目的主机必须返回ICMP回送应答消息给源主机.如果源主机在一定时间内收到应答,则认为主机可达. ICMP协议通过IP协议发送的,IP协议是…
1.IMCP协议介绍 前面讲到了,IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达的工作应该由其他的模块来完成.其中一个重要的模块就是ICMP(网络控制报文)协议. 当传送IP数据包发生错误--比如主机不可达,路由不可达等等,ICMP协议将会把错误信息封包,然后传送回给主机.给主机一个处理错误的机会,这 也就是为什么说建立在IP层以上的协议是可能做到安全的原因.ICMP数据包由8bit的错误类型和8bit的代码和16bit的校验和组成.而前 16bit就组成了ICMP…
1. ICMP简介: ICMP全名为(INTERNET CONTROL MESSAGE PROTOCOL)网络控制报文协议,协议号为1,网络层协议. 它是TCP/IP协议族的一个子协议,用于在IP主机.路由器之间传递控制消息.控制消息是指网络通不通.主机是否可达.路由是否可用等网络本身的消息.这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用. ICMP协议是一种面向无连接的协议,用于传输出错报告控制信息. PING用的是ICMP协议,不是端口. 2. ICMP格式: 如下图…
ICMP协议: ICMP是IP层的一个组成部分,ICMP报文是在IP数据报内部被传输的,用于在IP主机.路由器之间传递控制消息.控制消息是指网络不通.主机是否可达.路由是否可用等网络本身的消息.这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用: ICMP报文类型分两种:查询报文.差错报文: ICMP报文格式如下,: 书中着重介绍了三种ICMP报文: (1)ICMP地址掩码请求与应答报文 (2)ICMP时间戳请求与应答报文 (3)ICMP端口不可达差错报文…
ICMP的全称是 Internet Control Message Protocol ,它是TCP/IP协议族的一个子协议,属于网络层协议,用于在IP主机.路由器之间传递控制消息.从技术角度来讲,就是让我们能够判断网络通不通.主机是否可达.路由是否可用等等. 在网络中,ICMP协议的应用随处可见,比如我们经常使用的用于检查网络通不通的Ping命令,这个“Ping”的过程实际上就是ICMP协议工作的过程.那么当你“Ping”时,具体的ICMP协议是怎么工作的呢? Ping命令 Ping命令利用IC…
ICMP协议 ICMP(Internet Control Message,网际控制报文协议)是为网关和目标主机而提供的一种差错控制机制,使它们在遇到差错时能把错误报告给报文源发方. ICMP协议是IP层的一个协议,但是由于差错报告在发送给报文源发方时可能也要经过若干子网,因此牵涉到路由选择等问题,所以ICMP报文需通过IP协议来发送. ICMP数据报的数据发送前需要两级封装:首先添加ICMP报头形成ICMP报文,再添加IP报头形成IP数据报. main.cpp : #include <stdio…
1.IMCP协议介绍 前面讲到了,IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达的工作应该由其他的模块来完成.其中一个重要的模块就是ICMP(网络控制报文)协议. 当传送IP数据包发生错误--比如主机不可达,路由不可达等等,ICMP协议将会把错误信息封包,然后传送回给主机.给主机一个处理错误的机会,这 也就是为什么说建立在IP层以上的协议是可能做到安全的原因.ICMP数据包由8bit的错误类型和8bit的代码和16bit的校验和组成.而前 16bit就组成了ICMP…
一.MTU 以太网和IEEE 802.3对数据帧的长度都有限制,其最大值分别是1500和1492字节,将这个限制称作最大传输单元(MTU,Maximum Transmission Unit)       如果IP层有一个数据报要传,而且数据的长度比链路层的MTU还大,那么IP层就要进行分片(Fragmentation),把数据报分成若干片,这样每一片都小于MTU.       当网络上的两台主机互相进行通信时,两台主机之间要经过多个网络,每个网络的链路层可能有不同的MTU,其中两台通信主机路径中…
ICMP协议的头结构 类型(8位) 代码(8位) 校验和(8位) 类型或者代码   (1)类型:一个8位类型字段,表示ICMP数据包类型. (2)代码:一个8位代码域,表示指定类型中的一个功能.如果一个类型中只有一种功能,代码域置为0. (3)检验和:数据包中ICMP部分上的一个16位检验和.…
1.ICMP协议IP协议不保证数据送达.则应有协议保证数据送达.ICMP就是其中的重要协议.ICMP:(Internet Control Messages Protocol)因特网信报控制协议当传送IP数据包发生错误--比如主机不可达,路由不可达等等,ICMP协议将会把错误信息封包,然后传送回给主机.给主机一个处理错误的机会.ICMP数据包由8bit的错误类型和8bit的代码和16bit的校验和组成.(32字节)ICMP报文分为两种:查询报文和差错报文. 2.ICMP协议应用-ping程序pin…
1.ICMP协议 1)ICMP协议,即:网络控制消息协议(Internet Control Message Protocol) 2)ICMP是网络层协议,因为ICMP报文是装在IP数据报中,作为它的数据部分发出去的,如图 3)ICMP协议用于报告网路差错和异常,如:网络通不通.主机是否可达.路由是否可用等 4)ICMP报文有两种类型:ICMP差错报告报文和ICMP询问报文 2.ARP协议 2.1概念 1) 地址解析协议ARP的作用就是根据目的主机的IP地址来获得其物理地址,因为将IP数据报封装到…
1.ICMP出现的原因 在IP通信中,经常有数据包到达不了对方的情况.原因是,在通信途中的某处的一个路由器由于不能处理所有的数据包,就将数据包一个一个丢弃了.或者,虽然到达了对方,但是由于搞错了端口号,服务器软件可能不能接受它.这时,在错误发生的现场,为了联络而飞过来的信鸽就是ICMP 报文.在IP 网络上,由于数据包被丢弃等原因,为了控制将必要的信息传递给发信方.ICMP 协议是为了辅助IP 协议,交换各种各样的控制信息而被制造出来的. 制定万维网规格的IETF 在1981 年将RFC7922…
ICMP协议简介 l  ICMP网际控制报文协议,通过它可以知道故障的具体原因和位置. l  由于IP不是为可靠传输服务设计的,ICMP的目的主要是用于在TCP/IP网络中发送出错和控制消息. l  ICMP的错误报告只能通知出错数据包的源主机,而无法通知从源主机到出错路由中途所的所有路由器. l  ICMP数据包是封装在IP数据包中的. l  网络层的协议有:ICMP.IGMP.IP.RARP.ARP. l  ICMP报文的种类有三种,即ICMP差错报告报文.控制报文.请求/应答报 报告IP数…
一.MTU 以太网和IEEE 802.3对数据帧的长度都有限制,其最大值分别是1500和1492字节,将这个限制称作最大传输单元(MTU,Maximum Transmission Unit).如果IP层有一个数据报要传,而且数据的长度比链路层的MTU还大,那么IP层就要进行分片(Fragmentation),把数据报分成若干片,这样每一片都小于MTU.当网络上的两台主机互相进行通信时,两台主机之间要经过多个网络,每个网络的链路层可能有不同的MTU,其中两台通信主机路径中的最小MTU被称作路径MT…
原文:http://blog.csdn.net/inject2006/article/details/2139149 ping 的原理     ping 程序是用来探测主机到主机之间是否可通信,如果不能ping到某台主机,表明不能和这台主机建立连接.ping 使用的是ICMP协议,它发送icmp回送请求消息给目的主机.ICMP协议规定:目的主机必须返回ICMP回送应答消息给源主机.如果源主机在一定时间内收到应答,则认为主机可达.     ICMP协议通过IP协议发送的,IP协议是一种无连接的,不…
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在TCP协议与"流"通信中,我们概念性的讲解了TCP通信的方式.可以看到,TCP通信最重要的特征是:有序(ordering)和可靠(reliable).有序是通过将文本流分段并编号实现的.可靠是通过ACK回复和重复发送(retransmission)实现的.这一篇文章将引入TCP连接(connection)的概念. TCP连接 网络层在逻辑上提供了端口的概念.一个IP地…
网络层(network layer)是实现互联网的最重要的一层.正是在网络层面上,各个局域网根据IP协议相互连接,最终构成覆盖全球的Internet.更高层的协议,无论是TCP还是UDP,必须通过网络层的IP数据包(datagram)来传递信息.操作系统也会提供该层的socket,从而允许用户直接操作IP包. IP数据包是符合IP协议的信息(也就是0/1序列),我们后面简称IP数据包为IP包.IP包分为头部(header)和数据(Data)两部分.数据部分是要传送的信息,头部是为了能够实现传输而…
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! TCP(Transportation Control Protocol)协议与IP协议是一同产生的.事实上,两者最初是一个协议,后来才被分拆成网络层的IP和传输层的TCP.我们已经在UDP协议中介绍过,UDP协议是IP协议在传输层的“傀儡”,用来实现数据包形式的通信.而TCP协议则实现了“流”形式的通信. TCP的内容非常丰富.我不能在一篇文章中将TCP讲完.这一篇主要介绍TCP…
一.ICMP协议分析 ICMP:Internet控制报文协议.由于IP协议并不是一个可靠的协议,它不保证数据被成功送达,那么,如何才能保证数据的可靠送达呢? 这里就需要使用到一个重要的协议模块ICMP(网络控制报文)协议.它传递差错报文以及其他需要注意的信息,经常供IP层或更高层协议(TCP或UDP)使用.所以它经常被认为是IP层的一个组成部分.它在IP数据报文中的封装如下: ICMP的数据报文格式如下所示.所有报文的前4个字节都是一样的,其他的因报文类型不同而不一样.类型字段可以有15个不同的…