前言¶
DeepSeek Harness (DSH) 采用“一切皆插件”的理念。在开发涉及网络配置的智能体时,IP 地址和子网的计算是高频需求,但大模型心算边界容易出错。dsh-ipcalc 提供了精确的数学计算能力,确保网络配置的逻辑正确性。
是什么¶
dsh-ipcalc 是一个为 DeepSeek Harness 设计的 IP 与子网数学工具箱。它由 TYEclipse 维护,采用 MIT 许可证。该插件包含五个纯本地计算工具,具有零运行时依赖和无网络 I/O 的特点。它通过本地数学运算替代心算,解决智能体在处理网络地址时可能出现的精度和逻辑错误。
核心功能¶
该工具箱提供以下五个核心功能:
- ipv4_subnet: 对 IPv4 CIDR 进行完整子网布局,输出网络号、广播地址、掩码、反掩码、主机范围、数量及 IANA 分类。
- ipv4_summarize: 将一组 IPv4 地址或范围归并为最小覆盖的 CIDR 列表(合并与超网计算)。
- ip_parse: 校验并规范化任意 IPv4/IPv6 地址(遵循 RFC 5952),同时进行 IANA 分类。
- ipv6_subnet: 对 IPv6 CIDR 进行完整子网布局,使用 128 位 BigInt 进行精确算术运算。
- ip_match: 判定裸 IP 是否属于某个 CIDR 范围,并返回规范化后的范围。
安装与启用¶
安装前,请确保你的 DeepSeek Harness 环境已配置好插件管理器。执行以下命令将插件添加到指定配置文件中:
dsh plugin --profile <your-profile> add github:TYEclipse/dsh-ipcalc
安装完成后,插件即可在 DSH 会话中调用。
典型用法¶
IPv4 子网布局¶
ipv4_subnet("192.168.1.25/24")
输出将包含网络地址、广播地址、子网掩码、反掩码、可用主机范围(含数量)以及 IANA 分类信息。
CIDR 归并¶
ipv4_summarize(["10.0.0.0/24", "10.0.1.0/24", "10.0.2.0/24", "10.0.3.0/24"])
这将返回 ["10.0.0.0/22"]。
IPv6 地址解析与规范化¶
ip_parse("::ffff:192.168.1.1")
输出将显示该地址为 IPv6 类型,遵循 RFC 5952 规范化,并识别其内嵌 IPv4 的特征。
IPv6 子网计算¶
ipv6_subnet("2001:db8:1234:5678::1/64")
使用 128 位 BigInt 计算,输出网络地址、首末可用主机范围及精确的地址总数(以十进制字符串返回,避免精度丢失)。
对于特殊网段:
ipv6_subnet("::/0")
ipv6_subnet("fe80::1/127")
IP 成员测试¶
ip_match("192.168.1.5", "192.168.1.0/24")
返回判断结果及规范化后的网络范围。
技术细节¶
- 精确算术: IPv4 使用 32 位整数计算,IPv6 使用 128 位 BigInt 计算。地址计数在超过安全整数阈值时返回字符串,保证精度。
- RFC 合规性: /31 网段遵循 RFC 3021(点对点链路,两地址均可用);/127 遵循 RFC 6164;IPv6 规范化遵循 RFC 5952。
- 分类: 依据 IANA 特殊用途注册表进行分类(如私网、环回、链路本地、文档段、组播等)。
- 版本校验:
ip_match会拒绝 IPv4 与 IPv6 的版本混用测试,避免静默错误。
注意事项¶
- 该插件在 DSH 进程的本地运行环境中执行,不涉及网络请求。
- 在启用插件前,建议查阅源码以确认其行为符合你的安全与合规要求。
- IPv6 部分严格区分版本,进行匹配测试时必须确保 IP 地址与 CIDR 版本一致。
总结¶
dsh-ipcalc 通过本地化、标准化的数学运算,解决了智能体在网络配置中常见的计算错误。对于需要精确处理 IP 地址和子网的开发者,这是一个可靠的辅助工具。