网络层IP数据包
网络层
功能
选择数据通过网络(IP地址)的最佳路径
协议字段

版本号(4bit):指IP协议版本。并且通信双方使用的版本必须一致,目前我们使用的是IPv4,表示为0100 十进制 是4
首部长度(4):IP数据包的包头长度(不包括数据)
优先级与服务类型(8):该字段用于表示数据包的优先级和服务类型。通过在数据包中划分一定的优先级,服务类型定义了如何处理数据一般没有使用
总长度(16):IP数据包的总长度,最长为 65535 字节,包括包头和数据。
标识符(16):该字段用于表示IP数据包的标识符。当IP对上层数据进行分片时,它将给所有的分片数据分配一组编号,然后将这些编号放入标识符字段中,保证分片不会被错误地重组。标识符字段用于标志一个数据包,以便接收节点可以重组被分片的数据包
标志(3):和标识符一起传递,指示不可以被分片或者最后一个分片是否发出(完整)
段偏移量(13):一个数据包需要分片,指明这个分片举例原始数据开始的位置,作用重组数据
TTL(time to live)生命周期(8):可以防止一个数据包在网络中无限循环的转发下去,每经过一个路由器 -1,当TTL的值为0时,该数据包将被丢弃 0-255
协议号(8):封装的上层哪个协议,ICMP:1 TCP:6 UDP:17
首部校验和(16):这个字段只检验数据报的首部,不包括数据部分。这是因为数据报每经过一次路由器,都要重新计算一下首部校验和(因为,一些字段如生存时间、标志、片偏移等可能发生变化)
源地址(32):源ip地址,表示发送端的IP地址
目标地址(32):目标ip地址,表示接收端的IP地址
可选项:选项字段根据实际情况可变长,可以和IP一起使用的选项有多个。例如,可以输入创建该数据包的时间等。在可选项之后,就是上层数据
ICMP协议
Ping是网络设备、Windows、Unix和Linux平台上的一个命令,其实是一个小巧而实用的应用程序,该应用基于ICMP协议. Ping常用于探测到达目的节点的网络双向可达性。
作用:检测网络的双向联通下
显示自己 IP地址 ipconfig
ping ---he1p 显示帮助命令
-t 长ping
-l size 发送缓冲区大小
-w 超时等待时间
-n 指定ping几次
ping -t IP地址 长ping ctrl+c 停止
ping -l 指定包的大小(1600 2000) IP地址
ping -w 指定等待时间(默认 2/s) ip地址
ping -n 指定的次数(5) ip地址
ping 选项 IP地址/域名
tip:
ping的通一定通
ping的不通不一定网络不通
traceret 也是 icmp协议
tracert IP 地址
tracert IP 地址 win
traceroute IP 地址 linux
拔高部分

网络波动:偶尔丢一两个包
ping不通:没有一个数据能达到
冲突域
两台设备同时发送消息时,互相干扰,那他们就处于同一个冲突域
广播域
一台机器发送广播,能收到消息的机器 都是在同一广播域
1.检测地址冲突
2.将IP地址转换成mac地址
ARP协议
作用
将一个已知的IP地址解析成mac地址

工作原理
PC1想发送数据给PC2, 会先检查自己的ARP缓存表。 只在终端设备上
2.如果发现要查找的MAC地址不在表中,就会发送一个ARP请求广播,用于发现目的地的MAC地址。 ARP请求消息中包括PC1的IP地址和MAC地址以及PC2的IP地址和目的MAC地址(此时为广播MAC地址FF-FF-FF-FF-FF-FF)
3.交换机收到广播后做泛洪处理,除PC1外所有主机收到ARP请求消息,PC2以单播方式发送ARP应答, 并在自己的ARP表中缓存PC1的IP地址和MAC地址的对应关系,而其他主机则丢弃这个ARP请求消息。
PC1在自己的ARP表中添加PC2的IP地址和MAC地址的对应关系,以单播方式与PC2通信。
请求报文

