互联网基础:

 
数据链路层:RFC文档:894/1042/1340
  1. 为IP模块发送和接受IP数据报
  2. 为ARP模块发送ARP请求和接收ARP应答
  3. 为RARP模块发送RARP请求和接收RARP应答
 
*CSMA/CD:带冲突检测的载波侦听多路访问
 

 
 
 
串行链路IP(SLIP):RFC 1055
  1. IP数据报以一个END(0XC0)的特殊字符串结束
  2. END---> 0XDB(ESC)、OXDC
  3. ESC---> 0XDB、0XDD
 
压缩SLIP:rfc1144
一般能把40个字节压缩到3-5个字节
 
PPP:点对点协议
 
 
环回接口:127.0.0.1/localhost
 

最大传输单元MTU:以太网和802.3对数据帧的一个限制,即传输的数据,不包括以太网或802.3的首部和尾部校验(首部为6比特的目的地址、6比特的源地址、2比特的长度、4比特的CRC)
路径MTU:通信主机路径中的最小MTU
 

IP:rfc791
 

 
 

ARP/RARP:rfc826
ARP-(根据目标IP找到下一跳MAC地址)
查看ARP缓存: arp -a
 
ARP代理:若果ARP请求是从一个网络的主机到另一个网络的主机,那么连接这两个网络的路由器就可以回答该请求,这样,就使发起ARP请求的发送端误以为路由器就是目的主机。
免费ARP:指主机发送ARP查找自己的IP地址
*一个主机收到一个ARP请求,如果ARP请求中的目的IP地址是这个主机,那么这个主机回一个ARP应答,
*如果主机收到某个IP的ARP请求,且这个IP已经在这个主机的ARP缓存中了,那么就要用ARP请求中的发送端硬件地址对ARP缓存中相应的内容进行更新。
*丢弃
 
RARP-(根据源MAC找到自己的IP地址)
rfc:903
帧类型代码:0x8035
 

ICMP:
rfc:792
I C M P报文是在I P数据报内部被传输的
 
 
下面各种情况都不会导致产生I C M P差错报文:
1) ICMP差错报文(但是,I C M P查询报文可能会产生I C M P差错报文) 。
2) 目的地址是广播地址(见图3 - 9)或多播地址(D类地址,见图1 - 5)的I P数据报。
3) 作为链路层广播的数据报。
4) 不是I P分片的第一片(将在11 . 5节介绍分片) 。
5) 源地址不是单个主机的数据报。这就是说,源地址不能为零地址、环回地址、广播地
址或多播地址。
这些规则是为了防止过去允许I C M P差错报文对广播分组响应所带来的广播风暴。
 
 
I C M P时间戳请求允许系统向另一个系统查询当前的时间。
 
 
ICMP端口不可达差错
 
 
 
 

 
 
 

 
两个小工具:ping  / traceroute
(内核中进行处理)ping:测试主机是否可达,该程序发送一份ICMP回显请求报文给主机,并等待返回ICMP回显应答.
回显请求和回显应答报文格式
IP记录路由选项 RR选项 ,记录出口IP地址
一般格式
 
始终把出口的IP地址加入清单。当ICMP回显应答到达原始系统时,把自己的入口IP地址也加入清单中。
IP时间戳选项
 

 
Traceroute
traceroute发送一份UDP数据报给目的主机,但它选择一个不可能的值作为UDP端口(大于30000),使目的主机的任何一个应用程序都不可能使用该端口,因为,当该数据报达到时,将使目的主机的UDP魔铠产生一份“端口不可达”错误的ICMP报文,这样,TRACEROUTE程序索要做的就是区分接收到的ICMP报文是超时还是端口不可达,以判断什么时候结束。
*显示入接口
 
IP源站选路选项
(SSRR)严格的源路由选择、发送端指明IP数据报所必须采用的确切路由
/(LSRR)宽松的源站选路、发送端指明了一个数据报经过的IP地址清单
对于宽松的源站选路来说, c o d e字段的值是0 x 8 3;而对于严格的源站选路,其值为 0 x 8 9。
-g 宽松的源站选路指明一些中间路由器
-G 严格的
 

 
 
 
 
 
 
 

