Day35 网络协议与数据封装

day35 网络协议与数据封装

数据封装与协议结构

以太网MAC帧格式

数据封装与传输流程

数据在传输过程中,从上层逐层封装到底层,最终通过物理介质发送。封装与传输的具体流程如下:

封装过程(从IP层到物理层)
  • IP层:IP数据报作为上层数据传递至MAC层
  • MAC层封装
    • 目的地址(6字节):接收设备的物理地址(MAC地址)
    • 源地址(6字节):发送设备的物理地址(MAC地址)
    • 类型(2字节) :标识上层协议类型,例如 0x0800 表示承载的是IP协议数据
    • 数据(46--1500字节):实际承载的上层协议数据(如IP数据报),若不足46字节,则需填充至最小长度
    • FCS(4字节):帧检验序列(Frame Check Sequence),用于差错检测
  • 物理层封装
    • 前导码(8字节)
      • 前7字节为前同步码 ,比特模式为 10101010 交替,用于接收方时钟同步
      • 第8字节为帧开始定界符(SFD) ,比特模式为 10101011,表示帧的开始

MTU说明 :以太网帧中"数据"部分的最大传输单元(MTU)为 1500字节

解封装过程(从物理层到IP层)

接收端按照相反顺序进行解封装,从物理层开始逐层去除头部信息,最终将数据交付给上层应用。

协议封装层次

数据在发送端自上而下逐层封装,接收端则自下而上解封装:

复制代码
应用层数据 → TCP/UDP头 → IP头 → MAC帧 → 物理层前导码
  |            |           |          |
"Hello"      传输层      网络层     接口层

IP数据报首部

核心特性

  • 固定长度:20字节(不含选项字段)
  • 关键字段详解
