以前學校網路出問題,最怕聽到一句:「老師,那台電腦不能上網。」因為你不知道問題在 Mac、網路線、IP、VLAN、交換器 port,還是設備被搬走但清冊沒更新。School IT Toolkit 最厲害的地方,不只是可以一句話管理 Mac,而是當 Mac 和 Switch 都被納管後,資訊組長可以從端點一路追到交換器連接埠,把原本看不見的校園網路,整理成一張可以查、可以修、可以交接的地圖。

 

 

1. 這套工具真正迷人的地方:把校園網路變成地圖

School IT Toolkit 是一套以學校資訊現場為出發點的開源工具包。它不是商品、不是 SaaS、也不是把所有學校硬塞進同一個平台的封閉系統。它更像一位有經驗的校園系管師,把 Mac 機房納管、SSH 批量管理、Homebrew 軟體維護、Switch 探測、IP 話機盤點、LLDP 拓撲、本地 AI 輔助與資安去敏流程整理成一套可以參考、可以修改、可以交接的方法。

如果只把它介紹成「可以批量管理 Mac」,其實還不夠。因為這套工具更有價值的地方,是它能把校園資訊現場最難掌握的那一塊,也就是「設備到底在哪裡、接在哪個 port、走哪個 VLAN、上游是哪台 Switch、哪段鏈路可能出問題」慢慢整理出來。以前網路拓撲常常只存在某位資深資訊人員腦中;一旦人離職、換單位,整張網路地圖就跟著消失。School IT Toolkit 的思路,是把這些現場知識變成清冊、指令、報表與 SOP。

它最有感的地方不是「多一支腳本」,而是讓資訊組長可以用校園語言處理任務:查全校 OS、幫整間教室裝上課軟體、確認哪些 Mac 沒有完整納管、從 Switch 找出某台設備實際接在哪個 port、用 LLDP 畫出核心交換器到教室交換器的上下游關係。這些事情一旦變成可執行流程,學校 IT 就不再只是靠臨場反應救火,而是可以被驗證、被追蹤、被交接。

一句話理解

School IT Toolkit 讓資訊組長不只管理 Mac,而是把 Mac、Switch、IP 話機、連接埠、VLAN、拓撲與報表串成一張校園網管地圖。

2. 一句話管理 Mac:先把端點狀態看清楚

校園資訊維運的第一步,通常不是馬上修,而是先知道現場到底長什麼樣。以前要查 Mac 教室的狀態,可能要打開 Apple Remote Desktop,一台一台點進去看,或是憑印象猜。School IT Toolkit 的 Mac fleet 工具,則可以透過清冊與 SSH 把這些檢查變成一句話。

校園任務 以前怎麼做 現在可以怎麼做
查全校 macOS 版本 逐台開 ARD 或現場查看 對 all 群組下版本查詢指令
整間教室安裝上課工具 逐台下載、逐台安裝 用 Homebrew 對群組批量安裝
查硬碟空間 每台登入慢慢看 一句話查整間教室 df -h
找出未完整納管設備 靠 ARD 清單和印象判斷 跑 audit 產出異常報表
密碼輪替或帳號維護 逐台改,容易漏 用受控腳本分批執行並留下紀錄

例如,要查全校 Mac 版本,可以先用這種方式取得狀態:

tools/mac-fleet/school-ssh --group all -- "sw_vers -productVersion"

老師臨時說明天資訊課要用 git、wget、tree,也不用一台一台裝,可以對指定教室群組批量處理:

tools/mac-fleet/school-brew --group LAB-A install git wget tree

硬碟快滿也是學校 Mac 常見痛點,可以先查容量,不要一開始就亂刪:

tools/mac-fleet/school-ssh --group LAB-A -- "df -h /"

真正讓人安心的是 audit。清冊裡有,不代表真的管得到;ARD 曾經看過,不代表 SSH 還通。透過稽核,你可以把「感覺應該可以」變成「報表顯示真的可以」。

tools/mac-fleet/school-audit --group LAB-A

這些指令本身不花俏,但非常實用。它們讓資訊組長先看見整間教室的狀態,知道哪裡正常、哪裡異常、哪裡需要現場處理。接下來,才有辦法把 Mac 端資料和 Switch 端資料對起來。

3. SSH 管 Switch:校園網路從黑盒子變透明

前面講 Mac 管理,已經能省下很多時間;但 School IT Toolkit 真正厲害的地方,是它沒有停在端點。當 Switch 也能透過 SSH 或 telnet 納入清冊,資訊組長就能從 Mac 一路追到交換器 port。這時候校園網路不再是一團迷霧,而是可以被採集、比對、定位的資料。

