RackPeek如何绘制Home Lab拓扑图?端口连线与Mermaid图形可视化完全指南
【免费下载链接】RackPeekCLI tool to discover, manage, and document your IT infrastructure and home lab.项目地址https://gitcode.com/gh_mirrors/ra/RackPeek点击查看免费下载RackPeek 是一款用于发现、管理和记录 Home Lab家庭实验室与小型 IT 基础设施的开源 CLI Web UI 工具。这篇文章将完整讲解 RackPeek 拓扑图绘制流程如何记录端口连线、如何用一条命令生成 Mermaid 物理拓扑图与逻辑视图、以及如何把图形导出成 PNG 或源码。全程以新手视角操作零基础也能画出专业的网络拓扑图。为什么 Home Lab 需要一张拓扑图设备一多这根网线到底接哪儿了就成了难题。RackPeek 的思路是用 YAML 记录硬件与连线用 Mermaid 一键渲染成图图始终与数据保持一致不会像手绘图那样过期。RackPeek 提供两种拓扑图视图回答的问题数据来源物理拓扑Physical哪台设备的哪个端口接到哪台设备硬件 端口连线connections逻辑视图Logical哪个服务跑在哪台主机、属于哪个子网服务 系统 runsOn 关系第 1 步把端口连线记下来拓扑图的边来自connections端口连线记录。每条连线精确到资源 端口组 端口号三个坐标有三种录入方式。方式一CLI 命令推荐脚本化rpk connections add A资源 A组 A号 B资源 B组 B号 [--label 标签]例如把防火墙 WAN 口接到核心路由rpk connections add pfsense-fw 1 0 core-router 1 0 --label WAN uplink命令参数定义见 ConnectionAddCommand.cs校验逻辑资源必须存在、端口组/端口号不能越界、不能自连、一个端口只能有一条连线、重复添加会覆盖旧连线实现在 AddConnectionUseCase.cs。删除连线用rpk connections remove实现见 ConnectionRemoveCommand.cs。方式二Web UI 可视化连线打开 RackPeek Web 界面后进入Connections页面路由/connections页面以端口组可视化的形式展示每台设备的端口点击端口即可选择对端完成连线页面组件在 ConnectionsPage.razor。适合不想记命令、习惯点着连的用户。方式三直接编辑 YAMLRackPeek 的全部状态存放在 YAML 中config/config.yaml连线就是顶层connections:列表每条包含a、b两个端口引用和可选的label、notes。示例项目里的真实片段connections: - a: resource: pfsense-fw portGroup: 1 portIndex: 0 b: resource: core-router portGroup: 1 portIndex: 0 label: WAN uplink - a: resource: core-router portGroup: 1 portIndex: 0 b: resource: core-switch portGroup: 2 portIndex: 0 label: core trunk完整示例可参考 vhs/sample_config/config.yaml连线数据结构定义见 Connection.cs。第 2 步一条命令生成 Mermaid 物理拓扑图连线记好后运行rpk graph topology命令会输出完整的 Mermaid flowchart 源码直接重定向到文件即可归档rpk graph topology topology.mmd输出示例节选%%{init: {layout: elk, flowchart: {curve: step, ...}}}%% flowchart TD n_pfsense_fw{{pfsense-fwbr/firewall}}:::rpknode n_core_router([core-routerbr/router]):::rpknode n_core_switch[[core-switchbr/switch]]:::rpknode n_pfsense_fw ---|eth0 ↔ wan1| n_core_router n_core_router ---|eth1 ↔ p1| n_core_switch这条命令的实现链路非常清晰值得了解GraphTopologyCommand.csCLI 入口把结果直接写到标准输出避免终端软换行破坏 Mermaid 语法方便管道重定向BuildPhysicalTopologyUseCase.cs把硬件变成节点、把 connections 变成边MermaidSerialiser.cs把图序列化为 Mermaid 文本。节点形状自带语义RackPeek 借鉴 NetBox / draw.io 的网络图惯例用形状区分设备类型只看轮廓就知道角色形状映射表见 MermaidSerialiser.cs设备类型形状含义Firewall六边形安全边界Router体育场形网关Switch双边框汇聚/分发Server圆柱计算/存储AccessPoint圆形无线射频UPS菱形辅助设施Desktop / Laptop圆角矩形终端边标签优先显示你写的--label没写时自动用端口类型编号生成如eth0 ↔ wan1标签生成逻辑见 BuildPhysicalTopologyUseCase.cs。此外序列化结果确定性强——同一份库存永远产出同一张图方便把渲染图提交进文档或做回归测试。第 3 步生成逻辑视图服务 × 子网物理图看线逻辑图看服务。运行rpk graph logical它会回答哪个服务跑在哪台主机上这台主机在哪个子网规则BuildLogicalGraphUseCase.cs每个系统Hypervisor / VM / Container生成一张主机卡片卡片内部列出它承载的全部服务及端口按 IP 自动归入/24 子网分组同一台物理硬件内的系统再嵌套一组形成子网 → 硬件 → 主机的层级不画连线runsOn的运行于关系由子图包含关系直接表达图更紧凑。实现入口见 GraphLogicalCommand.cs。第 4 步在 Web UI 里看大图并导出打开 RackPeek Web 界面进入Visualise页面路由/visualise顶部可在Physical / Logical两个标签间切换右上角两个按钮即导出Save PNG2 倍分辨率导出 PNG 图片深色背景可直接贴进 wiki 或博客Save Mermaid下载.mmd源码可用任意 Mermaid 渲染器再加工。页面实现见 VisualisePage.razor前端渲染与导出脚本在 Shared.Rcl/wwwroot/js/graph/index.js内置 ELK 布局引擎边线路由为直角风格更像专业网络图。常见问题与技巧图里为什么少了某些设备物理图只渲染硬件 两端资源都存在的连线指向不存在资源的连线会被安全跳过BuildPhysicalTopologyUseCase.cs先检查资源名拼写。连线连不上CLI 会明确报错资源不存在、端口组越界、端口号越界、端口自连均被拦截且同一端口只能属于一条连线重复添加会覆盖旧连线。想要更醒目的边标签添加--label选项它会优先显示在连线上。CI 里怎么用序列化输出是确定性的可以把rpk graph topology的产物做 golden-file 对比连线一变就能发现。更多命令细节可查阅 docs/Commands.md 与 docs/CommandIndex.md图形相关源码集中在 RackPeek.Domain/Graph/。总结RackPeek 绘制 Home Lab 拓扑图的完整路径只有四步用rpk connections add、Web Connections 页面或 YAML 记录端口连线rpk graph topology一条命令输出Mermaid 物理拓扑图节点形状自带设备语义rpk graph logical输出按子网/主机分组的逻辑视图在 Web UI 的 Visualise 页面查看大图一键导出 PNG 或 Mermaid 源码。数据是纯 YAML 的图是随时可再生的——这就是作为代码的 Home Lab 文档最省心的形态。赞分享【免费下载链接】RackPeekCLI tool to discover, manage, and document your IT infrastructure and home lab.项目地址https://gitcode.com/gh_mirrors/ra/RackPeek点击查看免费下载相关推荐如何用可视化工具轻松绘制专业网络拓扑图完整指南如何用可视化工具轻松绘制专业网络拓扑图完整指南 在网络管理和系统设计中 网络拓扑图 是理解复杂架构的关键工具。传统的绘制方法往往需要繁琐的手工操作但现在有前端数据可视化拓扑图绘制新选择easy-topo让网络可视化如此简单拓扑图绘制新选择easy topo让网络可视化如此简单 还在为复杂的网络架构设计而烦恼吗easy topo这款免费拓扑绘制工具让网络可视化变得前所未有的简前端数据可视化终极网络拓扑图绘制工具Topology完全指南终极网络拓扑图绘制工具Topology完全指南 还在为复杂的网络架构可视化而头疼吗 传统的绘图工具难以满足现代数据中心和企业网络的动态需求运维团队常常创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

