当前位置: 首页 > news >正文

TCPIP之常用协议

一、TCPIP之网络支撑协议

1.ARP

ARP是网络层协议,在同一广播域内,将IP地址解析成MAC地址.

  •  1.1 无故ARP

请求型无故ARP

设备在网络中不管是自动获取ip地址还是手动配置ip地址,设备都会发送请求型无故ARP检查这个ip地址是否有重复的。

应答型无故ARP 

--一般是网关设备发。

1.2 代理ARP--已被网关代替

代理ARP(Proxy ARP)工作过程

当主机A(无默认网关配置)尝试与不同子网的主机B通信时,主机A误认为B在同一局域网,遂发起ARP请求查询B的MAC地址。此时,路由器(开启代理ARP功能)拦截该广播请求:

  1. 路由器检查目标IP(B的IP)是否属于其直连的其他子网;

  2. 若是,路由器以自己的MAC地址单播回复ARP响应给主机A;

  3. 主机A将发往B的数据帧封装目的MAC为路由器接口MAC

  4. 路由器收到数据后,按正常路由流程转发至目标子网。
    本质:路由器“欺骗”主机A,代理了跨网段主机的ARP响应职责,使无网关配置的主机能与外网通信。

1.3 RARP

抓包分析

2.ARP表

不同设备展示ARP表的命令。

3.  ICMP  互联网控制消息协议

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

你可以把 ICMP 当成网络里的 “信使” 或 “反馈员”

  • 当网络里的数据包出问题(比如到不了目标、超时、路径不对),ICMP 会发 “报错信” 告诉源主机哪里错了
  • 需要测试网络通不通(Ping)、查数据包走哪条路(Traceroute),ICMP 会配合发 “探测信” 和 “回应信”。

3.1  ICMP报文类型

分类类型值报文名称功能说明常见细分代码(Code)及含义
差错报告报文3目的不可达(Destination Unreachable)数据包无法送达目标时发送,告知源主机具体原因0:网络不可达
1:主机不可达
3:端口不可达
6:目标网络未知
7:目标主机未知
11超时(Time Exceeded)数据包因 TTL 过期或分片重组超时而被丢弃0:TTL 过期(跳转次数超过限制)
1:分片重组超时(未收到所有分片)
12参数问题(Parameter Problem)IP 报文头部存在错误(如字段无效),无法处理时发送0:IP 头部参数错误(如版本号不正确)
1:缺少必要的选项字段
4源抑制(Source Quench)告知源主机降低发送速率(因接收方缓存已满),现代网络中较少使用无细分代码
5重定向(Redirect)路由器告知源主机更优路由,引导调整数据包发送路径0:网络重定向
1:主机重定向
2:网络和端口重定向
3:主机和端口重定向
查询报文8回显请求(Echo Request)测试目标主机可达性(Ping 命令核心),包含随机数据无细分代码(需接收方回复类型 0 的报文)
0回显应答(Echo Reply)对回显请求的响应,返回请求中的随机数据无细分代码
13时间戳请求(Timestamp Request)用于同步网络时间或测量传输延迟,包含发送时间戳无细分代码(需接收方回复类型 14 的报文)
14时间戳应答(Timestamp Reply)对时间戳请求的响应,包含接收和发送时间戳无细分代码
10路由请求(Router Solicitation)主机启动时发现局域网内的路由器,获取网关信息无细分代码(需路由器回复类型 9 的报文)
9路由通告(Router Advertisement)对路由请求的响应,包含路由器 IP 地址等信息无细分代码
17地址掩码请求(Address Mask Request)主机获取所在网络的子网掩码(无 DHCP 时使用)无细分代码(需路由器回复类型 18 的报文)
18地址掩码应答(Address Mask Reply)对地址掩码请求的响应,返回子网掩码信息无细分代码

ICMP协议以及报文讲解(ICMP查询报文、ICMP差错报文)_icmp报文-CSDN博客

3.2 ping命令

3.3Trace Route

