arp协议

arp协议

ARP(地址解析协议)是网络层协议,用于在同一个广播域内将IP地址解析为MAC地址。当两台主机需要通信时,发送方必须知道接收方的MAC地址,以便将数据封装成帧并通过物理网络发送。ARP协议通过广播请求来查找与特定IP地址关联的硬件地址,并将结果以单播形式返回给请求者。

ARP封装与报文格式

ARP封装与报文格式如下:

  • 硬件类型:1(以太网)

  • 协议类型:0x0800(IP)

  • 硬件地址长度:6(MAC地址长度)

  • 协议地址长度:4(IP地址长度)

  • 操作

    • 1(ARP请求,二层封装广播,目的MAC为FFFF-FFFF-FFFF)

    • 2(ARP应答,二层封装单播)

    ARP工作流程

无故ARP(gratuitious ARP) 使用广播方式主动发送自己IP地址的ARP。 请求型无故ARP(请求自己IP的MAC地址) 用于重复IP地址检测。

应答型无故ARP 用于刷新其他主机或设备的ARP表。 用于刷新交换机的MAC表。

RARP(反向地址解析协议)是一种用于在计算机不知道其IP地址时帮助其获取IP地址的协议。它通过广播请求的方式,将已知的MAC地址映射到IP地址,从而让设备(如无盘工作站)在启动时能够获取自己的IP地址。

icmp

ICMP工作在网络层,封装于IP,协议号1,用于发送错误消息和控制消息。

dns协议

Hosts文件是主机本地文件,记录了主机名和IP地址的对应信息。

域名 DNS域名是一种分级结构,每一级域名都由字母和数字组成,不分大小写;根域用"."表示,以"."结尾的域名称为完全合格域名(FQDN)

递归查询 DNS服务器收到递归查询请求后,负责把最终结果返回给请求方,如果本地查询不到,该DNS服务器将查询其他的DNS服务器,直到查到结果。 一般客户机与本地DNS域名服务器之间采用递归查询方式。

迭代查询 DNS服务器收到迭代查询请求后,如果本地查询不到,将返回一个可能查得到的DNS服务器地址给请求者,由请求者自行查询该DNS服务器,以此类推,请求者最终查到结果。 一般本地域名服务器与根域名服务器之间采用迭代查询方式。

ftp协议

FTP协议简介 FTP采用客户端/服务器架构,基于TCP,采用双TCP连接方式。控制连接使用TCP端口号21,数据连接使用TCP端口号20。FTP有两种文件传输模式:ASCII(默认的文件传输模式),本地文件转换成标准的ASCII码再传输,适用于传输文本文件;Binary(二进制流模式,也称为图像文件传输模式),文件按照比特流的方式进行传输,适用于传送程序文件。FTP有两种数据传输方式:主动方式和被动方式。

FTP双TCP连接方式 控制连接 用于在FTP客户端和FTP服务器之间传输FTP控制命令及命令执行信息。控制连接在整个FTP会话期间一直保持打开。

数据连接 用于传输数据,包括数据上传、下载、文件列表发送等。数据传输结束后数据连接将终止。被动方式

FTP主动数据传输方式 FTP主动方式也称为PORT方式。 FTP客户端通过向FTP服务器发送PORT命令,告诉服务器该客户端用于传输数据的临时端口号。 当需要传送数据时,服务器通过TCP端口号20与客户端的临时端口建立数据传输通道,完成数据传输。 在建立数据连接的过程中,由服务器主动发起连接,因此被称为主动方式。

FTP被动数据传输方式 被动方式也称为PASV方式。FTP客户端通过向FTP服务器发送PASV命令,告诉服务器进入被动方式。服务器选择临时端口号并告知客户端。当需要传送数据时,客户端主动与服务器的临时端口号建立数据传输通道,完成数据传输。在整个过程中,由于服务器总是被动接收客户端的数据连接,因此被称为被动方式。

相关推荐
RainbowSea16 分钟前
购买服务器 + 项目部署上线详细步骤说明
java·服务器·后端
RainbowSea40 分钟前
用户中心项目部署上线03
linux·服务器·spring boot
sagima_sdu1 小时前
银河麒麟安装软件商店方法
linux·运维·服务器
菜鸟起航ing1 小时前
SaaS型小程序自动化发布解决方案
运维·小程序·自动化
SAP龙哥2 小时前
SAP在未启用负库存的情况下,库存却出现了负数-补充S4 1709 BUG
运维·bug
Tipriest_2 小时前
ubuntu 多网络路由优先级问题
网络·ubuntu·路由·多网络
云飞云共享云桌面2 小时前
制造工厂高效出图新技术——共享云桌面
运维·服务器·网络·3d·自动化·制造
Gene_20224 小时前
Ubuntu 22.04 使用 Issac Gym 进行人形强化学习训练
linux·运维·ubuntu
程序员JerrySUN7 小时前
Linux 内核基础统简全解:Kbuild、内存分配和地址映射
java·linux·运维·服务器·嵌入式硬件·缓存·文件系统
努力做小白8 小时前
Linux驱动19 --- FFMPEG
linux·运维·驱动开发·单片机·嵌入式硬件·ffmpeg