内容发布测试全攻略:从排版校验到线上验证的完整流程

内容发布测试全攻略:从排版校验到线上验证的完整流程

第一次做发布测试那天,我以为自己只是点一下“发布”按钮就完事。结果从平台选型、内容排版到线上验证,整整折腾了一个下午。后来回头看,这个看似不起眼的小动作,其实是一条完整链路的起点——内容生产、平台规则、技术配置、数据…

2026/10/10 19:30:05 阅读更多 →
Claude Code Skills 从项目级迁移到全局:完整指南与避坑实践

Claude Code Skills 从项目级迁移到全局:完整指南与避坑实践

我先说个真实感受:一开始接触 Claude Code 的 Skills 功能时,我把它想复杂了,以为是什么高深的插件框架。实际用下来,它其实就是"给 AI 提前写好的工作手册"——你把自己处理某类任务的标准步骤、注意事项、输出格式整理…

2026/10/10 19:30:05 阅读更多 →
【开发环境】VSCode 安装插件 ( 简体中文插件 | Open in Browser 插件 | Auto Rename Tag 插件 | JS-CSS-HTML Formatter 插件 ) 与

【开发环境】VSCode 安装插件 ( 简体中文插件 | Open in Browser 插件 | Auto Rename Tag 插件 | JS-CSS-HTML Formatter 插件 ) 与

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 19:30:05 阅读更多 →