数据链路层、ARP/RARP、ICMP、ping和traceroute的更多相关文章

  1. IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)

    目录 IP协议首部格式地址解析协议 ARP逆向地址解析协议 RARP网际控制报文协议 ICMP网际组管理协议IGMP IP 数据报首部 IP数据报首部格式: 最高位在左边,记为0 bit:最低位在右边 ...

  2. (网络层)IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)

    目录 IP协议首部格式地址解析协议 ARP逆向地址解析协议 RARP网际控制报文协议 ICMP网际组管理协议IGMP IP 数据报首部 IP数据报首部格式: 最高位在左边,记为0 bit:最低位在右边 ...

  3. 网络层 IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)

    目录 IP协议首部格式地址解析协议 ARP逆向地址解析协议 RARP网际控制报文协议 ICMP网际组管理协议IGMP IP 数据报首部 IP数据报首部格式: 最高位在左边,记为0 bit:最低位在右边 ...

  4. tcp/ip--IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)

    IP 数据报首部 最高位在左边,记为0 bit:最低位在右边,记为31 bit 版本: 占 4 位,指 IP 协议的版本目前的 IP 协议版本号为 4 (即 IPv4) 首部长度: 占4位,可表示的最 ...

  5. UNIX网络编程——利用ARP和ICMP协议解释ping命令

    一.MTU 以太网和IEEE 802.3对数据帧的长度都有限制,其最大值分别是1500和1492字节,将这个限制称作最大传输单元(MTU,Maximum Transmission Unit)      ...

  6. 利用ARP和ICMP协议解释ping命令

    一.MTU 以太网和IEEE 802.3对数据帧的长度都有限制,其最大值分别是1500和1492字节,将这个限制称作最大传输单元(MTU,Maximum Transmission Unit).如果IP ...

  7. TCP/IP详解学习笔记(4)-ICMP协议,ping和Traceroute

    1.IMCP协议介绍 前面讲到了,IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达的工作应该由其他的模块来完成.其中一个重要的模块就是ICMP(网络控制报文)协议. 当传送 ...

  8. 4.ICMP协议,ping和Traceroute

    1.IMCP协议介绍 前面讲到了,IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达的工作应该由其他的模块来完成.其中一个重要的模块就是ICMP(网络控制报文)协议. 当传送 ...

  9. TCP/IP详解学习笔记(4)-ICMP协议,ping和Traceroute【转】

    转自:http://blog.csdn.net/goodboy1881/article/details/670761 1.IMCP协议介绍 前面讲到了,IP协议并不是一个可靠的协议(是一种尽力传送的协 ...

随机推荐

  1. C#设计模式之控制反转即依赖注入-微软提供的Unity

    使用VS2015的Nuget管理器下载Unity. 程序员接口类: 1 namespace UnityDemo 2 { 3 public interface IProgrammer 4 { 5 voi ...

  2. Shell脚本 curl获取必应每日壁纸(Mac OS)

    Mac上Safari不能下载壁纸,遇到好看的很想用作壁纸.写了一小段脚本用来拉取网页图片. curl: -sS 参数用来取消下载状态显示 grep 首先把含有图片网址的行提取了出来,针对这一行再做se ...

  3. hadoop安装时报错 /usr/local/hadoop-2.6.0-stable/hadoop-2.6.0-src/hadoop-hdfs-project/hadoop-hdfs/target/findbugsXml.xml does not exist

    安装时报错:Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (site) on project ...

  4. Module 的加载实现

    浏览器加载 传统方法 HTML 网页中,浏览器通过<script>标签加载 JavaScript 脚本. <!-- 页面内嵌的脚本 --> <script type=&q ...

  5. Java 最常见的 200+ 面试题:面试必备

    这份面试题,包含的内容了十九了模块:Java 基础.容器.多线程.反射.对象拷贝.Java Web 模块.异常.网络.设计模式.Spring/Spring MVC.Spring Boot/Spring ...

  6. 字符串与byte[]之间的转换

    一.  编码 同一个字符在不同的编码下会被编成不同长度的编码,比如: ACSII,每个字符对应一个字节,实际上只使用了7位,从00h-7Fh.只能表达128个字符. GB2312,中文的一种编码,每个 ...

  7. 设计模式--建造者模式C++实现

    建造者模式C++实现 1定义 将一个复杂对象的构建和他的表示分离,使得同样的构建过程可以创造不同的表示 注:在模板方法中,实现了父类调用子类方法的功能,且,通过钩子实现了方法的选择性调用.但是其中整体 ...

  8. bzoj 4627 值域线段树

    4627: [BeiJing2016]回转寿司 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 523  Solved: 227[Submit][Sta ...

  9. CodeForces 297C Splitting the Uniqueness (脑补构造题)

    题意 Split a unique array into two almost unique arrays. unique arrays指数组各个数均不相同,almost unique arrays指 ...

  10. Dubbo + Zookeeper 简单配置

    Dubbo + Zookeeper Zookeeper 下载及配置 下载到本机/usr/local目录 wget https://mirrors.tuna.tsinghua.edu.cn/apache ...