Windows当中查看arp缓存表
arp -a 查看arp缓存表
arp -d 不加IP清除所有
arp -d [ip] 加 IP 只删除改IP
arp -s ip MAC 删除arp静态保定
华为系统中的ARP命令
【huawei】dis mac- address 查看mac地址信息
【huawei】arp static <ip> <MAC> 绑定ARP
【huawei】udno arp static <ip> <MAC> 解绑定
【huawei】reset arp all 清除mac地址表
网络层IP数据包的更多相关文章
- [TCP/IP] 网络层-抓包分析IP数据包首部
ip数据包的结构:首部+数据部分 1.版本(v4或者v6)+首部长度(固定的20字节,所以就没有)+区分服务优先级(我的例子是 assured forwarding 31 0x1a 26,保证转发) ...
- IP报文解析及基于IP 数据包的洪水攻击
版本(4bit) 报头长度(4bit) 优先级和服务类型(8bit) 总长度(16bit) 标识(16bit) 标志(3bit) 分段偏移(13bit) 存活期(8bit) 协议(8bit) 报头校验 ...
- TCP/IP 数据包报文格式(IP包、TCP报头、UDP报头)(转)
reference:http://blog.51cto.com/lyhbwwk/2162568 https://blog.csdn.net/wangzhen209 ...
- IP数据包格式详解(转)
摘自:http://blog.163.com/hlz_2599/blog/static/1423784742011112195857956/</> TCP/IP协议定义了一个在因特网上传输 ...
- 九度oj 题目1475:IP数据包解析
题目描述: 我们都学习过计算机网络,知道网络层IP协议数据包的头部格式如下: 其中IHL表示IP头的长度,单位是4字节:总长表示整个数据包的长度,单位是1字节. 传输层的TCP协议数据段的头部格式如下 ...
- IP数据包格式与ARP转发原理
一.网络层简介1.网络层功能2.网络层协议字段二.ICMP与封装三.ARP协议与ARP欺骗1.ARP协议2.ARP欺骗 1.网络层功能 1. 定义了基于IP地址的逻辑地址2. 连接不同的媒介3. 选择 ...
- 计算机网络漫谈之IP数据包
网络层从 网络层 .IP与子网掩码 前前后后我们也说了两次了,IP 这个东西絮絮叨叨的也一直在提.今天我们来解开IP协议的面纱,还记得我们之前在数据链路层说的物理帧的结构吗?就是这样: 其中Head叫 ...
- 【九度OJ】题目1475:IP数据包解析 解题报告
[九度OJ]题目1475:IP数据包解析 解题报告 标签(空格分隔): 九度OJ http://ac.jobdu.com/problem.php?pid=1475 题目描述: 我们都学习过计算机网络, ...
- SNAT,是源地址转换,其作用是将ip数据包的源地址转换成另外一个地址
SNAT,可能有人觉得奇怪,好好的为什么要进行ip地址转换啊,为了弄懂这个问题,我们要看一下局域网用户上公网的原理,假设内网主机A(192.168.2.8)要和外网主机B(61.132.62.131) ...
- TCP/IP数据包结构具体解释
[关键词] TCP IP 数据包 结构 具体解释 网络 协议 一般来说,网络编程我们仅仅须要调用一些封装好的函数或者组件就能完毕大部分的工作,可是一些特殊的情况下,就须要深入的理解 网络数据包的结构, ...
随机推荐
- Springcloud2021+Nacos2.2+Dubbo3+Seata1.6实现分布式事务
示例代码地址:https://gitee.com/gtnotgod/Springcloud-alibaba.git 更详细参考Gitee完整的项目:https://gitee.com/gtnotgod ...
- tcpdump 常用命令
最后更新时间 2021-10-05. Linux 的命令太多,tcpdump 是一个非常强大的抓包命令. 有时候想看线上发生的一些问题: nginx 有没有客户端连接过来-- 客户端连接过来的时候 P ...
- PlayWright(二十)- Pytest之conftest文件
1.介绍与使用场景 conftest.py 这个是什么呢? 顾名思义,他就是一个文件,那这个文件是干什么用的呢? 在我们上文中,用了fixture函数是直接在用例的文件里定义的,那不能我们所有 ...
- 使用Docker+PHP搭建苹果Maccms的影视站详细教程
自己做博客站太难了,SEO太差自己都搜不到,原文地址求你点进去看:https://typecho.hanzhe.site/archives/88 说在前面 很早之前还没参加工作的时候,手头没钱,想要看 ...
- Mybatis(生命周期 )
生命周期和作用域 生命周期和作用域,是至关重要的,因为错误的使用导致非常严重并发问题 对象声明周期和依赖注入框架 依赖注入框架可以创建线程安全的,基于事务的SqlSession和映射器,并将它们直接注 ...
- Kafka主从模式和故障切换
Kafka集群有主从模式吗? Kafka集群实际上并没有严格意义上的主从模式.Kafka的设计是基于分布式的,每个Topic都会切分为多个Partition,每个Partition都有一个Leader ...
- 如何在CMD窗口运行python文件
进入文件所在的路径输入: python 文件名
- 如何配置Linux的互信
如何配置Linux的互信? 这里针对的是root用户的,普通用户家目录/home/test/.ssh. 1.在客户端生成公钥私钥对 [root@auto1 ~]# ssh-keygen -t rsa ...
- Java基础实现加油站圈存机系统
加油站圈存机系统 对于加油卡而言,圈存是将用户账户中已存入的资金划转到所持的加油卡上后方可使用.通俗一点的说法就是您在网点把钱存入主卡中,再分配到下面的副卡,由于副卡都在使用车辆的驾驶员手中,需要 ...
- [超详细] GraalVM打包含有JNI的本地镜像
GraalVM 是一种高性能.多语言通用虚拟机和编译器技术.它由 Oracle 开发并开源,旨在为不同的编程语言和应用场景提供统一的运行时环境和编译器平台.以下是 GraalVM 的一些主要特点和功能 ...