School IT Toolkit 的 network-discovery 方向,就是針對交換器探測、LLDP 拓撲與連接埠對應。像 switch-collect 這類工具,可以依照交換器清冊登入設備,抓取常見 show 指令輸出,例如 version、system、MAC address table、ARP、LLDP remote device、interface status、running-config。不同廠牌 Switch 的指令和 prompt 可能不同,所以它不是萬用魔法,而是一個可以依照校內設備調整的採集骨架。

Switch 採集資料 代表什麼 現場可以解決什麼問題
MAC address table 某個 MAC 出現在哪台 Switch、哪個 port 找出 Mac、印表機、IP 話機實際接在哪裡
ARP table IP 與 MAC 的對應關係 查出某個 IP 到底是哪台設備,不再靠猜
LLDP 交換器上下游鄰居資訊 建立核心交換器、樓層交換器、教室交換器拓撲
Interface status port 是否 up/down、速率、狀態 快速判斷線路、port、設備電源或速率異常
Running-config 交換器設定快照 比對異動、保留交接紀錄、避免設定只存在腦中

這些資料一旦收集起來,價值非常高。因為你不只知道「某台 Mac 連不上」,你還能查「它的 MAC 有沒有出現在 Switch table」、「它出現在哪個 port」、「那個 port 現在是 up 還是 down」、「那個 port 屬於哪個 VLAN」、「上游是哪台交換器」。這種從端點追到交換器的能力,是校園排查問題時最救命的一段。

# 採集全部交換器資料;tools/network-discovery/switch-collect;# 只採集指定核心交換器;tools/network-discovery/switch-collect --device CORE-SW

要注意的是,Switch 管理權限非常敏感。建議先使用唯讀或低風險帳號做採集,先抓 show 類資料,不要一開始就做寫入設定。等到校內 SOP 成熟、權限控管清楚,再考慮更進一步的自動化。

4. Mac + Switch 雙邊對照,才是真的強

單獨管理 Mac 很有用,單獨採集 Switch 也很有用;但真正強的是兩邊資料對起來。Mac 端可以告訴你自己的 IP、MAC、預設閘道、DNS、網卡狀態;Switch 端可以告訴你某個 MAC 出現在哪個 port、那個 port 屬於哪個 VLAN、上游鄰居是誰。兩邊一對,很多問題就不必靠猜。

舉例來說,Mac 端可以先查這些資訊:

tools/mac-fleet/school-ssh --host LAB-A-12 -- "ifconfig; netstat -rn; arp -a; scutil --dns"

Switch 端則可以採集 MAC table、ARP、LLDP 和 interface status。接著把兩邊資料比對,就能回答很多過去很難快速回答的問題。

這台設備在哪裡?

用 Mac 端 MAC address 對 Switch MAC table,找出實際 port。

是不是接錯 VLAN?

對照 IP 網段、Switch port VLAN 與清冊位置,快速縮小原因。

設備有沒有被搬走?

如果 MAC 出現在非預期 port,可能是設備被移動或清冊過期。

問題在電腦還是網路?

Mac 端無 IP、Switch port down、ARP 不一致,都能指向不同排查方向。

這就是 School IT Toolkit 很適合校園的原因。它不是只管理單台裝置,而是讓你把端點、網路、清冊、位置、教室與報表放在同一個維運脈絡裡。對資訊組長來說,這比單純看到一排裝置列表更有幫助。

5. 故障定位案例:老師說電腦不能上網,怎麼查?

來看一個很真實的場景。老師反映電腦教室 A 的 LAB-A-12 不能上網。以前的做法可能是:跑去現場,看網路線、重開機、換孔、猜 DHCP、猜 Switch、再問有沒有人動過線。這種方式不是不能解決,但很耗時間,而且經驗很難交接。

用 School IT Toolkit 的思路,可以把排查變成一條路徑。

  1. 先看 Mac 端:確認它有沒有 IP、預設路由、DNS、網卡是否正常。
  2. 找出 Mac 的 MAC address:這是對照 Switch table 的關鍵。
  3. 到 Switch 端查 MAC table:確認這個 MAC 出現在哪台 Switch、哪個 port。
  4. 看 interface status:確認 port 是 up/down、速率是否異常、有沒有被 shutdown。
  5. 查 ARP 與 VLAN:確認 IP 和 MAC 是否對得起來,是否落在正確網段或 VLAN。
  6. 對照 LLDP 與清冊:確認這台設備的實際連接位置和清冊位置是否一致。