字段 描述
版本(4位) 指明IP协议版本,IPv4为4,IPv6为6,通信双方必须一致
首部长度(IHL,4位) 以32位(4字节)为单位,最小值为5(即20字节),最大值为15(60字节)。当包含选项时长度可变
区分服务(DS,8位) 原称"服务类型",现用于QoS(服务质量)控制,如优先级、延迟、吞吐量等
总长度(16位) 整个IP数据报的长度(首部 + 数据),单位为字节,最大值为65535字节
标识(16位) 每产生一个数据报,该计数器加1;分片时所有片段共享同一标识,以便重组
标志(3位) 包含两个有效位: - DF (Don't Fragment):禁止分片 - MF (More Fragments):还有更多分片(MF=0表示最后一片)
片偏移(13位) 分片后该片在原始数据报中的位置,单位为8字节(64位),保证分片按序重组
生存时间(TTL,8位) 数据报在网络中的存活时间,每经过一个路由器减1,为0时被丢弃,防止无限循环
协议(8位) 指明上层协议类型,常见值: - 6:TCP - 17:UDP - 1:ICMP
首部校验和(16位) 仅校验IP首部,不包含数据部分。每次经过路由器需重新计算
源IP地址(32位) 发送方的IP地址
目的IP地址(32位) 接收方的IP地址

注意:IP是无连接、不可靠的服务,依赖上层(如TCP)实现可靠性。


TCP首部格式

核心特性

  • 固定长度:20字节(可选字段扩展至最多60字节)
  • 关键字段
字段 描述
源/目的端口(各16位) 标识通信的应用进程
序列号(32位) 当前报文段第一个字节的序号,用于保证数据有序传输
确认号(32位) 期望收到的下一个字节的序号,表示该序号之前的数据已正确接收
数据偏移(4位) TCP首部长度,以4字节为单位,最小为5(20字节),最大为15(60字节)
保留(6位) 保留字段,置0
标志位(6位) 控制连接状态的关键标志: - URG:紧急指针有效 - ACK:确认号有效 - PSH:要求接收方立即交付给应用层 - RST:重置连接 - SYN:同步序列号,用于建立连接 - FIN:请求关闭连接
窗口大小(16位) 接收方当前接收缓冲区剩余容量,用于流量控制
校验和(16位) 覆盖TCP首部、数据及伪首部,确保传输完整性
紧急指针(16位) 与URG配合使用,指出紧急数据的末尾位置

发送缓冲区划分

复制代码
[已发送且已确认] → [已发送未确认] → [待发送]
  • 通过超时重传机制确保可靠传输
  • 只有收到ACK后,已发送未确认区域才能向前滑动

关键标志位

标志位 作用
SYN 连接建立请求(同步序列号)
ACK 确认应答(确认号有效)
FIN 连接终止请求
RST 异常中断或拒绝连接
PSH 推送数据,要求立即处理

UDP首部格式

核心特性

  • 固定长度:8字节
  • 字段说明
字段 描述
源端口(16位) 发送方端口号,可选
目的端口(16位) 接收方端口号,必须指定
长度(16位) UDP数据报总长度(首部 + 数据),最小为8字节,最大为65535字节
校验和(16位) 可选,用于差错检测;若未启用则为0。包含伪首部、UDP首部和数据

特点总结

  • 无连接(无需握手)
  • 不保证可靠传输(无确认、无重传)
  • 开销小(仅8字节首部)
  • 适用于实时性要求高的场景(如音视频流、DNS查询)

网络诊断工具集

远程连接工具

bash 复制代码
# 使用telnet连接指定IP和端口(默认端口23)
telnet 192.168.1.1 8888  # 连接到192.168.1.1的8888端口

功能说明 :测试目标主机某端口是否开放并可通信。
理想输出

复制代码
Trying 192.168.1.1...
Connected to 192.168.1.1.
Escape character is '^]'.

网络状态监控

bash 复制代码
# 查看所有网络连接(包括进程信息)
netstat -anp

功能说明 :显示所有网络连接、监听端口及对应进程
典型输出

复制代码
tcp  0  0 0.0.0.0:8888  0.0.0.0:*  LISTEN  1234/python3

表示PID为1234的Python程序正在监听8888端口。

bash 复制代码
# 仅查看TCP连接
netstat -n -t

功能说明 :显示所有TCP连接状态
典型输出

复制代码
tcp        0      0 192.168.1.100:50000   192.168.0.183:80      ESTABLISHED
bash 复制代码
# 仅查看UDP连接
netstat -n -u

功能说明 :显示所有UDP连接状态
典型输出

复制代码
udp        0      0 0.0.0.0:68            0.0.0.0:*                        
bash 复制代码
# 查看特定端口监听情况
netstat -lnp | grep 8888

功能说明 :检查特定端口是否被监听及对应进程
典型输出

复制代码
tcp  0  0 0.0.0.0:8888  0.0.0.0:*  LISTEN  1234/python3

网络连通性测试

bash 复制代码
# 测试与指定IP的连通性
ping 192.168.1.1

功能说明 :使用ICMP协议检测目标主机是否可达
理想输出

复制代码
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=1.2 ms
bash 复制代码
# 测试域名解析及连通性
ping www.baidu.com

功能说明 :测试DNS解析和网络连通性
理想输出

复制代码
64 bytes from 110.242.68.66: icmp_seq=1 ttl=55 time=28.3 ms

ARP表管理

bash 复制代码
# 查看ARP缓存表(IP与MAC地址映射)
arp -an

功能说明 :显示本地ARP缓存中的IP地址与MAC地址映射关系
典型输出

复制代码
? (192.168.1.100) at 00:1a:2b:3c:4d:5e [ether] on eth0
bash 复制代码
# 删除指定IP的ARP缓存条目
arp -d 192.168.1.100

功能说明 :清除特定IP地址的ARP缓存,解决IP-MAC映射问题
理想输出

复制代码
(192.168.1.100) deleted

流量抓包分析

Wireshark过滤示例
复制代码
tcp.port == 50000 && ip.addr == 192.168.0.183

抓取目标或源端口为50000,且IP地址为192.168.0.183的数据包。

tcpdump高级过滤命令
bash 复制代码
# 按源IP过滤
tcpdump 'ip.src == 192.168.1.100'

功能说明 :捕获来自特定IP的所有数据包
理想输出

复制代码
12:30:45.123456 IP 192.168.1.100.50000 > 192.168.0.183.80: Flags [S], seq 12345
bash 复制代码
# 按目的端口过滤
tcpdump 'tcp.dstport == 9999'

功能说明 :捕获发送到特定端口的所有数据包
理想输出

复制代码
12:31:22.678901 IP 192.168.1.100.50001 > 192.168.0.183.9999: Flags [P.], seq 12345:12400
bash 复制代码
# 组合条件:源IP为192.168.1.100 且 目的端口为9999
tcpdump 'ip.src == 192.168.1.100 and tcp.dstport == 9999'

功能说明 :使用逻辑AND组合多个过滤条件
理想输出

复制代码
12:32:15.234567 IP 192.168.1.100.50002 > 192.168.0.183.9999: Flags [S], seq 12346
bash 复制代码
# 组合条件:源IP为192.168.1.100 或 目的IP为192.168.1.102
tcpdump 'ip.src == 192.168.1.100 or ip.dst == 192.168.1.102'

功能说明 :使用逻辑OR组合多个过滤条件
理想输出

复制代码
12:33:08.765432 IP 192.168.1.100.50003 > 192.168.1.102.80: Flags [P.], seq 12347:12450

环境配置建议

bash 复制代码
# 禁用防火墙(避免干扰抓包)
sudo ufw disable

# 安装SSH服务(支持远程登录)
sudo apt-get install openssh-server openssh-client

# 安装Wireshark(图形化抓包工具)
sudo apt-get install wireshark

tcpdump 使用补充说明

bash 复制代码
# 在默认网卡上抓包(显示简要信息)
tcpdump -n

功能说明 :捕获所有网络接口的流量,以数字形式显示IP和端口
理想输出

复制代码
12:35:45.123456 IP 192.168.1.100.50000 > 192.168.0.183.80: Flags [S], seq 12345
bash 复制代码
# 根据源或目的IP抓包
tcpdump -n src 192.168.1.100
tcpdump -n dst 192.168.1.100

功能说明 :分别捕获指定IP作为源或目的的数据包
理想输出

复制代码
12:36:22.678901 IP 192.168.1.100.50001 > 192.168.0.183.80: Flags [P.], seq 12345:12400
bash 复制代码
# 抓取指定IP的所有收发包并输出十六进制
sudo tcpdump -n -x src or dst 192.168.0.130

功能说明 :捕获指定IP的所有流量并以十六进制格式显示
理想输出

复制代码
12:37:15.234567 IP 192.168.0.130.50002 > 192.168.1.100.80: Flags [S], seq 12346
	0x0000:  4500 003c 1234 4000 4006 0000 c0a8 0082
	0x0010:  c0a8 0164 0050 0089 0000 3039 0000 0000
bash 复制代码
# 将抓包内容保存到文件
tcpdump -n -x src 192.168.1.100 > xxx.log

功能说明 :将抓包结果保存到文件以便后续分析
操作结果:生成包含原始数据包的xxx.log文件

bash 复制代码
# 按端口过滤
tcpdump -n src port 80
tcpdump -n dst port 80
tcpdump -n port 80

功能说明 :分别捕获源端口、目的端口或任意方向端口为80的流量
理想输出

复制代码
12:38:08.765432 IP 192.168.1.100.50003 > 192.168.0.183.80: Flags [P.], seq 12347:12450
bash 复制代码
# 按协议过滤
tcpdump -n proto icmp
tcpdump -n proto tcp
tcpdump -n proto udp

功能说明 :分别捕获指定协议类型的数据包
理想输出

复制代码
12:39:01.234567 IP 192.168.1.100 > 192.168.1.1: ICMP echo request
bash 复制代码
# 指定网络接口抓包
tcpdump -n -i eth0
tcpdump -n -i lo  # 本地回环接口

功能说明 :在特定网络接口上捕获流量
理想输出

复制代码
12:40:15.678901 IP 127.0.0.1.50004 > 127.0.0.1.8080: Flags [S], seq 12348
bash 复制代码
# 组合条件(and/or)
tcpdump 'ip.src == 192.168.1.100 and tcp.dstport == 9999'
tcpdump 'ip.src == 192.168.1.100 or ip.dst == 192.168.1.102'

功能说明 :使用逻辑运算符组合多个过滤条件
理想输出

复制代码
12:41:22.345678 IP 192.168.1.100.50005 > 192.168.1.102.9999: Flags [P.], seq 12349:12452

高级抓包示例

bash 复制代码
sudo tcpdump -n -i esn33 -xx src or dst www.taobao.com -AXX -vv | less
  • -xx:以十六进制和ASCII显示链路层数据
  • -A:以ASCII显示数据包内容
  • -XX:十六进制显示并包含链路层头
  • -vv:详细输出
  • | less:分页查看输出

功能说明:全面捕获并详细显示与淘宝相关的网络流量,适合深度分析


TCP连接管理

三次握手建立连接

过程解析
  1. 第一次握手(SYN)

    客户端 → 服务器:SYN=1, Seq=x

    客户端发起连接请求,进入 SYN_SENT 状态。

  2. 第二次握手(SYN+ACK)

    服务器 → 客户端:SYN=1, ACK=1, Seq=y, Ack=x+1

    服务器确认请求并同步自己的序列号,进入 SYN_RCVD 状态。

  3. 第三次握手(ACK)

    客户端 → 服务器:ACK=1, Ack=y+1

    客户端确认服务器的SYN,连接建立完成,双方进入 ESTABLISHED 状态。

关键点:三次握手确保双方的发送与接收能力正常,实现全双工通信。
编程对应函数

  • 客户端调用 connect() 触发握手。
  • 服务器调用 listen() 监听连接,accept() 接受连接。

四次挥手终止连接

过程解析
  1. 第一次挥手(FIN+ACK)

    主机A → 主机B:FIN=1, ACK=1, Seq=u, Ack=v

    A端主动关闭连接,停止发送数据,但仍可接收数据。

  2. 第二次挥手(ACK)

    主机B → 主机A:ACK=1, Ack=u+1

    B端确认A的关闭请求,A进入 FIN-WAIT-2 状态。

  3. 第三次挥手(FIN+ACK)

    主机B → 主机A:FIN=1, ACK=1, Seq=w, Ack=u+1

    B端也关闭连接,发送FIN。

  4. 第四次挥手(ACK)

    主机A → 主机B:ACK=1, Ack=w+1

    A确认B的FIN,等待2MSL后关闭连接。

关键点:TCP连接是全双工的,因此需要双方独立关闭,共需四次挥手。


万维网WWW

万维网(World Wide Web,简称 WWW 或 Web)并非一种独立的计算机网络,而是一个基于因特网的大规模、联机式信息储藏所。它通过"超链接"机制,使用户可以从一个站点方便地跳转到另一个站点,实现主动、按需获取信息。

图中展示了多个万维网站点(A、B、C、D、E),它们之间通过虚线"链接到"相互连接,表明信息是分布式存储的,而非集中在一个服务器上,体现了万维网的分布式服务特性。


为解决"如何让用户方便找到所需信息"的问题,万维网采用三大核心技术:

  • URL(统一资源定位符):为因特网上的每个资源(如网页、图片、文件)提供唯一的地址标识,实现精确定位。
  • HTTP(超文本传输协议):应用层协议,定义浏览器与服务器之间的交互规则,基于TCP实现可靠数据传输。
  • HTML(超文本标记语言):用于编写网页内容,支持嵌入超链接、文本、图像、音视频等多媒体元素,并可在浏览器中渲染展示。

此外,用户还可借助搜索引擎等工具快速查找所需信息。


URL结构与示例

使用HTTP的URL一般形式:

复制代码
http://<主机>:<端口>/<路径>
  • 主机 :服务器域名或IP地址(如 www.tsinghua.edu.cn
  • 端口 :HTTP默认端口为 80,通常省略不写
  • 路径 :服务器上资源的具体路径,若省略则指向该站点的主页
主页的含义
  • 可以是WWW服务器最高级别的页面
  • 某组织或部门定制的门户页面
  • 个人创建的自我介绍页面
示例

访问清华大学主页:

复制代码
http://www.tsinghua.edu.cn

HTTP协议与万维网工作过程

  • HTTP角色

    HTTP是应用层协议,规定了浏览器(客户端)向服务器请求文档、服务器响应文档的格式与流程,是万维网交换文本、图像、音视频等多媒体文件的基础。

  • 工作流程

    1. 浏览器与服务器(如 www.tsinghua.edu.cn)建立TCP连接
    2. 浏览器发送HTTP请求报文,请求特定文档
    3. 服务器返回HTTP响应报文,携带请求的文档内容
    4. 传输完成后释放TCP连接(HTTP/1.0行为)

HTTP请求与响应流程

当用户点击指向"清华大学院系设置"页面的链接(URL:http://www.tsinghua.edu.cn/chn/yxsz/index.htm)时,发生以下步骤:

  1. 解析URL :浏览器提取主机名 www.tsinghua.edu.cn 和路径 /chn/yxsz/index.htm
  2. DNS解析:向DNS服务器查询该域名对应的IP地址
  3. 获取IP地址 :DNS返回IP地址 166.111.4.100
  4. 建立TCP连接 :浏览器与服务器在IP 166.111.4.100、端口 80 上建立TCP连接
  5. 发送HTTP请求 :浏览器发送GET请求,获取 /chn/yxsz/index.htm 文件
  6. 接收响应:服务器返回HTML文件内容
  7. 释放连接:TCP连接关闭
  8. 显示内容:浏览器解析并显示文本内容

优化行为

浏览器可设置"仅下载文本",加快页面加载速度。图像、音频等内容仅显示占位图标,点击后再单独建立连接下载。


HTTP报文结构

HTTP是面向文本的协议,报文由ASCII字符组成,字段长度不固定。

两类报文
报文类型 组成部分
请求报文 1. 请求行(方法、URL、版本) 2. 首部行(多个字段名:值) 3. 实体主体(可选,如POST数据)
响应报文 1. 状态行(版本、状态码、短语) 2. 首部行(多个字段名:值) 3. 实体主体(可选,如HTML内容)

主要区别:起始行不同(请求报文为"请求行",响应报文为"状态行")。


HTTP请求报文示例解析

http 复制代码
GET /?pcm=202.412_0_0.0.0&scm=thor.412_14-201000.0.0.0&spm=smpc.home.top-nav.1.1756968683979AWFZBXy_1467 HTTP/1.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Host: news.sohu.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36

这是一条 HTTP/1.1 请求报文,用于向搜狐新闻服务器请求资源。

解析如下:
  • 请求行

    复制代码
    GET /?pcm=... HTTP/1.1
    • 方法:GET(获取资源)
    • 路径与参数:包含多个跟踪参数(用于统计来源)
    • 协议版本:HTTP/1.1
  • 请求首部字段

    • Accept:客户端可接受的内容类型,包括HTML、XML、图片等,q值表示优先级
    • Accept-Encoding:支持的压缩方式(gzip, deflate),减少传输体积
    • Accept-Language:首选语言为简体中文(zh-CN
    • Host:请求的主机名,用于虚拟主机识别
    • Connection: keep-alive:希望保持TCP连接,复用连接提高效率
    • User-Agent:客户端身份标识,此处为Windows 10上的Chrome浏览器(v121)

该请求体现了现代浏览器在访问网页时的标准行为:支持压缩、多语言、连接复用等特性。


复制代码
Remote Address:
[240e:45:d000:3008:2a::]:80

这是用网络抓包工具 Wireshark捕获的网络数据包界面,展示了设备与搜狐新闻(news.sohu.com)等网络节点之间的通信情况:

  • 上半部分:是捕获的数据包列表,包含时间(Time)、源地址(Source)、目的地址(Destination)、协议(Protocol)、长度(Length)、信息(Info)等列,能看到有 TCP、HTTP 等协议的数据包,记录了不同时间、不同地址间的网络交互,比如 TCP 连接的建立(含 SYN 等标志)、HTTP 请求与响应等过程
  • 中间部分 :是选中的某条数据包(这里是 HTTP 相关)的详细解析,展开了"Hypertext Transfer Protocol"(超文本传输协议)部分,能看到 HTTP 请求的具体内容,像请求行(包含请求方法、URL 等)、请求首部字段(如 Host 指定主机为 news.sohu.comConnection 表示连接方式,User-Agent 标识客户端为 Chrome 浏览器等)
  • 下半部分:是该数据包的十六进制与 ASCII 码形式的原始数据,可用于更底层的数据包内容分析,查看数据在网络传输中的原始字节形态

整体呈现了从网络数据包捕获到分层解析的过程,便于分析网络通信的细节,比如 HTTP 请求的构造、TCP 连接的交互等。

ipv6.addr == 240e:45:d000:3008:2a:: && tcp.port == 80


网络爬虫应用示例

天气API接口

复制代码
接口网址
http://api.k780.com
https://sapi.k780.com    

AppKey
77384

Sign
5ac63f91d88ad9c5e08f6e513552b3f1

天气查询请求示例

复制代码
https://sapi.k780.com/?app=weather.today&cityNm=台北&appkey=77384&sign=5ac63f91d88ad9c5e08f6e513552b3f1&format=json

API响应示例

复制代码
{"success":"1","result":{"weaid":"360","days":"2025-09-04","week":"星期四","cityno":"taibeixian","citynm":"台北","cityid":"101340101","temperature":"31℃/25℃","temperature_curr":"31℃","humidity":"72%","aqi":"15","weather":"多云转晴","weather_curr":"阴","weather_icon":"http://api.k780.com/upload/weather/d/2.gif","weather_icon1":"","wind":"无持续风向","winp":"1级","temp_high":"31","temp_low":"25","temp_curr":"31","humi_high":"0","humi_low":"0","weatid":"3","weatid1":"","windid":"0","winpid":"1","weather_iconid":"2"}}

接口说明

该示例展示了如何通过HTTP GET请求调用天气API,获取指定城市的天气信息。请求中包含必要的认证参数(AppKey和Sign),API返回JSON格式的天气数据,包括温度、湿度、天气状况等信息。


数据封装与拆包回顾

数据在传输过程中经历完整的封装与解封装过程:

复制代码
服务器端                          客户端
应用层                            应用层
传输层                            传输层
网络层   [数据拆包]           网络层   [数据封包]
接口层                            接口层
  • 数据封装结构|MAC头部|IP头部|TCP/UDP头部|应用数据|
  • 一帧数据:帧(frame)的最大传输单元(MTU)为1500字节

协议头部关键字段

IP头部

  • ipflag:D位(能否分片)、M位(是否最后一片)
  • TTL:生命周期计数器

TCP头部(20字节):

  • U:紧急数据标志
  • S:SYN标志(同步序列号)
  • F:FIN标志(结束连接)
  • R:RESET标志(重置连接)
  • P:PUSH标志(立即推送)
  • A:ACK标志(确认应答)

UDP头部(8字节):

  • 仅包含源端口、目的端口、长度和校验和

网络协议分析工具

Wireshark网络抓包工具

Wireshark是一款强大的网络协议分析工具,用于网络调试和协议分析:

  1. 启动方式

    bash 复制代码
    sudo wireshark
  2. 基本操作流程

    • 选择网络设备进行监听
    • 设置过滤条件(如端口、IP地址等)
    • 分析捕获的数据包
  3. 常用过滤条件示例

    复制代码
    port 80                # 过滤HTTP流量
    ip.addr == 192.168.1.1 # 过滤指定IP的流量
    tcp.port == 50000      # 过滤指定端口的TCP流量

该工具能够直观展示网络数据包的层次结构,从物理层到应用层的完整协议栈,是理解和分析网络通信的重要工具。


HTTP协议详解

HTTP协议概述

HTTP(HyperText Transfer Protocol,超文本传输协议)是Web应用的基础协议,具有以下特点:

  • B/S架构:浏览器/服务器模式
  • 资源定位:通过URL唯一标识互联网上的资源(网页、电影、图片等)
  • 标记语言:HTML(HyperText Markup Language)用于编写网页内容

HTTP交互步骤

  1. 建立连接:通过TCP三次握手建立连接
  2. 发送请求:浏览器发送HTTP请求报文
  3. 处理响应:等待服务器返回响应报文及数据
  4. 断开连接:通过TCP四次挥手断开连接(HTTP/1.0默认行为)

HTTP/1.1引入了持久连接(Keep-Alive)机制,可以在一个TCP连接上发送多个请求,提高了效率。

相关推荐
郝亚军16 小时前
Websocket的Key多少个字节
网络·websocket·网络协议
筏.k16 小时前
计算机网络:概述层---TCP/IP参考模型
网络协议·tcp/ip·计算机网络
Yawesh_best16 小时前
不用服务器也能监控网络:MyIP+cpolar让中小企业告别昂贵方案
运维·服务器·网络
希赛网16 小时前
HCIA备考:常见路由协议及特点
网络·计算机网络·rip·ospf
猫猫不是喵喵.17 小时前
高效菜单管理页面:一键增删改查
网络·websocket·网络协议
奋斗的老史17 小时前
内网的应用系统间通信需要HTTPS吗
网络协议·http·https
GHOME18 小时前
复习-网络协议
前端·网络协议·面试
数智顾问19 小时前
Trae + MCP : 一键生成专业封面的高阶玩法——自定义插件、微服务编排与性能调优
网络·http·https
奇树谦20 小时前
Git配置:禁用全局HTTPS验证
git·网络协议·https