1. Traceroute 基本作用与目的

Traceroute 是网络排障、路径分析的常用工具,用于追踪数据包从源主机到目标主机经过的网络路由( hops,跳数 ),帮我们理清 “数据怎么从本地传到目标,中途经过哪些设备”,排查网络延迟、不通等问题。

2. TTL(生存时间)的关键机制
  • TTL 本质:IP 数据包头部的一个字段(8 位),初始值由操作系统 / 设备设置(如常见 64、128 等),每经过一个路由器(路由跳),TTL 值减 1 。
  • 核心逻辑若 TTL 减到 0,数据包还未到达目标,路由器会丢弃该包,并向主机发送 “ICMP TTL 超时” 消息 ,告知 “我是第 X 跳路由器,包在这超时被扔啦” 。
3.此情况涉及两种ICMP类型
  • ICMP TTL 超时:路由器收到 TTL=0 的包时发送,用于 “上报” 路径中的路由跳。
  • ICMP 回显应答:目标主机收到 TTL 未超时、且是自己的包时(如最终 Traceroute 探测包),回复此消息,标志 “到达终点” 。

4.目标不可达类型

三、TCPIP应用协议

1.常见TCP应用协议

2.常见UDP应用协议

1.1 DNS  

Hosts 文件

作用:主机本地的 “小字典”,存主机名和 IP 的对应关系,系统访问网络时,会先查 Hosts 找对应,能实现简单的本地域名解析 。

DNS 域名解析基础

架构与协议采用客户端 / 服务器(C/S)架构,基于 UDP 协议,服务器默认用 53 端口通信 。客户端发域名查询请求,服务器返回 IP,让域名和 IP “挂钩” 。

域名

1.2 FTP

主动模式是服务器主动发起数据连接,在客户端有严格防火墙时连接失败;
被动模式是客户端主动发起数据连接,解决了客户端防火墙的限制, 当服务器也开启防火墙时,服务器支持动态开放端口支持被动FTP连接。

http://www.lryc.cn/news/602437.html

相关文章:

  • 工业前端组件库重构心法:如何让开发效率提升60%的交互模块设计逻辑
  • java中一些数据结构的转换
  • 函数的“握手协议”:揭秘C++调用惯例(cdecl, stdcall)的秘密
  • 【智慧物联网平台】安装部署教程——仙盟创梦IDE
  • 重构vite.config.json
  • C++中既重要又困难的部分—类和对象
  • 数据可视化待办清单:用JS打造你的第一个Web应用
  • 深度解析Manus:从多智能体架构到通用AI Agent的技术革命
  • Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现面部口罩的检测识别(C#代码,UI界面版)
  • 归档日志-binlog
  • 自然语言处理NLP(2)
  • 历史版本vscode的下载地址
  • HDFS Block与Spark的partition对比
  • InsightFace(RetinaFace + ArcFace)人脸识别项目(预训练模型,鲁棒性很好)
  • 前端工程化常见问题总结
  • Rustdesk
  • uniapp,uview 报错:Not Found:Page[2][-1;-1,8,0,28] at view.umd.min.js:1
  • GaussDB 查看会话连接数
  • 云蝠智能Voice Agent在企业级应用中的技术落地与价值实践
  • 数据结构 | 队列:从概念到实战
  • 【版本更新】火语言 0.9.94.0 更新
  • [AI Coding] 一.腾讯CodeBuddy IDE内测、安装及基本用法(国产AI IDE启航)
  • 《C++》STL--string详解(下)
  • 代码随想录算法训练营二十九天|动态规划part02
  • QML QtCharts 饼状图(PieSeries)
  • AI资讯日报 - 2025年07月28日
  • Vue3 学习教程,从入门到精通, Vue 3 表单语法知识点及案例详解(19)
  • MDM五十万台设备高并发场景解决方案【后台管理】
  • Django + Celery 详细解析:构建高效的异步任务队列
  • 负载均衡算法中的加权随机算法