# 從 Mac 端先看網路狀態;tools/mac-fleet/school-ssh --host LAB-A-12 -- "ifconfig; netstat -rn; arp -a";# 從 Switch 端採集資料;tools/network-discovery/switch-collect --device LAB-A-SW
查到的現象 可能原因 下一步
Mac 沒有拿到 IP DHCP、VLAN、線路或 port 問題 查 Switch port 與 VLAN 設定
Switch port down 網路線、設備電源、資訊孔或 port 故障 現場檢查線路與資訊孔
MAC 出現在錯誤 port 設備被搬動或清冊過期 更新清冊與位置紀錄
IP 和 MAC 對不起來 IP 衝突、舊 ARP、設備替換 清 ARP、查 DHCP lease、確認設備身份
LLDP 拓撲不符合預期 上游接線改過或設備位置調整 更新拓撲圖與上游連接紀錄

這樣排查的好處是很明顯的:你不再只是「去現場看看」,而是先用資料把問題縮小。也許你最後還是要去現場換線,但你會知道是要去 LAB-A 的哪個 port、哪個座位、哪台 Switch,而不是整間教室亂翻。

6. 建立校園網路拓撲:不再只靠老系管的記憶

很多學校的網路拓撲,其實不是沒有,而是藏在某個人的腦袋裡。誰知道核心交換器在哪、哪一台接到二樓、哪一台接電腦教室、哪個 port 接 IP 話機、哪個 port 接無線基地台。只要人一換,整張網路地圖就開始模糊。

School IT Toolkit 透過 Switch 清冊、LLDP、MAC table、ARP 與 interface status,可以協助學校慢慢建立自己的網路拓撲資料。這不一定一開始就要做成漂亮網站,先能回答三個問題就很有價值:哪台 Switch 接哪台 Switch?哪台設備接在哪個 port?哪些資料和清冊不一致?

第一層:Switch 清冊

列出核心交換器、樓層交換器、教室交換器、管理 IP、位置與登入方式。

第二層:LLDP 關係

看出上游、下游與鄰居設備,建立核心到教室的連線輪廓。

第三層:Port 對應

用 MAC table 與 ARP 找出端點實際位置,對照教室座位與資訊孔。

第四層:異常報表

列出清冊不一致、port down、未知設備、疑似搬移設備與需現場確認項目。

一旦拓撲資料開始累積,學校 IT 的品質會差很多。新同事接手時,不用從零猜;設備搬遷時,可以知道哪些 port 需要更新;網路故障時,可以先看資料縮小範圍;資安稽核時,也能更快提供設備位置與管理紀錄。這種「把校園網路畫出來」的能力,是 School IT Toolkit 很值得放大介紹的核心價值。

7. 和 MDM 的差異:它更懂校園現場任務

這裡不用把 School IT Toolkit 和 MDM 寫成對立。MDM 很擅長裝置註冊、描述檔、政策派送、App 管理與合規控管;這些是正式裝置管理平台很重要的能力。但學校現場常常還有另一種需求:我要知道這間教室能不能上課、這台 Mac 接在哪個 port、哪台 Switch 上游怪怪的、哪幾台設備清冊過期、哪幾個 IP 話機可能還用預設帳密。

MDM 常常回答「這台裝置有沒有被政策管到」;School IT Toolkit 更常回答「這個校園任務能不能被完成」。這是視角差異,不是誰比較高級。甚至很多環境可以兩者並用:MDM 負責政策與合規,School IT Toolkit 負責現場稽核、批量指令、Switch 採集、拓撲盤點、報表與交接 SOP。

問題 MDM 常見視角 School IT Toolkit 視角
這台 Mac 有被管理嗎? 看裝置註冊與合規狀態 看 SSH、ARD、audit 是否真的可用
這間教室能不能上課? 不一定是主要任務語言 用群組查 OS、工具、硬碟、連線狀態
電腦不能上網原因在哪? 多半看端點狀態 從 Mac 追到 Switch port、VLAN、LLDP
設備搬移後清冊準不準? 不一定看實體連接位置 用 MAC table 與 ARP 對照實際位置
交接給下一任怎麼辦? 平台狀態紀錄 清冊、報表、拓撲、踩雷文件、SOP 一起保存

8. 資料留校內:清冊、金鑰、拓撲、報表都不亂跑

校園 IT 的資料其實非常敏感。全校 Mac 清冊、Switch 管理 IP、SSH 私鑰、管理帳號、交換器 running-config、ARP、MAC table、LLDP 拓撲、IP 話機位置,這些資料如果外流,外人可以看出你的內網結構、設備命名規則、管理習慣與潛在弱點。