最新新闻

ComfyUI 零插件跑通 H3:文生视频、图生视频、首尾帧一条龙实战

ComfyUI 零插件跑通 H3:文生视频、图生视频、首尾帧一条龙实战

ComfyUI 零插件跑通 H3:文生视频、图生视频、首尾帧一条龙实战 【免费下载链接】Minimax-h3_Singularity 项目地址: https://ai.gitcode.com/hf_mirrors/WarmBloodAban/Minimax-h3_Singularity MiniMax H3 开源后迅速成为开源社区关注度最高的视频生成模型&…

2026/10/10 21:44:33 阅读更多 →
开源自托管 vs 商业知识库:Paperless-ngx 和语雀/Notion 们,谁才是文档终局

开源自托管 vs 商业知识库:Paperless-ngx 和语雀/Notion 们,谁才是文档终局

开源自托管 vs 商业知识库:Paperless-ngx 和语雀/Notion 们,谁才是文档终局 【免费下载链接】paperless-ngx A community-supported supercharged document management system: scan, index and archive all your documents 项目地址: https://gitcode…

2026/10/10 21:44:33 阅读更多 →
公众号都开始喊“剪映不用手点了“:无头剪映这波热度,正在从小圈子破圈

公众号都开始喊“剪映不用手点了“:无头剪映这波热度,正在从小圈子破圈

公众号都开始喊"剪映不用手点了":无头剪映这波热度,正在从小圈子破圈 【免费下载链接】jianying-headless Private source preview: native Jianying drafts, isolated editing/export, and standalone Agent Skill. 项目地址: https://gitc…

2026/10/10 21:44:33 阅读更多 →
从 stop-slop 到 no-ai-slop:“去 AI 味“工具家族一年进化史,规则如何越长越刁

从 stop-slop 到 no-ai-slop:“去 AI 味“工具家族一年进化史,规则如何越长越刁

从 stop-slop 到 no-ai-slop:"去 AI 味"工具家族一年进化史,规则如何越长越刁 【免费下载链接】no-ai-slop Removes 20 patterns of AI slop from any piece of writing. 项目地址: https://gitcode.com/gh_mirrors/no/no-ai-slop &quo…

2026/10/10 21:44:33 阅读更多 →
Spring Boot在线考试系统源码全解析:设计、实现与部署

Spring Boot在线考试系统源码全解析:设计、实现与部署

springboot在线考试系统源码研究:从设计要点到落地细节全梳理Spring Boot在线考试系统这个题目,我见过不少朋友在做——课程设计做它,毕业设计做它,甚至有些人把它加到简历里当个人项目。但大家做出来的东西差距真的很大&#xff…

2026/10/10 21:44:33 阅读更多 →
VB.NET性能实测:StringBuilder与字符串拼接差距多大?

VB.NET性能实测:StringBuilder与字符串拼接差距多大?

在服务端做数据导出时,我踩过一次印象很深的坑:用VB.NET循环拼接2万多个编码,直接把窗体卡成白屏,等了几十秒才弹出结果;后来换成StringBuilder,耗时从十几秒降到几十毫秒。从那以后,每逢看到项…

2026/10/10 21:43:32 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →