首页 > 其他分享 >云计算学习——5G网络技术

云计算学习——5G网络技术

时间:2024-07-23 10:54:14浏览次数:12  
标签:ARP IP 主机 ping 网络 学习 IP地址 5G 数据包

系列文章目录

` 提示:仅用于个人学习,进行查漏补缺使用。
Day1 网络参考模型
Day2 网络综合布线与应用
Day3 IP地址
Day4 华为eNSP网络设备模拟器的基础安装及简单使用
Day5 交换机的基本原理与配置
Day6 路由器的原理与配置
Day7 网络层协议介绍一


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

提示:这里可以添加本文要记录的大概内容:

例如:网络层的功能、IP协议、IP数据包格式、ICMP(网络控制报文协议)、ping命令、ARP协议

提示:以下是本篇文章正文内容,下面案例可供参考

1.网络层的功能

  • 定义了基于IP协议的逻辑地址
  • 连接不同的媒介类型
  • 选择数据通过网络的最佳路径

2.IP协议

  • IP协议,全称为互联网协议(Internet Protocol),是TCP/IP协议族中的网络层协议。
  • 功能:
    1. 寻址:IP协议通过分配唯一的IP地址给网络中的每一台设备,确保了数据能够在复杂的网络环境中准确地找到目的设备。IP地址分为私有IP地址和公有IP地址,其中私有IP地址在本地网络内部使用,公有IP地址则在互联网上公开使用。
    2. 路由选择:IP协议负责确定数据包从源主机到目的主机的路径。它使用路由表来指导数据包的选择,路由表包含了网络中各条路径的信息,决定了数据包将如何通过各个网络节点最终到达目的地。
    3. 分段与重组:由于不同的网络和通信链路对数据包的大小限制不同,IP协议能够将较大的数据包分割成较小的片段,以便于通过这些网络传输。到达目的主机后,IP协议会负责将这些数据包片段重新组装成原始的数据包。
    4. 数据报传送:IP协议采用数据报(Datagram)的方式传输数据。每个数据报包含完整的目标地址信息,这样每个数据报就可以独立到达目的主机,即使其他数据报出现丢失或损坏,也不会影响其他数据报的传输。
    5. 面向无连接通信:与TCP协议不同,IP协议是一种无连接的协议。这意味着在数据传输开始之前,不需要在源和目的之间建立一个持久的连接。每个数据报都是独立传输的,并不保证一定会按顺序到达,也不保证每个数据报都一定能到达目的地。

3.IP数据包格式

image.png

  1. 版本号(4位):表示IP协议的版本。目前广泛使用的IP版本是IPv4,其版本号为4。IPv6的版本号为6。
  2. 首部长度(4位):以4字节为单位,表示IP首部的长度。最小值为20字节(固定部分),最大值为60字节(包括可变部分)。
  3. 服务类型(8位):这个字段用于指示数据包的优先级和服务类型,但它现在大多数情况下不被使用。
  4. 总长度(16位):表示整个IP数据包的长度,包括首部和数据部分,单位为字节。
  5. 标识(16位):用于标识数据包的唯一编号,对于分片的数据包,这个字段会被重新赋值。
  6. 标志(3位):用于标识数据包的某些特殊信息,如是否允许分片等。
  7. 片偏移量(13位):当数据包被分片时,这个字段用于指示数据片在原始数据中的位置。
  8. 生存时间(8位):也称为TTL(Time To Live),每经过一个路由器该值减一,当值为0时,数据包将被丢弃。
  9. 协议(8位):表示上层协议的类型,如TCP、UDP等。
  10. 首部校验和(16位):用于检验IP首部的完整性,确保在传输过程中没有被篡改。
  11. 源IP地址(32位):表示数据包发送者的IP地址。
  12. 目的IP地址(32位):表示数据包接收者的IP地址。

4.ICMP(网络控制报文协议)

  • ICMP(Internet Control Message Protocol)是一个网络层协议,用于在IP主机、路由器之间以及主机与路由器之间发送控制消息。这些消息用于提供有关网络通信问题的反馈,而不是用于传输用户数据。
  • ICMP消息可以是差错报告或操作指令。差错报告通常用于指示处理过程中出现的问题,例如数据包无法到达目的地(目的地不可达)、数据包太大无法处理(参数问题)、接收数据包时出现校验和错误等。操作指令则包括请求回复的回显请求(Echo Request,通常用于ping命令)和时间戳请求等。
  • ICMP的主要功能:
    1. 差错报告:当IP层遇到无法处理的情况时,会发送ICMP差错报告消息。例如,如果一个数据包由于网络问题无法到达目的地,路由器会发送一个ICMP目的地不可达消息给源主机。
    2. 回显请求与回显应答:通常用于测试网络连接的连通性。发送方发送一个ICMP回显请求(Echo Request)消息,接收方收到消息后,会发送一个ICMP回显应答(Echo Reply)消息回复发送方。
    3. 时间戳请求与时间戳应答:用于获取网络设备的时钟信息,可以用于网络时间同步。
    4. 路由器通告:用于路由器向主机通告某些信息,例如路由器之间的路由变化。
    5. 重定向:当一个路由器发现一个更佳的路径到某个网络或主机时,它会向源主机发送一个ICMP重定向消息,告诉源主机使用新的路径。
  • ICMP结构:
    • 类型(8位):表示ICMP消息的类型。
    • 代码(8位):表示消息的具体类型,与类型字段一起确定消息的用途。
    • 校验和(16位):用于检验ICMP消息的完整性。
    • 数据(可选):根据不同类型的ICMP消息,可能包含不同数量的数据。

image.png

5.ping命令

  • 功能:
    • ping命令是计算机网络中一个非常常用的诊断工具,它用于测试网络连接的可达性和质量。
    • ping命令通过发送ICMP(Internet Control Message Protocol)回显请求消息到目标主机,并等待目标主机返回响应,来检查数据包是否能够成功到达目标主机以及往返所需的时间。
  • 常用格式:
    • 输入"ping /?"可以查看有哪些命令:

image.png

  • 以下是一些常用的ping命令及其详细说明:
  1. 基本ping命令
	ping 目标主机或IP地址

用来检测与目标主机之间的网络连接。如果目标主机在线并且网络配置正确,将收到回复。

	2. 指定ping次数
ping -c 4 目标主机或IP地址

发送4个ICMP数据包到目标主机,并等待回应。这个选项适用于只想测试少数几个数据包的情况。

     3. 指定数据包大小
ping -s 1000 目标主机或IP地址

可以指定发送的数据包大小,这里设置为1000字节。这有助于测试网络在处理大型数据包时的性能。

     4. 设置ping间隔
ping -i 2 目标主机或IP地址

设置了发送ICMP请求之间的时间间隔为2秒。

     5. 指定TTL值
ping -t 10 目标主机或IP地址

TTL(Time To Live)是数据包在网络中可以经过的最大路由器数量。通过设置TTL,可以限制数据包在网络中的传播。

     6. 持续
ping -t 目标主机或IP地址

不断地ping目标主机直到你手动停止(通常是按**Ctrl+C**)。它用于持续监视网络连接。

     7. 限制ping的超时时间
ping -W 1000 目标主机或IP地址

这里设置了等待目标主机回应的超时时间为1000毫秒。如果目标主机在这个时间内没有回应,则ping命令会认为请求超时。

     8. 反转地址解析
ping -a 目标主机或IP地址

如果目标主机有一个有效的DNS条目,该命令将解析并显示目标主机的IP地址对应的域名。

     9. 仅输出结果摘要
ping -q 目标主机或IP地址

该命令仅输出ping操作的最终结果摘要,而不显示每个数据包的状态。

     10. 禁用路由记录
ping -r 0 目标主机或IP地址

此命令禁用路由记录,这意味着不会记录数据包经过的路由器。

     11. 显示网络接口
ping -I 接口名 目标主机或IP地址

6.ARP协议

  • ARP协议(Address Resolution Protocol,地址解析协议)是用于将网络层的IP地址解析为链路层的物理地址(MAC地址)的协议。它在局域网中起着至关重要的作用,因为它使得不同主机之间能够通过物理网络段进行通信。
工作原理:

ARP协议的工作过程大致如下:
image.png

     1. **ARP请求**:当一个节点需要向局域网内的另一个节点发送数据包时,它会首先检查自己的ARP缓存表(一个存储IP地址与MAC地址映射关系的表格),以确定目标IP地址对应的MAC地址。
     2. 如果缓存表中没有这个映射关系,源节点会广播一个ARP请求。这个请求包含源节点的IP地址和MAC地址,以及目标节点的IP地址(MAC地址字段为全0)。
     3. 局域网内的所有节点都会接收到这个ARP请求,但只有目标节点会响应。目标节点会将自己的MAC地址发送回源节点。
     4. **ARP响应**:源节点接收到ARP响应后,会将目标IP地址与对应的MAC地址存入自己的ARP缓存表中,以便将来使用。
     5. 源节点现在可以使用这个MAC地址将数据包发送给目标节点。
ARP缓存:

ARP缓存是存储在每台计算机上的一个表,它包含最近解析的或手动输入的IP地址与MAC地址的映射关系。这样可以减少需要发送ARP请求的次数,提高通信效率。

安全问题:

ARP协议存在一些安全隐患,最常见的是ARP欺骗(或称为ARP攻击):

  • 中间人攻击:攻击者通过发送伪造的ARP响应,使得流量被重定向到攻击者的机器上,然后再转发到真正的目标节点。这样,攻击者可以窃听或篡改数据。
  • ARP毒化:攻击者通过在局域网内广播伪造的ARP记录,来覆盖现有的ARP缓存条目。
代理ARP:

代理ARP是一种机制,允许一台设备(如路由器)代表另一个网络中的设备响应ARP请求,这对于连接不同网络段非常有用。

免费ARP:

免费ARP(Gratuitous ARP)是一种没有特定目标的ARP请求,用于宣告发送者的MAC和IP地址。它通常在网络上检测是否有重复的IP地址。

常用ARP命令:
  • arp -a:列出本机的ARP缓存表。
  • arp -d:从ARP缓存表中删除条目。
  • arp -s:向ARP缓存表中添加静态条目。

华为ARP相关命令:

     1. **显示ARP缓存表**
display arp

显示当前设备的ARP缓存表,包括IP地址、MAC地址、类型(静态或动态)、以及接口信息。

     2. **添加静态ARP条目**
arp static IP地址 MAC地址 [interface 接口名称]

通过这个命令,你可以手动添加一个静态ARP条目。静态ARP条目不会因为超时而自动删除,需要手动删除。

     3. **删除ARP条目**
undo arp static IP地址

这个命令用于删除之前手动添加的静态ARP条目。

     4. **删除所有动态ARP条目**
clear arp cache

这个命令会清空ARP缓存表中所有的动态条目。

     5. **删除指定接口上的ARP条目**
clear cache interface 接口名称

用于删除指定接口上的ARP条目。

     6. **查看ARP配置**
display arp configuration

查看当前ARP的配置信息,包括是否启用了ARP功能、ARP缓存超时时间等。

     7. **设置ARP缓存超时时间**
arp timeout 秒数

设置ARP缓存条目的超时时间,当超过这个时间没有被刷新时,条目将被自动删除。

     8. **设置ARP学习方式**
arp learn开启 | 关闭

开启或关闭设备自动学习ARP条目的功能。

     9. **设置ARP广播抑制**
arp broadcast-suppress 抑制次数

设置允许的ARP广播请求次数。超过这个次数的ARP请求将被抑制,以防止ARP广播风暴。

     10. **设置ARP回复抑制**
arp reply-suppress 抑制次数

设置允许的ARP回复次数。超过这个次数的ARP回复将被抑制。

     11. **设置ARP表项数量限制**
arp max-entries 数量

限制ARP缓存表中的最大条目数量。

     12. **设置ARP老化时间**
arp age-time 秒数

设置ARP条目的老化时间,即动态ARP条目在没有刷新的情况下,被保留在缓存表中的时间。

补充:

本章的Xmind导图与笔记如下,需要自取:
	链接:https://pan.baidu.com/s/1PZgJAhJjTzgat64AzpZFJw?pwd=1234
	提取码:1234

标签:ARP,IP,主机,ping,网络,学习,IP地址,5G,数据包
From: https://blog.csdn.net/qq_42520799/article/details/140628011

相关文章

  • Pytorch从基础数据中学习时出现巨大损失
    我正在尝试制作一个非常基本的机器学习应用程序,基本上我希望模型能够根据我提供的虚拟数据尝试预测明年的每个月,但我遭受了巨大的损失Loss:5206342.5000并且预测值与我的预期相差如此之远Predictedvaluesforeachmonthofnextyear:[-0.043424129486083984,......
  • 7.22广告流程学习
    广告主通过平台投放广告,随后生成广告库  引入环境变量 配置文件中没有明文的数据库密码,密码都在kms中保存,需要在配置文件中指明,去请求得到密码,会在日志输出启动Spex微服务会生成一个实例,在postman网关目的地输入这个实例,类似方法参数tail命令查看Spex具体是什么,其实......
  • datasets(HuggingFace)学习笔记
    一、概述(1)datasets使用ApacheArrow格式,使得加载数据集没有内存限制(2)datasets的重要模块:load_dataset:用于加载原始数据文件load_from_disk:用于加载Arrow数据文件DatasetDict:用于操作多个数据集,保存、加载、处理等Dataset:用于操作单个数据集,保存、加载、处理等二、数据......
  • AI盛行的今天还有必要学习数据分析吗?
    1.引言在过去十年中,人工智能(AI)技术以令人瞩目的速度发展,正在深刻改变我们的生活和工作方式。无论是自动驾驶汽车、智能家居,还是AI医疗诊断和金融市场预测,AI技术都在各个领域展现出强大的影响力。特别是在中国,AI技术的研究和应用取得了显著进展,政府和企业的高度重视使得中......
  • Python 网络套接字
    我一直尝试通过Python访问该网站的websocket,但是需要绕过CloudFlare,现在我尝试通过cookie进行绕过,但是这不起作用。我已经尝试在没有cookie的情况下执行此操作,但这也不起作用。importwebsocketimportbase64importosdriver=selenium.webdriver.Firefox()driver.ge......
  • go语言Gin框架的学习路线(九)
    GORM的CRUD教程CRUD是"Create,Read,Update,Delete"(创建、读取、更新、删除)的缩写,代表了数据库操作的基本功能。在GORM的上下文中,CRUD指的是使用GORM库来执行这些基本的数据库操作。创建的在GORM中创建记录通常使用Create方法。以下是一个创建记录的例子,包括......
  • 学习java第一百三十八天
    Bean的作用域1、singleton:单例,Spring中的bean默认都是单例的。2、prototype:每次请求都会创建一个新的bean实例。3、request:每一次HTTP请求都会产生一个新的bean,该bean仅在当前HTTPrequest内有效。4、session:每一次HTTP请求都会产生一个新的bean,该bean仅在当前HTTPsession......
  • 构建坚不可摧的数字长城:从“微软蓝屏”事件看网络安全与系统稳定性的重塑
    “微软蓝屏”事件暴露了网络安全哪些问题?近日,一次由微软视窗系统软件更新引发的全球性“微软蓝屏”事件,不仅成为科技领域的热点新闻,更是一次对全球IT基础设施韧性与安全性的深刻检验。这次事件,源于美国电脑安全技术公司“众击”提供的一个带有“缺陷”的软件更新,它如同一颗......
  • Unity学习记录01:unity2D 控制玩家移动的代码
    学unity搞东西肯定要会控制玩家移动啦,具体学习是参考了b站up主托尔的小lin,再结合我自己的经验总结出来的方法。【Unity2D游戏开发教程】第1课:2D俯视角角色如何移动?_哔哩哔哩bilibilihttps://www.bilibili.com/video/BV14j411j7Un/?spm_id_from=333.999.0.0&vd_source=d6fc444a0......
  • Python学习笔记42:游戏篇之外星人入侵(三)
    前言在之前我们已经创建好了目录,并且编写好了游戏入口的模块。今天的内容主要是讲讲需求的分析以及项目各模块的代码初步编写。在正式编写代码前,碎碎念几句。在正式编写一个项目代码之前,实际是有很多工作要做的。就项目而言,简单的定项,需求对齐,项目架构设计,实际的代码编写,......