School IT Toolkit 的設計很重視這件事:公開的是工具、文件與範本;真實清冊、金鑰、密碼、reports、Switch raw output、running-config,都應該只存在校內管理端。這讓資訊組長可以把維運資料留在學校,不一定要把內網拓撲和設備狀態交給外部平台或雲端服務。

可以公開分享

  • GitHub 專案網址
  • 不含真實資料的範例清冊
  • 通用 SOP 與踩雷心得

務必留在校內

  • SSH 私鑰與交換器密碼
  • 真實 inventory 清冊
  • Switch running-config
  • ARP、MAC table、LLDP 報表
  • 內網拓撲與設備位置

這也是為什麼分享工具時,要給網址,不要給資料夾。只要你跑過初始化,本機資料夾就可能含有私鑰、密碼與真實清冊。.gitignore 可以避免機密被提交到 Git,但無法阻止你把整包資料夾壓縮或 AirDrop 給別人。

9. 實際怎麼開始?從三台 Mac、一台 Switch 做起

這套工具很強,但越強的工具越需要穩穩導入。最好的起點不是全校開跑,而是一台管理端 Mac、三台測試 Mac、一台可以合法登入的 Switch。先把最小流程跑通,再慢慢擴大。

步驟一:取得乾淨專案

git clone [https://github.com/polik18/school-it-toolkit.git](https://github.com/polik18/school-it-toolkit.git) school-it-toolkit;cd school-it-toolkit

步驟二:執行初始化

python3 setup/init-wizard.py

步驟三:建立 Mac 測試清冊

name,host,group,location,notes;LAB-A-01,192.168.10.101,LAB-A,電腦教室A,測試機1;LAB-A-02,192.168.10.102,LAB-A,電腦教室A,測試機2;LAB-A-03,192.168.10.103,LAB-A,電腦教室A,測試機3

步驟四:用 ARD 打通 SSH

透過 Apple Remote Desktop 對測試 Mac 做第一次 bootstrap,建立管理帳號、開啟 Remote Login、佈署 SSH 公鑰。完成後,用 school-ssh 驗證。

tools/mac-fleet/school-ssh --group LAB-A -- "whoami; hostname; sw_vers -productVersion"

步驟五:加入一台 Switch 做採集測試

先準備一台合法可登入的交換器,例如教室交換器或測試用 Switch。確認帳號權限只做 show 類資料採集,不要一開始就做寫入設定。

tools/network-discovery/switch-collect --device LAB-A-SW

步驟六:把 Mac 與 Switch 報表對起來

從 Mac 端取得 IP、MAC、路由與 ARP,再從 Switch 端取得 MAC table、ARP、LLDP 和 interface status。只要能對出一台 Mac 實際接在哪個 port,這個流程就已經開始有價值。

步驟七:擴大到整間教室

等三台測試機和一台 Switch 流程穩定,再把 LAB-A 的所有 Mac 和教室 Switch 加入清冊。這時候你會開始看到一張真正屬於學校的網路地圖慢慢長出來。

10. 日常維運怎麼排?讓系管工作不再救火

School IT Toolkit 最適合變成固定節奏,而不是想到才用。你可以把校園維運分成每天、每週、每月、學期初、寒暑假幾個層級,讓問題在變大之前就被看見。

頻率 Mac 任務 Switch / 網路任務 好處
上課前 查教室 Mac 是否在線、硬碟是否爆滿 確認教室 Switch port 狀態 避免上課才發現不能用
每週 跑 audit 找出未完整納管設備 採集 MAC table、ARP、interface status 異常不會越積越多
每月 檢查 Homebrew outdated、安排更新 比對 running-config 與 LLDP 拓撲 軟體與網路設定都有紀錄
學期初 補齊課程工具與教室群組 更新教室資訊孔與 Switch port 對照 讓課程環境穩定
寒暑假 OS 升級、密碼輪替、清理磁碟 拓撲盤點、設備汰換、設定備份 把大型維護留在低風險時段

如果再加上本地 AI,可以讓 AI 幫忙讀報表、整理異常、產生維護公告草稿,甚至把「這週哪些教室最需要處理」整理出優先順序。但最後按下去的人還是資訊人員,尤其涉及刪檔、改密碼、改設定、升級系統或修改 Switch 設定時,一定要先測試再分批。

11. FAQ:常見問題一次整理

Q1:School IT Toolkit 最適合解決什麼問題?
它最適合解決校園 IT 裡「重複、分散、難查、難交接」的問題。像是批量查 Mac 狀態、安裝上課軟體、稽核哪些設備真的管得到、採集 Switch 狀態、建立 port 對照、整理網路拓撲與留下 SOP。

Q2:它可以做一句話全校 OS 升級嗎?
可以把 OS 升級整理成批量任務,但大型升級風險高,不建議第一次就對全校執行。比較好的方式是先查版本、選測試機、分批升級、再用 audit 和版本查詢驗收。升級要排在非上課時段,並準備回復方案。

Q3:它可以一句話改密碼嗎?
可以用受控腳本分批做密碼輪替,但密碼絕對不要明文留在文章、聊天紀錄或 shell history 裡。建議用安全憑證檔、環境變數或校內密碼管理流程,並記錄成功與失敗主機。

Q4:Switch SSH 納管可以直接改設定嗎?
技術上可以,但不建議一開始就做寫入操作。剛導入時先以 show 類採集為主,例如 MAC table、ARP、LLDP、interface status、running-config。等清冊、權限、備份與回復 SOP 都成熟後,再討論是否要自動化設定變更。

Q5:它和 MDM 可以一起用嗎?
可以。MDM 負責裝置政策、描述檔、App 與合規;School IT Toolkit 負責現場任務、SSH 批量維護、Switch 探測、拓撲盤點、報表與交接 SOP。兩者不是一定要互相取代。

Q6:本地 AI 可以幫什麼?
可以協助閱讀 audit 報表、整理 Switch 採集結果、產生維護公告、解釋錯誤訊息、提出排查順序。但 AI 不應直接對正式設備執行破壞性指令,所有內容都要由資訊人員審查。

Q7:最小怎麼開始?
一台管理端 Mac、三台測試 Mac、一台測試 Switch 就可以開始。先讓 Mac 端 SSH 可用,再讓 Switch 端採集成功,最後試著把一台 Mac 的 MAC address 對到 Switch port。這一步跑通,就代表整套方法開始有價值。

結語:真正厲害的,是把校園網路看清楚

School IT Toolkit 最值得推薦的地方,不只是它能批量管理 Mac,也不是它能跑幾條指令,而是它幫學校建立了一種新的維運視角:從端點看到 Switch,從 Switch 看到連接埠,從連接埠看到 VLAN,從 LLDP 看到上下游拓撲,最後把這些資料整理成清冊、報表和 SOP。

以前,校園網路可能是一團只有資深資訊人員才看得懂的線路與記憶;現在,它可以慢慢變成一張可以查、可以修、可以交接的地圖。當老師說電腦不能上網,你不用再從頭猜起;當設備被搬走,你可以用 MAC table 找到它;當交接到下一任,你可以留下清楚的拓撲和維護紀錄。

這就是 School IT Toolkit 的真正價值:它不是讓工具取代人,而是讓資訊人員不用再靠記憶硬撐。Mac、Switch、IP 話機、拓撲、報表、本地 AI,全都可以被放進同一套校園維運脈絡裡。對學校來說,這不只是自動化,而是讓整個資訊環境終於看得見。

這套工具最有感的好處
  • 一句話查全校或整間教室的 Mac 狀態。
  • 一句話安裝上課需要的軟體工具。
  • 一句話稽核哪些設備真的管得到。
  • 透過 Switch 採集 MAC table、ARP、LLDP、port 狀態。
  • 把 Mac 端資料和 Switch 端資料對起來,快速定位問題。
  • 建立校園網路拓撲,不再只靠人腦記憶。
  • 讓清冊、報表、拓撲與 SOP 成為下一任也看得懂的交接資料。
  • 讓敏感資料留在校內,不必把內網資訊亂丟到外部平台。
⚠️ 技術操作與資安免責聲明本文介紹之 School IT Toolkit 與相關流程,僅適用於具有合法管理權限的校園或組織設備。正式導入前,請先於測試機或隔離環境驗證,並依照校內資安規範管理 SSH 金鑰、Switch 帳密、設備清冊、交換器設定、掃描報表與本地 AI 端點。任何批量指令、系統升級、帳號調整、密碼輪替、磁碟清理、Switch 設定變更、VLAN 調整或 AI 產生之腳本,都應由具備相關權限與技術能力的人員審查後執行。本文為教學與經驗分享,不保證適用於所有環境,亦不構成正式資安、法律、採購或校務決策建議。
創作者介紹
創作者 小黃老師嘿技術 的頭像
小黃老師

小黃老師嘿技術

小黃老師 發表在 痞客邦 留言(0) 人氣( 118 )