当前位置:网站首页>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地址表
边栏推荐
猜你喜欢
随机推荐
时间复杂度和空间复杂度
入门文档11 自动添加版本号
[Paper Intensive Reading] The relationship between Precision-Recall and ROC curves
Getting Started 11 Automatically add version numbers
Getting Started 03 Distinguish between development and production environments ("hot update" is performed only in the production environment)
【Day8】 RAID磁盘阵列
Cocos Creator小游戏案例《棍子士兵》
ACLs and NATs
spark算子-wholeTextFiles算子
Configuration of TensorFlow ObjecDetectionAPI under Anaconda3 of win10 system
Image compression failure problem
spark源码-任务提交流程之-1-sparkSubmit
spark operator-wholeTextFiles operator
One-arm routing and 30% switch
ROS video tutorial
不吹不黑,这的确是我看过微服务架构最好的文章!
[Day8] Commands involved in using LVM to expand
spark operator-textFile operator
spark源码-任务提交流程之-3-ApplicationMaster
通过单总线调用ds18b20的问题