做园区网、酒店、企业组网,地址规划这步最磨人。一个大网段要按楼层、功能区拆成几十上百个子网,每个配 VLAN、网关,最后还得整理成竣工台账。以前我手工算,掩码广播容易错,VLAN 和网段还老对不上,台账一行行填更是体力活。

后来自己写了个小工具,填总网段 + 目标掩码 + 起始 VLAN,点一下就把活干完了。

它能干什么

  • 任意总网段拆成任意目标掩码(/20~/30 都行),网络地址、掩码、反掩码、网关、广播、可用区间、可用数全自动算,保证不重叠不遗漏
  • VLAN 从起始值递增,每行能单独改 VLAN 和备注(办公 / 监控 / AP / 门禁…)
  • 网段重叠或重复,整行标红,并且拦住 Excel 导出,不让脏数据进台账
  • 一键复制文本台账、导出 Excel、生成交换机配置命令

界面和用法

工具是窗口程序,左边填参数,右边出表格:
在这里插入图片描述

操作就三步:填总网段和掩码 → 点「开始规划」→ 复制文本或导出 Excel。VLAN 和备注在表格里直接改,比先算再另填省事。

几个实用点

拆分准不准:拿 10.10.0.0/16 拆 /24,出 256 段,合并回去还是原网段,不会多一块也不会少一块。边界也处理了,/31 按 RFC 3021 点对链路算,/32 当单主机。

冲突检测:这是给交付质量兜底的。重叠、包含、无效网段直接标红,重复 VLAN 给黄色警告。自定义网段模式下,把现网零散 CIDR 粘进去就能查谁和谁打架:
在这里插入图片描述

导出和命令:复制文本直接贴工单;Excel 台账表头加粗、冲突行红底、冻结首行,拿去就能当交付物;配置命令是华为风格,可以直接喂主命令生成工具:

vlan batch 10 to 265
interface Vlanif10
 ip address 10.10.1.1 255.255.255.0

技术实现

核心计算用 Python 标准库 ipaddress,界面 pywebview 嵌网页,Excel 用 openpyxl,最后 PyInstaller 打成单文件 exe,离线绿色双击即用。拆分正确性我写了 31 条测试断言兜底,覆盖无重叠、网关三种模式、/31 / /32 边界、冲突检测这些。

兼容性

Win10 / 11 系统自带 WebView2,双击即用。Win7 干净机得先装 WebView2 运行时(后续也能换 tkinter 版,零依赖)。

如果你也在做园区网地址规划或 VLAN 划分,希望这个工具能帮上忙。欢迎提出改进建议!

本文配套工具,点赞 + 收藏 + 关注,评论区回复“子网规划”获取

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