互联网基础:

 
数据链路层: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 严格的
 

 
 
 
 
 
 
 

最新文章

  1. DDNS动态更新
  2. 使用Shell创建GitHub仓库
  3. 基于HTML5和JS实现的切水果游戏
  4. WindowManager和WindowManager.LayoutParams的使用以及实现悬浮窗口的方法
  5. apimonitor
  6. Codeforces Round #215 (Div. 1) B
  7. linux一键安装vncserver脚本
  8. Java坑一
  9. JAVA泛型-擦除
  10. C++历史
  11. Swift中文教程(五)--对象和类
  12. Windows 8 卡在正在检查更新
  13. 老李分享: JSON
  14. CCF-201403-2-窗口
  15. 结合Socket实现DDoS攻击
  16. Gradle连接Maven仓库直接从仓库 更新JAR包
  17. CSS之属性操作
  18. neo1973 audio subsystem
  19. java将一个javabean转化为另一个javabean
  20. pytorch官网上两个例程

热门文章

  1. CSS控制滚动条的样式
  2. jquery 弹窗插件 layer 常见接口
  3. HIVE分组排序问题
  4. Anaconda 环境中使用pip安装时候出现的一些问题
  5. 分析java进程假死状况
  6. 1.JSON 转换对象失败问题 2.spring注入失效
  7. BOM(Browser Object Model) 浏览器对象模型
  8. LeetCode 380. Insert Delete GetRandom O(1)
  9. 1.SpringMVC设计理念与DispatcherServlet
  10. 河南省多校联盟二-A