本文檔介紹運行Cisco NX-OS的Cisco Nexus 9000交換機上的加電自動調配(POAP)。
思科建議您瞭解以下主題的基本知識:
| 元件 | 平台/軟體 | 版本/值 | 目的 |
|---|---|---|---|
| Nexus交換器 | N9K-C9336C-FX2 | NX-OS 10.6(2) | POAP裝置 |
| 調配伺服器 | Ubuntu伺服器 | 24.04.5太位元組 | 外部調配基礎架構 |
| DHCP/TFTP服務 | dnsmasq | 2.91 | 提供DHCP和TFTP服務 |
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
本實驗使用直接連線到提供外部調配基礎設施的Ubuntu伺服器的Cisco Nexus 9000交換機。
目標是使拓撲保持簡單,以便無需在Nexus交換機和調配伺服器之間新增網路裝置即可觀察POAP工作流程。
Nexus交換機上的Ethernet1/10直接連線到Ubuntu伺服器上的ens224。

部署新的Cisco Nexus交換機需要先進行初始配置,然後裝置才能加入網路。
PowerOn自動調配(POAP)可自動執行此引導過程。當受支援的Nexus交換機啟動時沒有啟動配置,Cisco NX-OS可以進入POAP模式,通過DHCP獲取臨時網路資訊,檢索調配指令碼,然後使用該指令碼來調配所需的軟體映像和裝置配置。
POAP主要與初始或第0天調配相關聯,因為交換機可以獲得部署所需的資源,而無需通過CLI手動輸入完整的配置。
如果沒有POAP,Nexus交換機的初始部署可能需要手動互動,以便配置網路連線、傳輸配置檔案和準備所需的Cisco NX-OS軟體映像。
藉助POAP,交換機可以自動發現調配基礎設施並檢索部署所需的資源。
在高級別,POAP將在受支援的Nexus交換機啟動時開始,而無需啟動配置。交換器會啟動布建程式,並嘗試取得存取布建基礎架構所需的網路資訊。
網路連線建立後,交換機檢索並運行POAP指令碼。該指令碼確定與裝置相關聯的軟體映像和配置資源,並控制其餘的調配操作。
思科將POAP流程分為五個主要階段:
下一部分將介紹預配過程中每個階段的角色。
POAP在Cisco NX-OS中作為分步引導過程運行。每個階段都執行自動裝置調配所需的特定功能。
瞭解這些階段為本文檔稍後介紹的實施和驗證工作流程提供了基礎。
當Nexus交換機通電時,Cisco NX-OS載入已安裝的軟體映像並搜尋啟動配置。
如果存在啟動配置,交換機將繼續執行正常的引導過程。如果未找到啟動配置,則POAP模式啟動。
在啟動過程中,NX-OS顯示一個提示,提供終止POAP並繼續正常互動設定的選項。POAP在沒有使用者干預的情況下繼續。
如果POAP繼續,則在發現過程開始之前,前面板介面將置於其預設配置中。
| 條件 | 結果 |
|---|---|
| 存在啟動配置。 | NX-OS繼續正常引導過程。 |
| 啟動配置不存在。 | POAP模式啟動。 |
| POAP被手動中止。 | NX-OS進入正常的互動設定。 |
| POAP繼續。 | 此過程繼續進行USB發現。 |
POAP啟動後,NX-OS會搜尋可訪問的USB裝置以調配資源。
如果在USB裝置上找到POAP指令碼,NX-OS將開始執行指令碼。如果沒有找到可用的指令碼,POAP將繼續進行DHCP發現。
基於USB的調配是POAP工作流程的一部分;但是,本文檔中的實施重點介紹通過DHCP進行的基於網路的調配。
如果在USB發現期間未找到POAP指令碼,交換機將啟動DHCP發現。
在此階段,交換機通過可用的前面板介面或管理介面傳送DHCP發現消息,以便找到可以提供POAP所需資訊的DHCP伺服器。
Cisco Nexus DHCP客戶端使用客戶端識別符號中的交換機序列號。調配基礎架構可以使用此資訊識別裝置並提供調配過程所需的載入程式資訊。
DHCP協商使用標準的發現、提供、請求、確認(DORA)流程:
| DHCP消息 | 目的 |
|---|---|
| 發現 | Nexus交換機搜尋可用的DHCP伺服器。 |
| 優惠 | DHCP伺服器提供網路和POAP相關資訊。 |
| 請求 | 交換機請求選定的DHCP提供。 |
| 確認 | DHCP伺服器確認租用並分配IP地址。 |
對於基於網路的POAP,DHCP交換提供查詢POAP指令碼所需的臨時網路資訊和載入程式引數。
DHCP發現消息請求的資訊包括:
引導檔名標識交換機在DHCP協商完成後檢索的POAP指令碼。
DHCP不提供最終的Cisco Nexus配置。它提供建立臨時連線並查詢設定指令碼所需的載入程式資訊。
POAP要求最低DHCP租用時間為3600秒。
接收DHCP提供不會自動錶示DHCP發現成功。該服務必須滿足POAP預期的要求,然後交換機才能繼續DHCP請求和確認交換。
如果未收到有效的優惠,則不會通過該優惠分配IP地址。
從Cisco NX-OS版本7.0(3)I7(4)開始,POAP支援RFC 3004定義的DHCP使用者類選項。
對於DHCPv4,POAP使用以下值為Cisco-POAP的使用者類選項77
該值將DHCP請求標識為源自POAP進程。
Cisco-POAP值可在驗證期間使用的資料包捕獲中稍後觀察。
DHCP協商完成後,交換機使用從DHCP伺服器接收的調配資訊來查詢和檢索POAP指令碼。
在本文檔中使用的標準基於網路的工作流程中,DHCP資訊標識包含調配指令碼的TFTP伺服器和引導檔案。建立臨時網路連線後,Cisco NX-OS從調配伺服器下載指令碼。
POAP指令碼包含確定和處理與裝置關聯的軟體映像和配置資源所需的邏輯。
思科提供用Python編寫的參考POAP指令碼。可以自定義該指令碼,以便與調配環境相匹配。
思科參考POAP指令碼包括MD5校驗和。
修改指令碼時,必須先重新計算嵌入的校驗和,然後才能將指令碼用於POAP。
校驗和準備過程將在稍後的「準備檔案完整性資訊」部分中說明。
下載並驗證POAP指令碼後,Cisco NX-OS在交換機本地運行該指令碼。
引用指令碼可以執行調配任務,例如:
執行指令碼期間,不必立即應用下載的配置。
Cisco NX-OS可以存放配置,並在交換機啟動後應用目標軟體映像。因此,配置將在為其準備配置的軟體環境中進行處理。
POAP指令碼可以確定目標Cisco NX-OS映像是否已在本地可用。
如果所需的映像不存在,指令碼可以從配置基礎架構中檢索它。
如果所需的映像已經可用,指令碼可以驗證現有檔案並避免下載其他副本。
在經驗證的實現中,目標映像已經存在於bootflash:中。該指令碼在繼續其餘置備操作之前已驗證映像。
指令碼執行完成後,交換機將進入安裝後重新載入階段。
在此階段,當軟體映像更改是調配過程的一部分時,交換機將重新啟動並以目標Cisco NX-OS軟體映像啟動。
然後,交換器會套用或重播下載的組態。成功應用配置後,Cisco NX-OS會將運行配置複製到啟動配置。
此順序可確保已布建的組態會在為其準備的軟體環境中處理。
配置重播是思科NX-OS在交換機重新啟動後,應用在POAP期間下載的配置的過程。
首次下載配置檔案時,不必應用該檔案。相反,POAP可以在指令碼執行期間暫存配置,並在目標Cisco NX-OS映像變為活動狀態後應用配置。
該過程可概述如下:
| 階段 | 動作 |
|---|---|
| 指令碼執行 | 檢索所需的軟體映像和配置。 |
| 安裝後重新載入 | 在調配操作後重新啟動交換機。 |
| 配置重放 | 應用下載的配置。 |
| 配置永續性 | 將運行配置複製到啟動配置。 |
配置檢索和配置應用程式之間的這種分離是POAP工作流程的重要組成部分。
基於網路的POAP需要外部基礎設施來提供臨時網路連線和對調配資源的訪問。
對於標準POAP工作流程,所需的基礎架構包括:
通過DHCP獲取的網路資訊在POAP調配過程中使用。
本節介紹在Cisco Nexus 9000交換機上實施基於網路的加電自動調配(POAP)所需的元件。
POAP依靠外部DHCP和檔案傳輸服務來提供臨時網路連線和對調配資源的訪問。第三方伺服器平台的設定不在本檔案的範圍之內。
本節中的示例使用前面介紹的拓撲來演示POAP實施。
對於經驗證的實施,調配基礎設施在POAP期間提供Nexus交換機所需的臨時網路資訊和檔案傳輸服務。
DHCP基礎架構必須提供建立臨時連線和查詢POAP指令碼所需的資訊。POAP需要至少3600秒的DHCP租用。
| 資訊 | 目的 |
|---|---|
| IP 位址 | 在POAP期間提供臨時網路連線。 |
| 子網路遮罩 | 定義臨時IP子網。 |
| 預設閘道 | 在需要路由時提供到調配資源的連線。 |
| TFTP伺服器名稱或地址 | 標識從中檢索POAP指令碼的伺服器。 |
| 啟動檔案名稱 | 標識Nexus交換機下載的POAP指令碼。 |
選擇有效的DHCP提供後,Nexus交換機完成DHCP協商,並在調配過程中使用分配的網路資訊。
對於本文檔中經過驗證的示例,調配基礎設施使用以下值:
| 參數 | 實驗室價值 |
|---|---|
| POAP網路 | 192.168.100.0/24 |
| 調配伺服器 | 192.168.100.1 |
| DHCP地址範圍 | 192.168.100.100–192.168.100.110 |
| DHCP租用 | 2小時 |
| TFTP 伺服器 | 192.168.100.1 |
| POAP指令碼 | poap.py |
| Nexus介面 | Ethernet1/10 |
本示例中使用的調配伺服器運行Ubuntu並提供實施所需的DHCP和TFTP服務。第三方伺服器軟體的詳細設定不在本檔案的範圍之內。
Cisco提供使用Python開發的參考POAP指令碼。修改使用者可編輯的選項,以便與調配環境匹配。
POAP指令碼充當調配協調器。在Nexus交換機下載並驗證指令碼後,指令碼將確定交換機如何檢索和處理調配所需的配置和軟體映像資源。
對於經驗證的實施,使用以下選項:
options = { "username": "root", "password": "password", "hostname": "192.168.100.1", "transfer_protocol": "tftp", "mode": "serial_number", "target_system_image": "nxos64-cs.10.6.2.F.bin", "config_path": "/", "target_image_path": "/", }
本示例中顯示的值與實驗環境相對應。生產價值取決於調配基礎架構和部署要求。
| 選項 | 實驗室價值 | 目的 |
|---|---|---|
| 主機名 | 192.168.100.1 | 標識從中檢索預配檔案的伺服器。 |
| transfer_protocol | tftp | 定義檔案傳輸協定。 |
| 模式 | serial_number | 使用交換機序列號來選擇裝置特定的配置檔案。 |
| target_system_image | nxos64-cs.10.6.2.F.bin | 定義目標Cisco NX-OS映像。 |
| config_path | / | 定義包含裝置配置的路徑。 |
| target_image_path | / | 定義包含目標軟體映像的路徑。 |
從遠端伺服器檢索檔案時,參考指令碼需要主機名、使用者名稱和口令。此範例使用TFTP,而TFTP沒有提供使用者名稱和密碼驗證;但是,在初始化過程中,引用指令碼仍會驗證這些引數的存在。
經驗證的實施使用:
"mode": "serial_number"
在serial_number模式下,指令碼將檢索本地交換機的序列號,並使用它來確定相應的配置檔名。
舉例來說:
交換機序列號:FDO262921L3
配置檔案:conf.FDO262921L3
組態檔使用以下格式:conf.<serial-number>
因此,同一個poap.py指令碼可以支援多台Nexus交換機,而每台交換機檢索自己的裝置特定配置。
在高級別上,已驗證的指令碼將執行以下序列:
Identify the switch. ↓ Select conf.
POAP指令碼不包含完整的裝置配置。它包含查詢、驗證和處理預配資源所需的邏輯和引數。
裝置配置檔案包含POAP在目標Nexus交換機上調配的Cisco NX-OS配置。
對於本示例中使用的交換機,serial_number mode將選擇以下配置檔案:
序列號:FDO262921L3
配置檔案:conf.FDO262921L3
配置檔案包含建立預期的第0天配置所需的命令。
對於已驗證的實施,配置包含管理使用者、主機名和環回介面:
username admin password
為了簡化調配工作流的驗證,故意將配置減至最少。
POAP完成後,主機名、管理帳戶和Loopback100介面可提供已成功應用裝置特定配置的明確指示符。
已布建的組態必須包括POAP完成後所需的管理存取。
注意:確保裝置配置包含有效的管理使用者和密碼。即使已布建的組態未提供有效的管理存取許可權,POAP仍可成功完成。
在初始實驗室驗證期間,裝置配置包含主機名和Loopback100介面,但不包含管理使用者。POAP已成功完成;但是,設定後管理訪問不可用。
POAP完成確認預配工作流已成功完成。它不確認第0天配置包含運行和訪問交換機所需的全部設定。
參考POAP工作流程使用MD5校驗和,以便在由Nexus交換機處理之前驗證調配資源的完整性。
POAP將預期的校驗和與根據相應檔案計算的校驗和進行比較。匹配值將確認檔案包含預期資料。
經驗證的實施將完整性資訊用於以下資源:
| 資源 | 完整性資訊 | 目的 |
|---|---|---|
| POAP指令碼 | 嵌入在poap.py中的MD5值 | 在執行之前驗證指令碼。 |
| 裝置配置 | conf.FDO262921L3.md5 | 驗證下載的裝置配置。 |
| Cisco NX-OS映像 | nxos64-cs.10.6.2.F.bin.md5 | 驗證目標軟體映像。 |
引用指令碼中的disable_md5選項控制MD5驗證。預設值為False。
引用POAP指令碼在檔案開頭附近包含一個MD5值:
#md5sum="
修改指令碼內容後,在將指令碼用於POAP之前,必須重新計算嵌入的校驗和。
對於此實現中使用的指令碼,已使用以下內容更新校驗和:
f=poap.py cat "$f" | sed '/^#md5sum/d' > "$f.md5" sed -i "s/^#md5sum=.*/#md5sum=\"$(md5sum "$f.md5" | sed 's/ .*//')\"/" "$f" rm -f "$f.md5"
生成的指令碼包含:
#md5sum="e4dd91fd4296d40abd2f6187152cd86e"
在POAP期間,Cisco NX-OS會計算下載指令碼的校驗和,並將其與指令碼執行前的嵌入值進行比較。
引用指令碼可以使用單獨的MD5檔案驗證裝置配置。
對於此實施:
配置檔案:
conf.FDO262921L3
完整性檔案:
conf.FDO262921L3.md5
完整性檔案必須包含與當前版本conf.FDO.L3關聯262921校驗和。
下載配置後,指令碼將計算其校驗和,並在處理配置之前將其與預期值進行比較。
如果裝置配置發生更改,請在下次POAP嘗試之前更新相應的MD5資訊。
參考指令碼還可以驗證目標Cisco NX-OS映像。
對於此實施:
目標影象:
nxos64-cs.10.6.2.F.bin
完整性檔案:
nxos64-cs.10.6.2.F.bin.md5
完整性檔案包含:
ce50c3f0e387bee578e615a373a4ede0 nxos64-cs.10.6.2.F.bin
在經驗證的實現中,目標映像已經存在於bootflash:中。POAP指令碼計算現有映像的MD5校驗和,並將其與從調配伺服器獲得的值進行比較。
由於兩個值都匹配,因此無需再次下載映像檔案。
附註:MD5驗證驗證檔案完整性。它不會加密調配檔案或自行提供身份驗證。
當交換機沒有啟動配置且已啟用系統範圍的POAP時,POAP會在系統啟動期間運行。
在調配過程開始之前,請驗證POAP狀態:
N9K-POAP-SW1# show system poap System-wide POAP is enabled
Cisco NX-OS允許全域性禁用POAP,而不使用系統無POAP。要再次啟用POAP,請使用系統poap或清除POAP禁用標誌和寫清除poap。
標準POAP在交換機啟動時啟動,沒有啟動配置。
在受控實驗室環境中,運行:
switch# write erase
警告:此指令會清除啟動組態。
Do you wish to proceed anyway? (y/n) [n] y
預設寫擦除操作從永久性記憶體中刪除啟動配置。它不會清除運行配置或引導變數。
驗證啟動組態是否不再存在:
switch# show startup-config No startup configuration
注意:write erase刪除儲存的交換機配置。僅當可以安全刪除或恢復配置時,才使用此過程。
為了避免在POAP後丟失管理訪問許可權,請確保在上一節中準備的裝置配置包含所需的管理憑據。
刪除啟動組態後,重新載入交換器。
如果Cisco NX-OS提示儲存當前運行配置,則不要儲存它。儲存運行配置將重新建立啟動配置並阻止標準POAP觸發條件。
啟動期間,Cisco NX-OS會初始化POAP並提供一個選項以中止進程:
Abort Power On Auto Provisioning [yes - continue with normal setup, no - continue with Power On Auto Provisioning] (yes/no)[no]:
要繼續使用POAP,請接受預設的no選項。
POAP初始化後,交換機首先檢查基於USB的調配資源。如果未找到可用的USB調配指令碼,POAP將繼續執行基於網路的發現。
經驗證的實施產生了以下報文:
2026 Sep 22 18:21:23 switch %$ VDC-1 %$ %POAP-2-POAP_INITED: [FDO262921L3-88:FC:5D:BA:D7:7F] - POAP process initialized 2026 Sep 22 18:21:41 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - USB Initializing Success 2026 Sep 22 18:21:41 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - USB disk not detected
然後POAP啟動IPv4 DHCP發現:
2026 Sep 22 18:23:54 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Start DHCP v4 session 2026 Sep 22 18:23:54 switch %$ VDC-1 %$ %POAP-2-POAP_DHCP_DISCOVER_START: [FDO262921L3-88:FC:5D:BA:D7:7F] - POAP DHCP Discover phase started
收到有效的DHCP響應後,Cisco NX-OS顯示臨時網路引數和POAP指令碼的位置。
經過驗證的實施工作產生了:
2026 Sep 22 18:23:58 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: Recieved DHCP offer from server ip - 192.168.100.1 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Using DHCP, valid information received over Eth1/10 from 192.168.100.1 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Assigned IP address: 192.168.100.108 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Netmask: 255.255.255.0 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Default Gateway: 192.168.100.1 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Script Server: 192.168.100.1 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Script Name: poap.py
在此階段,DHCP發現已完成。交換機具有臨時網路連線以及查詢POAP指令碼所需的資訊。
交換機檢索在DHCP發現過程中識別的POAP指令碼:
2026 Sep 22 18:24:14 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - The POAP Script download has started 2026 Sep 22 18:24:14 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - The POAP Script is being downloaded from [copy tftp://192.168.100.1/poap.py bootflash:scripts/script.sh vrf default ] 2026 Sep 22 18:24:15 switch %$ VDC-1 %$ %POAP-2-POAP_SCRIPT_DOWNLOADED: [FDO262921L3-88:FC:5D:BA:D7:7F] - Successfully downloaded POAP script file
指令碼檢索完成後,POAP將繼續執行指令碼驗證和執行。然後,參考指令碼控制裝置識別、配置檢索、軟體影象處理、配置暫存和其餘調配操作。
使用本節中的資訊驗證POAP工作流的每個主要階段。
可以從多個角度驗證POAP。Nexus控制檯和POAP日誌提供有關內部調配過程的資訊,而DHCP伺服器日誌和資料包捕獲提供進一步的網路交換可視性。
經驗證的實施使用這些源來關聯調配工作流:
| 驗證源 | 提供的資訊 |
|---|---|
| Nexus控制檯 | POAP初始化、DHCP發現、指令碼執行、重新載入和配置重放 |
| Nexus POAP日誌 | 詳細的初始化和指令碼執行資訊 |
| DHCP伺服器日誌 | DHCP協商和檔案傳輸活動 |
| 資料包捕獲 | DHCP和TFTP交換 |
| 運行和啟動配置 | 最終設定結果 |
附註:此部分中的輸出是在受控POAP驗證嘗試期間收集的。稍後的嘗試用於驗證具有管理訪問許可權的最終0天配置。原始時間戳和日誌消息在示例中保留。
第三方伺服器日誌和資料包捕獲僅作為其他驗證源包括在內。第三方軟體的設定不在本檔案的範圍之內。
在系統啟動過程中,驗證POAP是否成功初始化。
Nexus控制檯顯示初始化事件:
2026 Sep 22 18:21:23 switch %$ VDC-1 %$ %POAP-2-POAP_INITED: [FDO262921L3-88:FC:5D:BA:D7:7F] - POAP process initialized
此消息確認交換機已進入POAP工作流。
然後POAP檢查基於USB的調配資源:
2026 Sep 22 18:21:41 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - USB Initializing Success 2026 Sep 22 18:21:41 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - USB disk not detected
在此示例中,沒有可用的USB調配資源。因此,POAP將繼續執行基於網路的發現。
交換機隨後啟動DHCP發現:
2026 Sep 22 18:23:54 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Start DHCP v4 session 2026 Sep 22 18:23:54 switch %$ VDC-1 %$ %POAP-2-POAP_DHCP_DISCOVER_START: [FDO262921L3-88:FC:5D:BA:D7:7F] - POAP DHCP Discover phase started
這些消息確認從USB發現到基於網路的DHCP發現的過渡。
POAP在bootflash:中儲存初始化和指令碼執行日誌。這些檔案提供有關生成控制檯事件後置備進程的其他資訊。
N9K-POAP-SW1# dir bootflash: | include poap 5664 Sep 22 19:52:10 2026 20260922195156_poap_24710_script.log 87366 Sep 22 19:58:48 2026 20260922_194902_poap_24710_init.log N9K-POAP-SW1#
_init.log檔案包含與POAP初始化和發現相關的資訊。
_script.log檔案包含執行POAP指令碼期間生成的詳細資訊。
當存在多個POAP嘗試時,使用檔名中的時間戳將每個檔案與相應的置備嘗試相關聯。
在POAP進入DHCP發現階段後,驗證Nexus交換機是否收到有效的引導網路資訊。
Nexus控制檯確認DHCP發現已啟動,並且通過Ethernet1/10接收了有效資訊:
2026 Sep 22 18:23:54 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Start DHCP v4 session 2026 Sep 22 18:23:54 switch %$ VDC-1 %$ %POAP-2-POAP_DHCP_DISCOVER_START: [FDO262921L3-88:FC:5D:BA:D7:7F] - POAP DHCP Discover phase started 2026 Sep 22 18:23:58 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: Recieved DHCP offer from server ip - 192.168.100.1 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Using DHCP, valid information received over Eth1/10 from 192.168.100.1 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Assigned IP address: 192.168.100.108 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Netmask: 255.255.255.0 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Default Gateway: 192.168.100.1 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Script Server: 192.168.100.1 2026 Sep 22 18:24:02 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Script Name: poap.py
輸出確認POAP選擇了Ethernet1/10,獲得了臨時地址192.168.100.108,並收到了下一個調配階段所需的網關、指令碼伺服器和指令碼檔名。
DHCP伺服器日誌提供了載入程式交換的附加檢視。
記錄的驗證示例:
vendor class: Cisco N9K-C9336C-FX2 user class: Cisco-POAP DHCPDISCOVER(ens224) 88:fc:5d:ba:d7:7f DHCPOFFER(ens224) 192.168.100.108 88:fc:5d:ba:d7:7f DHCPREQUEST(ens224) 192.168.100.108 88:fc:5d:ba:d7:7f DHCPACK(ens224) 192.168.100.108 88:fc:5d:ba:d7:7f
伺服器還識別了POAP載入程式資訊:
option: 67 bootfile-name poap.py option:150 tftp-server-address 192.168.100.1 option: 3 router 192.168.100.1
日誌確認完整的發現、提供、請求和確認交換。日誌還顯示與調配請求關聯的Cisco-POAP使用者類、指令碼檔名、TFTP伺服器地址和預設網關。
資料包捕獲可用於直接驗證網路上的DHCP交換。
對於已驗證的示例,已使用以下命令檢視捕獲:
sudo tcpdump -nn -vvv -r /tmp/poap-run1.pcap \ 'udp port 67 or udp port 68'
捕獲顯示:
DHCP-Message (53), length 1: Discover Vendor-Class (60), length 20: "Cisco N9K-C9336C-FX2" DHCP-Message (53), length 1: Offer DHCP-Message (53), length 1: Request Requested-IP (50), length 4: 192.168.100.108 DHCP-Message (53), length 1: ACK
資料包捕獲確認DHCP伺服器日誌中觀察到的發現、提供、請求和確認序列。
DHCP發現完成後,驗證Nexus交換機是否從DHCP交換期間識別的伺服器檢索POAP指令碼。
Nexus控制檯指示指令碼下載開始的時間:
2026 Sep 22 18:24:14 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - The POAP Script download has started 2026 Sep 22 18:24:14 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - The POAP Script is being downloaded from [copy tftp://192.168.100.1/poap.py bootflash:scripts/script.sh vrf default ] 2026 Sep 22 18:24:15 switch %$ VDC-1 %$ %POAP-2-POAP_SCRIPT_DOWNLOADED: [FDO262921L3-88:FC:5D:BA:D7:7F] - Successfully downloaded POAP script file
這些消息確認交換機從通過DHCP發現的TFTP伺服器檢索了poap.py。
資料包捕獲直接確認指令碼執行過程中生成的TFTP請求。
對於已驗證的示例,運行:
sudo tcpdump -nn -r /tmp/poap-run1.pcap 'udp dst port 69' reading from file /tmp/poap-run1.pcap, link-type EN10MB (Ethernet), snapshot length 262144 13:38:17.012862 IP 192.168.100.108.58485 > 192.168.100.1.69: TFTP, length 16, RRQ "poap.py" octet 13:38:19.955108 IP 192.168.100.108.58550 > 192.168.100.1.69: TFTP, length 29, RRQ "conf.FDO262921L3.md5" octet 13:38:20.651491 IP 192.168.100.108.58680 > 192.168.100.1.69: TFTP, length 25, RRQ "conf.FDO262921L3" octet 13:38:21.737101 IP 192.168.100.108.58866 > 192.168.100.1.69: TFTP, length 35, RRQ "nxos64-cs.10.6.2.F.bin.md5" octet
第一個請求確認臨時POAP地址192.168.100.108與位於192.168.100.1的調配伺服器聯絡並請求了poap.py。後續請求顯示了裝置配置和映像驗證的進展情況。
在執行下載的指令碼之前,Cisco NX-OS會驗證指令碼中嵌入的MD5校驗和。
生成的驗證示例:
2026 Sep 22 18:24:15 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - Script file size 113107, MD5 checksum e4dd91fd4296d40abd2f6187152cd86e 2026 Sep 22 18:24:15 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO262921L3-88:FC:5D:BA:D7:7F] - MD5 checksum received from the script file is e4dd91fd4296d40abd2f6187152cd86e 2026 Sep 22 18:24:15 switch %$ VDC-1 %$ %POAP-2-POAP_SCRIPT_STARTED_MD5_VALIDATED: [FDO262921L3-88:FC:5D:BA:D7:7F] - POAP script execution started(MD5 validated)
匹配值確認下載的指令碼在執行開始之前已通過完整性檢查。
在這個階段,控制從POAP初始化傳遞到下載指令碼中包含的調配邏輯。
啟動POAP指令碼後,驗證該指令碼是否識別Nexus交換機並選擇相應的裝置配置。
在serial_number模式下,參考指令碼使用本地交換機序列號來確定配置檔名。
生成的驗證示例:
根據序列號設定源cfg檔名
序列號FDO262921L3
所選會議檔名:conf.FDO262921L3
輸出確認該指令碼識別了本地序列號和所選的conf.FDO262921L3。
選擇配置檔案後,指令碼將檢索相應的MD5資訊:
2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - Logfile name: /bootflash/20260922182417_poap_23243_script.log - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - Found 1 POAP script logs - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - Setting source cfg filename based-on serial number - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - serial number FDO262921L3 - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - Selected conf file name : conf.FDO262921L3 - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Verifying freespace in bootflash - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Free bootflash space is 106776296.0 KB - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Single image is set - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Copying config file - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Copying MD5 information - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Starting Copy of MD5. src=/conf.FDO262921L3.md5 dest = /bootflash/conf.FDO262921L3.md5 - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - File transfer_protocol = tftp - script.sh
完整性檔案被下載並儲存在bootflash:中, 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - *** Downloaded file is of size 51 *** - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Renamed /bootflash/conf.FDO262921L3.md5.tmp to /bootflash/conf.FDO262921L3.md5 - script.sh
然後,指令碼檢索裝置配置:
2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - INFO: Starting Copy of Config File to /bootflash/poap_conf.cfg - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Copying file options source=/conf.FDO262921L3 destination=/bootflash/poap_conf.cfg login_timeout=120 destination_tmp=poap_conf.cfg.tmp - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Transfering using tftp from /conf.FDO262921L3 to bootflash:/poap_conf.cfg.tmp hostname 192.168.100.1 vrf default - script.sh 2026 Sep 22 18:24:17 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Command is : terminal dont-ask ; terminal password
這些消息確認已成功檢索裝置特定的配置並將其儲存在本地進行處理。
封包擷取可獨立確認Nexus交換器產生的TFTP要求。
對於已驗證的示例:
sudo tcpdump -nn -r /tmp/poap-run1.pcap 'udp dst port 69' reading from file /tmp/poap-run1.pcap, link-type EN10MB (Ethernet), snapshot length 262144 13:38:19.955108 IP 192.168.100.108.58550 > 192.168.100.1.69: TFTP, length 29, RRQ "conf.FDO262921L3.md5" octet 13:38:20.651491 IP 192.168.100.108.58680 > 192.168.100.1.69: TFTP, length 25, RRQ "conf.FDO262921L3" octet
該序列確認交換機在檢索裝置配置之前請求了配置完整性檔案。
TFTP伺服器日誌還記錄了兩次傳輸:
Sep 22 14:26:36 calo-ubuntu24-00505692aeaf dnsmasq-tftp[144902]: sent /srv/tftp/conf.FDO262921L3.md5 to 192.168.100.108 Sep 22 14:26:37 calo-ubuntu24-00505692aeaf dnsmasq-tftp[144902]: sent /srv/tftp/conf.FDO262921L3 to 192.168.100.108
下載配置後,指令碼將計算其MD5校驗和,並將其與預期值進行比較。
本示例中顯示的置備嘗試已生成:
2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Verifying MD5 checksum - script.sh 2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - file name is bootflash:poap_conf.cfg - script.sh 2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - INFO: md5sum a1a51058d79de0348c6cd1934e08acb4 (recalculated) - script.sh 2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Verifying MD5 checksum of /bootflash/poap_conf.cfg (size 120) - script.sh 2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - md5given = a1a51058d79de0348c6cd1934e08acb4 md5calculated = a1a51058d79de0348c6cd1934e08acb4 - script.sh 2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - MD5 match for file = /bootflash/poap_conf.cfg - script.sh
匹配值將確認在此調配嘗試期間下載的配置與其相應的完整性資訊相匹配。
完整性檢查成功後,指令碼將確定如何為目標Cisco NX-OS映像準備配置。
在此範例中:
026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Split Config file - script.sh 2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Target image supports bootstrap replay. Split config is not required. - script.sh 2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Skip split config as it isn't needed with nxos64-cs.10.6.2.F.bin - script.sh
輸出將確認目標映像支援引導重放,並且此配置嘗試不需要配置拆分。
在此階段,已識別、檢索、驗證裝置特定的配置,並為剩餘的POAP工作流做好準備。
在檢索並驗證裝置配置後,驗證POAP指令碼如何處理目標Cisco NX-OS映像。
經驗證的實現使用:nxos64-cs.10.6.2.F.bin
指令碼首先檢索相應的MD5資訊:
2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Starting Copy of MD5. src=/nxos64-cs.10.6.2.F.bin.md5 dest = /bootflash/nxos64-cs.10.6.2.F.bin.md5 - script.sh 2026 Sep 22 18:24:18 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - File transfer_protocol = tftp - script.sh
MD5檔案然後儲存在bootflash:中,
2026 Sep 22 18:24:19 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - *** Downloaded file is of size 57 *** - script.sh 2026 Sep 22 18:24:19 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Renamed /bootflash/nxos64-cs.10.6.2.F.bin.md5.tmp to /bootflash/nxos64-cs.10.6.2.F.bin.md5 - script.sh
指令碼讀取從預配伺服器接收的校驗和:
2026 Sep 22 18:24:19 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - MD5 for system image from server: ce50c3f0e387bee578e615a373a4ede0 - script.sh
然後計算bootflash:中已存在的映像的校驗和。
2026 Sep 22 18:24:19 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Verifying MD5 checksum - script.sh 2026 Sep 22 18:24:19 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - file name is bootflash:nxos64-cs.10.6.2.F.bin - script.sh 2026 Sep 22 18:24:30 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - INFO: md5sum ce50c3f0e387bee578e615a373a4ede0 (recalculated) - script.sh 2026 Sep 22 18:24:30 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Verifying MD5 checksum of /bootflash/nxos64-cs.10.6.2.F.bin (size 2952914432) - script.sh 2026 Sep 22 18:24:30 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - md5given = ce50c3f0e387bee578e615a373a4ede0 md5calculated = ce50c3f0e387bee578e615a373a4ede0 - script.sh
該指令碼確認現有映像與預期映像匹配:
2026 Sep 22 18:24:30 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - MD5 match for file = /bootflash/nxos64-cs.10.6.2.F.bin - script.sh 2026 Sep 22 18:24:30 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - File /bootflash/nxos64-cs.10.6.2.F.bin already exists and MD5 matches - script.sh
匹配值確認所需的Cisco NX-OS映像已經存在於bootflash中:並通過完整性檢查。因此,無需下載映像的另一個副本。
資料包捕獲還確認Nexus請求了映像完整性檔案:
sudo tcpdump -nn -r /tmp/poap-run1.pcap 'udp dst port 69' reading from file /tmp/poap-run1.pcap, link-type EN10MB (Ethernet), snapshot length 262144 13:38:21.737101 IP 192.168.100.108.58866 > 192.168.100.1.69: TFTP, length 35, RRQ "nxos64-cs.10.6.2.F.bin.md5" octet
TFTP伺服器日誌記錄了相同的傳輸:
Sep 22 14:26:38 calo-ubuntu24-00505692aeaf dnsmasq-tftp[144902]: sent /srv/tftp/nxos64-cs.10.6.2.F.bin.md5 to 192.168.100.108
這些輸出確認從預配伺服器檢索nxos64-cs.10.6.2.F.bin.md5。
雖然不需要下載映像檔案,但參考指令碼繼續執行Cisco NX-OS安裝工作流程。
生成的驗證示例:
2026 Sep 22 18:24:31 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - Done copying the second scheduled cfg - script.sh 2026 Sep 22 18:24:31 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: S/N[FDO262921L3]-MAC[88:FC:5D:BA:D7:7F] - terminal dont-ask ; install all nxos bootflash:/nxos64-cs.10.6.2.F.bin no-reload non-interruptive - script.sh
現有映像已通過完整性檢查,無需再次傳輸檔案。但是,引用指令碼仍會針對已驗證的映像呼叫軟體安裝過程。
附註:現有映像和匹配的MD5可以防止不必要的映像下載。這並不一定表示會跳過其餘的軟體安裝工作流。
軟體處理完成後,POAP將繼續進行其餘的布建作業,並準備交換器重新載入。
POAP指令碼成功完成後,驗證交換機是否繼續執行重新載入和配置重播過程。
經驗證的示例報告了成功的指令碼執行,然後報告了重新載入:
2026 Sep 22 18:31:08 switch %$ VDC-1 %$ %POAP-2-POAP_SCRIPT_EXEC_SUCCESS: [FDO262921L3-88:FC:5D:BA:D7:7F] - POAP script execution success 2026 Sep 22 18:31:09 switch %$ VDC-1 %$ %POAP-2-POAP_RELOAD_DEVICE: [FDO262921L3-88:FC:5D:BA:D7:7F] - Reload device
這些消息確認指令碼執行階段已完成以及過渡到安裝後重新載入階段。
交換機重新啟動後,Cisco NX-OS會檢測POAP重放檔案:
2026 Sep 22 18:33:49 %$ VDC-1 %$ %DAEMON-2-SYSTEM_MSG: <<%ASCII-CFG-2-CONF_CONTROL>> Poap replay /bootflash/poap_replay01.cfg - ascii_cfg_server[17165]
然後啟動並完成啟動重放:
2026 Sep 22 18:34:26 %$ VDC-1 %$ %ASCII-CFG-2-CONFIG_REPLAY_STATUS: Bootstrap Replay Started. 2026 Sep 22 18:34:27 %$ VDC-1 %$ %ASCII-CFG-2-CONFIG_REPLAY_STATUS: Bootstrap Replay Done.
這些事件確認Cisco NX-OS已開始處理在POAP期間暫存的配置。
引導重放完成後,NX-OS會處理已調配的配置。
受控驗證嘗試生成了以下消息:
2026 Sep 22 18:35:42 switch %$ VDC-1 %$ %ASCII-CFG-2-CONFIG_REPLAY_STATUS: Ascii Replay Started. 2026 Sep 22 18:35:44 N9K-POAP-SW1 %$ VDC-1 %$ %ASCII-CFG-2-CONFIG_REPLAY_STATUS: Ascii Replay Done. 2026 Sep 22 20:03:26 switch %VDC_MGR-5-VDC_HOSTNAME_CHANGE: vdc 1 hostname changed to N9K-POAP-SW1 2026 Sep 22 20:03:27 N9K-POAP-SW1 %ETHPORT-5-IF_UP: Interface loopback100 is up 2026 Sep 22 20:03:28 N9K-POAP-SW1 %ASCII-CFG-2-CONFIG_REPLAY_STATUS: Ascii Replay Done. 2026 Sep 22 20:03:29 N9K-POAP-SW1 %ASCII-CFG-2-CONF_CONTROL: System ready
這些消息顯示ASCII配置重放,並提供已應用已布建配置的直接證據。
主機名更改為N9K-POAP-SW1,Loopback100成為已調配配置的一部分。
配置重播完成後,Cisco NX-OS將儲存生成的配置。
2026 Sep 22 19:24:03 N9K-POAP-SW1 %$ VDC-1 %$ %ASCII-CFG-2-CONF_CONTROL: System ready [########################################] 100% Copy complete, now saving to disk (please wait)... Copy complete. Auto provisioning complete
自動調配完成消息確認POAP工作流的完成。
在此階段,驗證生成的運行配置和啟動配置,以確認目標的第0天配置是活動的且持久的。
完成POAP後,檢驗預期的第0天配置是否處於活動狀態且持續。確認調配的主機名、管理帳戶、介面配置、Cisco NX-OS映像和系統範圍POAP狀態。
N9K-POAP-SW1# show hostname N9K-POAP-SW1 N9K-POAP-SW1# show user-account admin user:admin this user account has no expiry date roles:network-admin N9K-POAP-SW1# show ip interface brief IP Interface Status for VRF "default"(1) Interface IP Address Interface Status Lo100 10.255.255.100 protocol-up/link-up/admin-up N9K-POAP-SW1# show running-config interface loopback100 !Command: show running-config interface loopback100 !Running configuration last done at: Tue Sep 22 20:03:48 2026 !Time: Tue Sep 22 23:17:52 2026 version 10.6(2) Bios:version 05.53 interface loopback100 description POAP-VALIDATION ip address 10.255.255.100/32 N9K-POAP-SW1# show startup-config interface loopback100 !Command: show startup-config interface loopback100 !Time: Tue Sep 22 23:17:57 2026 !Startup config saved at: Tue Sep 22 20:03:48 2026 version 10.6(2) Bios:version 05.53 interface loopback100 description POAP-VALIDATION ip address 10.255.255.100/32 N9K-POAP-SW1# show startup-config | include username username admin password 5
輸出確認已成功應用裝置特定的配置並將其儲存到啟動配置。
它還確認交換機正在運行預期的Cisco NX-OS映像,並且系統範圍的POAP仍然處於啟用狀態。
本文檔介紹主要POAP元件和工作流程,包括DHCP發現、指令碼檢索和執行、裝置特定的配置選擇、檔案完整性驗證、Cisco NX-OS影象處理和配置重放。
經驗證的實施展示了Cisco Nexus 9000交換機如何獲得所需的調配資源、應用第0天配置並保留最終配置。
驗證過程還演示了如何關聯控制檯消息、POAP日誌、伺服器日誌和資料包捕獲,以確認調配工作流的每個主要階段。
| 修訂 | 發佈日期 | 意見 |
|---|---|---|
1.0 |
12-Oct-2026
|
初始版本 |