当前位置:网站首页>IP packet format (ICMP protocol and ARP protocol)
IP packet format (ICMP protocol and ARP protocol)
2022-08-05 06:13:00 【Magic star】
IP数据包格式
网络层的功能
- 定义了基于IP协议的逻辑地址,就是IP地址
- 连接不同的媒介类型
- 选择数据通过网络的最佳路径,完成逻辑地址寻址
数据封装的时候在网络层会封装ip地址的头部,形成ip数据包
IP数据包格式
IP数据包格式:分为20字节的固定部分,表示每个IP数据包的部分,和40字节的可变长部分
格式 | 定义 |
---|---|
版本号(4bit) | 指IP协议版本.并且通信双方使用的版本必须一致,目前我们使用的是IPv4,表示为0100 |
首部长度(4) | IP数据包的包头长度(不包括数据)优先级与服务类型(8):该字段用于表示数据包的优先级和服务类型.通过在数据包中划分一定的优先级,用于实现 QoS(服务质量)的要求. |
总长度(16) | IP数据包的总长度,最长为 65535 字节,包括包头和数据. |
标识符(16) | 该字段用于表示IP数据包的标识符.当IP对上层数据进行分片时,It will assign a set of numbers to all sharded data,然后将这些编号放入标识符字段中,保证分片不会被错误地重组.标识符字段用于标志一个数据包,以便接收节点可以重组被分片的数据包 |
标志(3) | 和标识符一起传递,指示不可以被分片或者最后一个分片是否发出(完整) |
段偏移量(13) | 在一个分片序列中如何将各分片连接起来,按什么顺序连接起来 |
TTL(time to live)生命周期(8) | 可以防止一个数据包在网络中无限循环的转发下去,每经过一个路由器 -1,当TTL的值为0时,该数据包将被丢弃 0-255 |
协议号(8) | 封装的上层哪个协议,ICMP:1 TCP:6UDP:17 |
首部校验和(16) | 这个字段只检验数据报的首部,不包括数据部分.这是因为数据报每经过一次路由器,都要重新计算一下首部校验和(因为,一些字段如生存时间、标志、片偏移等可能发生变化) |
源地址(32) | 源ip地址,表示发送端的IP地址 |
目标地址(32) | 目标ip地址,表示接收端的IP地址 |
可选项 | 选项字段根据实际情况可变长,可以和IP一起使用的选项有多个.例如,可以输入创建该数据包的时间等.在可选项之后,就是上层数据 |
注:根据实际情况可变长,例如创建时间等 上层数据
ICMP协议
icmp作用:检测网络的双向联通性
ping
ping作用:
ping自己127.0.0.1硬件
See if there is a problem with the addresses of both parties
See if there is a problem with the gateway
Is there a problem with the firewall policy
ping选项:ipconfig //显示自己IP地址
ping --help //显示帮助命令
-t //长ping
格式:ping ip地址 -t (ctrl+c 停止)-a //将地址解析为主机名
格式:ping -a ip地址 (显示主机名)-l size //发送缓冲区大小
格式:ping -l 指定包的大小(1600、2000)ip地址-w //超时等待时间
格式:ping -w指定等待时间(默认是秒:2)ip地址-n //指定ping几次
格式:ping -n 指定的次数(5)ip地址
注:pingThe pass must pass,pingNo network connection is not necessarily the case
tracert也是icmp协议
格式:tracert ip地址 (追踪,Go through several routing devices)
tracert IP地址 (win)
traceroute IP地址(Linux)
广播域
广播域:一台机器发送广播,能收到消息的机器 都是在
同一广播域
ARP协议(地址解析协议)
ARP协议是根据IP地址获取物理地址的一个TCP/IP协议.主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间.
无故ARP
- Check for duplicate addresses(如果收到ARPThe response indicates that there are duplicate addresses).
- When a device gets oneIP地址时,will automatically send a no reasonARP,Check to see if a device already uses this address
ARP工作原理:
- PC1想发送数据给PC2, 会先检查自己的ARP缓存
表. Only on terminal devices
2.如果发现要查找的MAC地址不在表中,就会发送一个
ARP请求广播,用于发现目的地的MAC地址.
ARP请求消息中包括PC1的IP地址和MAC地址以及PC2的
IP地址和目的MAC地址(此时为广播MAC地址FF-FF-FFFF-FF-FF)
3.交换机收到广播后做泛洪处理,除PC1外所有主机收到
ARP请求消息,PC2以单播方式发送ARP应答, 并在自
己的ARP表中缓存PC1的IP地址和MAC地址的对应关系,
而其他主机则丢弃这个ARP请求消息. - PC1在自己的ARP表中添加PC2的IP地址和MAC地址
的对应关系,以单播方式与PC2通信.
ARP报文
查看arp缓存表(静态arp和动态arp)
命令 | 含义 |
---|---|
arp -a | 查看arp缓存表 |
arp -d | 不加IP清除所有 |
arp -d [IP] | 加IP delete onlyIP |
arp -s IP MAC | 删除arp静态绑定 |
绑定arp(win10)
- netsh -c i i show i #####查看网络连接准确名称,如:本地连接、无线网络连接
- netsh -c “i i” add neighbors 19 “IP” “Mac”(这里19是idx号)####绑定
- netsh -c “i i” delete neighbors 19 (这里19是idx号)#####解绑
- netsh interface ipv4 set neighbors <接口序号>
华为系统中的ARP命令
- [ Huawei ]dis mac -address ###查看mac地址信息
- [ Huawei ]arp static ###绑定ARP
- [ Huawei ]undo arp static ###解绑定
- [ Huawei ]reset arp all ###清除mac地址表
边栏推荐
- 2020,Laya最新中高级面试灵魂32问,你都知道吗?
- 新一代解析技术——云解析
- Why can't I add a new hard disk to scan?How to solve?
- Three modes of vim
- Unity物理引擎中的碰撞、角色控制器、Cloth组件(布料)、关节 Joint
- Servlet跳转到JSP页面,转发和重定向
- spark源码-任务提交流程之-7-流程梳理总结
- SSL证书提示过期或者无效,该怎么处理呢?
- Getting Started 05 Using cb() to indicate that the current task is complete
- Spark source code-task submission process-6.2-sparkContext initialization-TaskScheduler task scheduler
猜你喜欢
随机推荐
Autoware中安装Yolo3目标检测模块遇到的问题
lvm逻辑卷及磁盘配额
vim的三种模式
lvm logical volume and disk quota
D39_欧拉角与四元数
js动态获取屏幕宽高度
专有宿主机CDH
IJCAI 2022|Boundary-Guided Camouflage Object Detection Model BGNet
[Day8] (Super detailed steps) Use LVM to expand capacity
【Day8】 RAID磁盘阵列
spark source code-RPC communication mechanism
Hugo搭建个人博客
The spark operator - repartition operator
Getting Started Document 07 Staged Output
Account and Permission Management
spark operator-parallelize operator
海外服务器的优势
网络布线与数制转换
spark operator-wholeTextFiles operator
你要找的cocos面试答案都在这里了!