首页
/ Infrastructure Inventory

Infrastructure Inventory

2026-09-04 22:09:50作者:凤尚柏Louis
  • Domain: example.dpdns.org
  • IPv4: 192.0.2.10
  • IPv6: 2001:db8::10
  • Nameserver: ns1.dns-service.example
  • Environment: practice only

这五个值不是随手选的,而是与全书的"文档专用值"规范完全对齐。[0.1 章 How to Use This Book](https://gitcode.com/GitHub_Trending/us/US.KG/blob/9c7c54110705760267b07b6e6a6d406d1172a1bf/documents/tutorial/foundations/0.1-how-to-use-this-book.md?utm_source=gitcode_repo_files) 明确列出了同一套虚构值:

```text
Domain:       example.dpdns.org
Web hostname: www.example.dpdns.org
IPv4:         192.0.2.10
IPv6:         2001:db8::10
Nameserver:   ns1.dns-service.example
Server user:  user

从源码结构看,这组值在整本教程中被系统性地复用:192.0.2.x 属于 RFC 5737 文档专用网段,2001:db8::/32 是文档专用 IPv6 段,.example 后缀按惯例不可注册、不可解析为真实系统。你可以在 DNS 记录类型章节TTL 与传播章节工作手册 中看到同一组值贯穿始终。

这样做的目的原文写得很直白:"This prevents accidental instructions from targeting a real system during early experiments."(防止早期实验中的意外指令指向真实系统。)即:当你在练习 digcurlrsync 时,即使命令复制粘贴出错,目标也只会是无害的文档地址,而不会误打到你正在使用的真实域名或服务器。

六、定义变更记录:changes.md 模板及其"升级形态"

原文要求创建 notes/changes.md,模板全文如下:

# Change Log

## Template

- Date and time:
- Operator:
- Goal:
- Current value:
- Intended value:
- Verification:
- Rollback:
- Result:

八个字段对应了完整的变更生命周期:何时、谁改、为什么改、改前值、改后值、如何验证、如何回滚、最终结果。这与全书学习方法论 Understand → Plan → Change → Observe → Verify → Record 一一对应,其中 Current valueRollback 正是"Plan"阶段"写回滚"要求的具体落点。

当实验从本地走向真实 DNS 时,这套模板会自然升级为更细的形态。Checklists and Templates 附录 中的 "DNS Change Template" 在原有字段上增加了 Domain and record nameRecord typeCurrent TTLReasonAuthoritative/Recursive verification command(权威/递归验证命令)、Rollback decision time(回滚决策时限)等字段。可以推断,附录模板就是把 changes.md 的通用骨架按 DNS 场景实例化后的产物——建议你现在就习惯按八字段记录,日后切换零成本。

七、本地安全检查:两条命令清单及其正确解读

原文给出两组检查命令,分别对应两个时机。

运行本地服务器之前(确认你站在正确的目录、且只包含你以为的文件):

pwd
find site -maxdepth 2 -type f -print

pwd 打印当前目录的绝对路径;find site -maxdepth 2 -type f -print 列出 site/ 下最多两层深度的全部普通文件,用于核对"哪些文件是公开网站文件"。这两个命令在前一章 Terminal and File Basics 中已作为基本功教过,此处把它们组合成发布前动作。

发布源代码之前(确认 Git 状态干净、暂存内容正确、没有秘密混入):

git status --short
git diff --cached
rg -n -i 'password|secret|token|api[_-]?key' .
  • git status --short:短格式列出每个文件的变更状态(M 修改、A 新增、?? 未跟踪等);
  • git diff --cached:只查看已 git add 进暂存区的差异,即"即将进入历史的精确内容";
  • rg -n -i 'password|secret|token|api[_-]?key' .:用 ripgrep 递归、忽略大小写地扫描所有疑似秘密的关键词,-n 输出行号便于定位。注意 api[_-]?key 这个正则同时匹配 api_keyapikeyapi-key 三种写法。

原文对第三条命令给出的限定同样重要,必须原样继承:

"Search results are prompts for review, not proof that every matching line is a secret or that every secret was found." (搜索结果只是待复查的提示,既不是"每个匹配行都是秘密"的证明,也不是"所有秘密都已被找到"的证明。)

即:rg 扫描是启发式复查工具,不是秘密检测保证;命中需要人工确认,未命中也不能替代纪律(例如 终端基础章节 同时提醒:不要把 token 直接敲进命令行,因为 shell history 会留下痕迹;秘密还可能出现在 URL、日志与截图中)。

八、测试主机名规范:lab 子域名,且"test 不等于私有"

原文提出:如果需要公网层面的测试,应创建显式子域名,例如 lab.example.dpdns.org,并绝不把主公开主机名指向未完成的环境。这一约定在后续章节得到呼应——0.5 章规划网站 给出的主机名规划表正是三行结构:

Canonical: example.dpdns.org
Alias:     www.example.dpdns.org
Test:      lab.example.dpdns.org
登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
33
18
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.12 K
2.72 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
528
588
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
906
1.83 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
854
1.34 K
docsdocs
暂无描述
Markdown
891
5.78 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.53 K
1.01 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.34 K
1.45 K
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
987
506
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
540
384