Zartmann: Vad gör DNA Center vid konfiguration med PnP?

Zartmann Conscia PnP konfiguration av enheter i DNA Center DNAC

DNA Center är management-plattformen som låter användare automatisera sina nätverk. Den erbjuder också en Assurance-funktion som är till nytta vid felsökning och säkerställer att nätverket fungerar som det ska med 360 vyer över hälsostatusen hos nätverk, klienter och appar. Jag kommer inte fokusera på det sistnämnda i det här inlägget, utan det blir en närmare titt på vad DNA Center faktiskt gör med dina enheter vid konfiguration.

I det här inlägget använder jag DNA Center version 1.3.1.4. 

Testfall

Ett enkelt testfall är allt vi behöver för att se vad DNAC gör:

  • På en 2960X som använder PnP med en enkel template
  • Vi undersöker CLI-kommandona som DNAC sänder till enheten

 

Topologi 

Nedanstående topologi används för det här inlägget: 

DCGW är L3-omkopplare för dirigering mellan de två anslutna nätverken. Den har en DHCP-pool definierad för Vlan1 där 2960X är ansluten: 

! DCGW DHCP Pool for PnP: 

ip dhcp excluded-address 100.64.1.14 

! 

ip dhcp pool dhcp_vlan1 

network 100.64.1.12 255.255.255.252 

default-router 100.64.1.14 

option 43 ascii 5A1D;B2;K4;I10.0.0.201;J80; 


Som ni ser vill jag använda
RFC 6598 adresser. Från DNAC version 1.2.8 kan du också använda dessa adresser för Subnet Services och Cluster Services Subnet. Se avsnittet om Required IP Adresses and Subnets i avsnittet Plan the Deployment i Install and Upgrade Guides  

PnP-konfiguration

Tidigare har jag skrivit ett inlägg om PnP och en omprövning av funktionen i inlägget PnP Revisited. 

Nu är fokus att se exakt vad DNAC gör med din switch vid onboarding med den här enkla templaten: 

hostname 2960X_PnP-TEST 

! 

event manager applet catchall 

event cli pattern ".*" sync no skip no 

action 1 syslog msg "$_cli_msg" 

EEM-appleten loggar allt som matas in i enheten på CLI. På det här sättet kan vi övervaka vad DNAC konfigurerar direkt efter att mallen har implementerats – en mycket användbar funktion även vid felsökning. 

Sync no säger att appleten ska köra kommandot asynkront (inte vänta tills appleten är klar) och skip no style=”font-family: Georgia, ’Times New Roman’, ’Bitstream Charter’, Times, serif;” data-contrast=”none”> för att utföra kommandot. Variabeln $ _cli_msg håller det verkliga inmatade kommandot. Att använda $ i vår mall fungerar inte utan att säga till DNAC att det inte är en variabel som kräver användarinmatning:

 

Efter att 2960X startar får den IP-adressen 100.64.1.13 tillsammans med Option 43 som instruerar enheten att kontakta DNAC för PnP-onboarding. Den kommer att visas som UnclaimedInitialized i PnP-appen. Jag claimar att enheten med templaten ovan och när provisioneringen är klar är statusen följande: efter en framgångsrik tilldelning är följande:  

 

Onboarding-kommandon vid konfiguration

Låt oss titta på vad som hände på konsolen under provisioneringen: 

Press RETURN to get started!  

*Mar 1 00:00:18.042: Read env variable - LICENSE_BOOT_LEVEL =  

*Jan 2 00:00:00.153: %IOS_LICENSE_IMAGE_APPLICATION-6-LICENSE_LEVEL: Module name = c2960x_lanbase Next reboot level = lanbase and License = lanbase 

Jan 19 09:02:38.123: in Switch 0. Cannot read pid from Flexstack module 

Jan 19 09:03:21.849: %STACKMGR-4-SWITCH_ADDED: Switch 1 has been ADDED to the stack 

Jan 19 09:03:23.222: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to down 

Jan 19 09:03:23.222: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0, changed state to down 

Jan 19 09:03:28.161: %SPANTREE-5-EXTENDED_SYSID: Extended SysId enabled for type vlan 

Jan 19 09:03:51.286: %STACKMGR-5-SWITCH_READY: Switch 1 is READY 

Jan 19 09:03:51.286: %STACKMGR-4-STACK_LINK_CHANGE: Stack Port 1 Switch 1 has changed to state DOWN 

Jan 19 09:03:51.286: %STACKMGR-4-STACK_LINK_CHANGE: Stack Port 2 Switch 1 has changed to state DOWN 

Jan 19 09:03:51.891: %STACKMGR-5-MASTER_READY: Master Switch 1 is READY 

Jan 19 09:03:52.030: %SYS-5-RESTART: System restarted -- 

Cisco IOS Software, C2960X Software (C2960X-UNIVERSALK9-M), Version 15.2(7)E1, RELEASE SOFTWARE (fc4) 

Technical Support: http://www.cisco.com/techsupport 

Copyright (c) 1986-2019 by Cisco Systems, Inc. 

Compiled Sat 07-Dec-19 09:42 by prod_rel_team 

Jan 19 09:03:53.292: %USB_CONSOLE-6-MEDIA_RJ45: Console media-type is RJ45. 

Jan 19 09:03:54.012: %LINK-3-UPDOWN: Interface FastEthernet0, changed state to down 

Jan 19 09:03:54.722: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/48, changed state to up 

Jan 19 09:03:55.015: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0, changed state to down 

Jan 19 09:03:56.721: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/48, changed state to up 

Jan 19 09:03:57.721: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/48, changed state to down 

Jan 19 09:03:57.787: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to up 

Jan 19 09:03:58.780: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/48, changed state to up 

Jan 19 09:04:04.016: %PNPA-DHCP Op-43 Msg: Process state = READY 

Jan 19 09:04:04.016: %PNPA-DHCP Op-43 Msg: OK to process message 

Jan 19 09:04:04.019: XML-UPDOWN: PNPA_DHCP_OP43 XML Interface(102) UP. PID=93 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdoon.1.ntf.don=93 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdoop.1.org=[A1D;B2;K4;I10.0.0.201;J80;] 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdgfa.1.inp=[B2;K4;I10.0.0.201;J80;] 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdgfa.1.B2.s12=[ ipv4 ] 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdgfa.1.K4.htp=[ transport http ] 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdgfa.1.Ix.srv.ip.rm=[ 10.0.0.201 ] 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdgfa.1.Jx.srv.rt.rm=[ port 80 ] 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdoop.1.ztp=[pnp-zero-touch] host=[] ipad=[10.0.0.201] port=80 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pors.done=1 

Jan 19 09:04:04.019: %PNPA-DHCP Op-43 Msg: _pdokp.1.kil=[PNPA_DHCP_OP43] pid=93 idn=[Vlan1] 

Jan 19 09:04:04.019: XML-UPDOWN: Vlan1 XML Interface(102) SHUTDOWN(101). PID=93 

Jan 19 09:04:18.011: %PNP-6-HTTP_CONNECTING: PnP Discovery trying to connect to PnP server http://10.0.0.201:80/pnp/HELLO 

Jan 19 09:04:19.017: %PNP-6-HTTP_CONNECTED: PnP Discovery connected to PnP server http://10.0.0.201:80/pnp/HELLO 

Jan 19 09:04:20.027: %PNP-6-PROFILE_CONFIG: PnP Discovery profile pnp-zero-touch configured 

Jan 19 09:05:08.419: %PNP-6-PNP_DISCOVERY_DONE: PnP Discovery done successfully 

Jan 19 09:05:09.289: %SYS-6-CLOCKUPDATE: System clock has been updated from 09:05:04 UTC Sun Jan 19 2020 to 09:05:09 UTC Sun Jan 19 2020, configured from console by console. 

Jan 19 09:05:09.537: %PKI-4-NOCONFIGAUTOSAVE: Configuration was modified. Issue "write memory" to save new IOS PKI configuration 

000041: Jan 19 09:09:13.045: %SSH-5-ENABLED: SSH 1.99 has been enabled 

000042: Jan 19 09:09:13.331: Configuring snmpv3 USM user, persisting snmpEngineBoots. Please Wait...  

000043: Jan 19 09:09:13.541: %PARSER-4-BADCFG: Unexpected end of configuration file.   

000044: Jan 19 09:09:24.030: %HA_EM-6-LOG: catchall: show ip interface brief  

000045: Jan 19 09:09:29.186: %HA_EM-6-LOG: catchall: show ipv6 interface brief  

000046: Jan 19 09:09:34.401: %HA_EM-6-LOG: catchall: copy running-config startup-config  

000047: Jan 19 09:09:45.201: %HA_EM-6-LOG: catchall: enable  

000048: Jan 19 09:09:45.226: %HA_EM-6-LOG: catchall: terminal length 0 

000049: Jan 19 09:09:45.257: %HA_EM-6-LOG: catchall: terminal width 0 

000050: Jan 19 09:09:45.306: %HA_EM-6-LOG: catchall: show running-config  

000051: Jan 19 09:09:46.375: %HA_EM-6-LOG: catchall: show auto qos 

000052: Jan 19 09:09:46.498: %HA_EM-6-LOG: catchall: show sdm prefer  

000053: Jan 19 09:09:46.578: %HA_EM-6-LOG: catchall: show mls qos queue-set  

000054: Jan 19 09:09:46.865: %HA_EM-6-LOG: catchall: show ip route summary  

000055: Jan 19 09:09:46.945: %HA_EM-6-LOG: catchall: show flow monitor  

000056: Jan 19 09:09:47.061: %HA_EM-6-LOG: catchall: show interfaces  

000057: Jan 19 09:09:47.504: %HA_EM-6-LOG: catchall: show version  

000058: Jan 19 09:09:47.990: %HA_EM-6-LOG: catchall: show ip ospf 

000059: Jan 19 09:09:48.029: %HA_EM-6-LOG: catchall: show ospfv3  

000060: Jan 19 09:09:48.067: %HA_EM-6-LOG: catchall: show ospfv3 interface  

000061: Jan 19 09:09:48.179: %HA_EM-6-LOG: catchall: show standby  

000062: Jan 19 09:09:48.224: %HA_EM-6-LOG: catchall: show cef state  

000063: Jan 19 09:09:48.368: %HA_EM-6-LOG: catchall: show cdp neighbors detail  

000064: Jan 19 09:09:48.420: %HA_EM-6-LOG: catchall: show lldp neighbors  

000065: Jan 19 09:09:48.487: %HA_EM-6-LOG: catchall: show ip device tracking all  

000066: Jan 19 09:09:48.536: %HA_EM-6-LOG: catchall: show arp 

000067: Jan 19 09:09:48.598: %HA_EM-6-LOG: catchall: show mac address-table  

000068: Jan 19 09:09:48.700: %HA_EM-6-LOG: catchall: show interfaces switchport  

000069: Jan 19 09:09:49.039: %HA_EM-6-LOG: catchall: show lldp neighbors detail  

000070: Jan 19 09:09:49.140: %HA_EM-6-LOG: catchall: show flow monitor  

000071: Jan 19 09:09:49.189: %HA_EM-6-LOG: catchall: show logging  

000072: Jan 19 09:09:49.249: %HA_EM-6-LOG: catchall: show snmp 

000073: Jan 19 09:09:49.294: %HA_EM-6-LOG: catchall: show snmp host  

000074: Jan 19 09:09:49.367: %HA_EM-6-LOG: catchall: show cef interface brief  

000075: Jan 19 09:09:49.539: %HA_EM-6-LOG: catchall: show clock  

000076: Jan 19 09:09:49.734: %HA_EM-6-LOG: catchall: show license right-to-use detail  

000077: Jan 19 09:09:49.979: %HA_EM-6-LOG: catchall: show license right-to-use usage  

000078: Jan 19 09:09:50.203: %HA_EM-6-LOG: catchall: show license right-to-use summary  

000079: Jan 19 09:09:50.395: %HA_EM-6-LOG: catchall: show hosts  

000080: Jan 19 09:09:50.912: %HA_EM-6-LOG: catchall: show ip access-lists  

000081: Jan 19 09:09:50.954: %HA_EM-6-LOG: catchall: show ipv6 access-list  

000082: Jan 19 09:09:51.405: %HA_EM-6-LOG: catchall: show template  

000083: Jan 19 09:09:51.587: %HA_EM-6-LOG: catchall: show template interface source built-in AP_INTERFACE_TEMPLATE 

000084: Jan 19 09:09:51.664: %HA_EM-6-LOG: catchall: show template interface binding AP_INTERFACE_TEMPLATE 

000085: Jan 19 09:09:51.751: %HA_EM-6-LOG: catchall: show template interface source built-in DMP_INTERFACE_TEMPLATE 

000086: Jan 19 09:09:51.828: %HA_EM-6-LOG: catchall: show template interface binding DMP_INTERFACE_TEMPLATE 

000087: Jan 19 09:09:51.919: %HA_EM-6-LOG: catchall: show template interface source built-in IP_CAMERA_INTERFACE_TEMPLATE 

000088: Jan 19 09:09:51.999: %HA_EM-6-LOG: catchall: show template interface binding IP_CAMERA_INTERFACE_TEMPLATE 

000089: Jan 19 09:09:52.094: %HA_EM-6-LOG: catchall: show template interface source built-in IP_PHONE_INTERFACE_TEMPLATE 

000090: Jan 19 09:09:52.174: %HA_EM-6-LOG: catchall: show template interface binding IP_PHONE_INTERFACE_TEMPLATE 

000091: Jan 19 09:09:52.293: %HA_EM-6-LOG: catchall: show template interface source built-in LAP_INTERFACE_TEMPLATE 

000092: Jan 19 09:09:52.366: %HA_EM-6-LOG: catchall: show template interface binding LAP_INTERFACE_TEMPLATE 

000093: Jan 19 09:09:52.468: %HA_EM-6-LOG: catchall: show template interface source built-in MSP_CAMERA_INTERFACE_TEMPLATE 

000094: Jan 19 09:09:52.548: %HA_EM-6-LOG: catchall: show template interface binding MSP_CAMERA_INTERFACE_TEMPLATE 

000095: Jan 19 09:09:52.639: %HA_EM-6-LOG: catchall: show template interface source built-in MSP_VC_INTERFACE_TEMPLATE 

000096: Jan 19 09:09:52.712: %HA_EM-6-LOG: catchall: show template interface binding MSP_VC_INTERFACE_TEMPLATE 

000097: Jan 19 09:09:52.803: %HA_EM-6-LOG: catchall: show template interface source built-in PRINTER_INTERFACE_TEMPLATE 

000098: Jan 19 09:09:52.884: %HA_EM-6-LOG: catchall: show template interface binding PRINTER_INTERFACE_TEMPLATE 

000099: Jan 19 09:09:52.985: %HA_EM-6-LOG: catchall: show template interface source built-in ROUTER_INTERFACE_TEMPLATE 

000100: Jan 19 09:09:53.051: %HA_EM-6-LOG: catchall: show template interface binding ROUTER_INTERFACE_TEMPLATE 

000101: Jan 19 09:09:53.149: %HA_EM-6-LOG: catchall: show template interface source built-in SWITCH_INTERFACE_TEMPLATE 

000102: Jan 19 09:09:53.230: %HA_EM-6-LOG: catchall: show template interface binding SWITCH_INTERFACE_TEMPLATE 

000103: Jan 19 09:09:53.317: %HA_EM-6-LOG: catchall: show template interface source built-in TP_INTERFACE_TEMPLATE 

000104: Jan 19 09:09:53.390: %HA_EM-6-LOG: catchall: show template interface binding TP_INTERFACE_TEMPLATE 

000105: Jan 19 09:09:54.390: %HA_EM-6-LOG: catchall: show version  

000106: Jan 19 09:09:54.796: %HA_EM-6-LOG: catchall: show ip interface  

000107: Jan 19 09:09:54.879: %HA_EM-6-LOG: catchall: show etherchannel summary  

000108: Jan 19 09:09:55.145: %HA_EM-6-LOG: catchall: show access-lists  

000109: Jan 19 09:09:55.795: %HA_EM-6-LOG: catchall: show version  

000110: Jan 19 09:09:55.904: %HA_EM-6-LOG: catchall: show spanning-tree  

000111: Jan 19 09:09:55.970: %HA_EM-6-LOG: catchall: show spanning-tree summary  

000112: Jan 19 09:09:56.085: %HA_EM-6-LOG: catchall: show vtp status  

000113: Jan 19 09:09:56.204: %HA_EM-6-LOG: catchall: show vlan 

000114: Jan 19 09:09:56.312: %HA_EM-6-LOG: catchall: show vlan mtu 

000115: Jan 19 09:09:56.907: %HA_EM-6-LOG: catchall: show etherchannel detail  

000116: Jan 19 09:09:56.973: %HA_EM-6-LOG: catchall: show file systems  

000117: Jan 19 09:09:57.109: %HA_EM-6-LOG: catchall: dir flash:  

000118: Jan 19 09:09:57.190: %HA_EM-6-LOG: catchall: show subsys 

000119: Jan 19 09:10:15.764: %HA_EM-6-LOG: catchall: enable  

000120: Jan 19 09:10:15.767: %HA_EM-6-LOG: catchall: enable  

000121: Jan 19 09:10:15.819: %HA_EM-6-LOG: catchall: terminal length 0 

000122: Jan 19 09:10:15.833: %HA_EM-6-LOG: catchall: terminal length 0 

000123: Jan 19 09:10:15.882: %HA_EM-6-LOG: catchall: terminal width 0 

000124: Jan 19 09:10:15.886: %HA_EM-6-LOG: catchall: terminal width 0 

000125: Jan 19 09:10:15.966: %HA_EM-6-LOG: catchall: terminal width 0 

000126: Jan 19 09:10:15.980: %HA_EM-6-LOG: catchall: show running-config  

000127: Jan 19 09:10:16.333: %HA_EM-6-LOG: catchall: configure terminal  

000128: Jan 19 09:10:16.816: %HA_EM-6-LOG: catchall: ip device tracking  

000129: Jan 19 09:10:16.892: %HA_EM-6-LOG: catchall: ip device tracking probe delay 60 

000130: Jan 19 09:10:16.966: %HA_EM-6-LOG: catchall: ip device tracking probe use-svi 

000131: Jan 19 09:10:17.043: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/29  

000132: Jan 19 09:10:17.085: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000133: Jan 19 09:10:17.158: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/40  

000134: Jan 19 09:10:17.218: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000135: Jan 19 09:10:17.259: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/49  

000136: Jan 19 09:10:17.329: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000137: Jan 19 09:10:17.438: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/46  

000138: Jan 19 09:10:17.483: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000139: Jan 19 09:10:17.525: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/52  

000140: Jan 19 09:10:17.567: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000141: Jan 19 09:10:17.609: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/33  

000142: Jan 19 09:10:17.647: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000143: Jan 19 09:10:17.689: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/31  

000144: Jan 19 09:10:17.731: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000145: Jan 19 09:10:17.773: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/36  

000146: Jan 19 09:10:17.815: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000147: Jan 19 09:10:17.857: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/1  

000148: Jan 19 09:10:17.899: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000149: Jan 19 09:10:17.941: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/23  

000150: Jan 19 09:10:17.980: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000151: Jan 19 09:10:18.032: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/7  

000152: Jan 19 09:10:18.070: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000153: Jan 19 09:10:18.112: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/27  

000154: Jan 19 09:10:18.154: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000155: Jan 19 09:10:18.196: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/28  

000156: Jan 19 09:10:18.238: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000157: Jan 19 09:10:18.284: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/50  

000158: Jan 19 09:10:18.364: %HA_EM-6-LOG: catchall: show startup-config  

000159: Jan 19 09:10:18.381: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000160: Jan 19 09:10:18.434: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/32  

000161: Jan 19 09:10:18.476: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000162: Jan 19 09:10:18.518: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/12  

000163: Jan 19 09:10:18.560: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000164: Jan 19 09:10:18.602: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/13  

000165: Jan 19 09:10:18.644: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000166: Jan 19 09:10:18.686: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/9  

000167: Jan 19 09:10:18.724: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000168: Jan 19 09:10:18.766: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/3  

000169: Jan 19 09:10:18.808: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000170: Jan 19 09:10:18.850: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/15  

000171: Jan 19 09:10:18.892: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000172: Jan 19 09:10:18.934: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/10  

000173: Jan 19 09:10:18.972: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000174: Jan 19 09:10:19.014: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/34  

000175: Jan 19 09:10:19.056: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000176: Jan 19 09:10:19.098: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/5  

000177: Jan 19 09:10:19.136: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000178: Jan 19 09:10:19.182: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/39  

000179: Jan 19 09:10:19.231: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000180: Jan 19 09:10:19.262: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/42  

000181: Jan 19 09:10:19.311: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000182: Jan 19 09:10:19.353: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/20  

000183: Jan 19 09:10:19.392: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000184: Jan 19 09:10:19.437: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/25  

000185: Jan 19 09:10:19.475: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000186: Jan 19 09:10:19.521: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/35  

000187: Jan 19 09:10:19.559: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000188: Jan 19 09:10:19.605: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/41  

000189: Jan 19 09:10:19.643: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000190: Jan 19 09:10:19.685: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/24  

000191: Jan 19 09:10:19.727: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000192: Jan 19 09:10:19.769: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/18  

000193: Jan 19 09:10:19.811: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000194: Jan 19 09:10:19.853: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/38  

000195: Jan 19 09:10:19.895: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000196: Jan 19 09:10:19.933: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/47  

000197: Jan 19 09:10:19.975: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000198: Jan 19 09:10:20.017: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/14  

000199: Jan 19 09:10:20.059: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000200: Jan 19 09:10:20.101: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/37  

000201: Jan 19 09:10:20.140: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000202: Jan 19 09:10:20.196: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/51  

000203: Jan 19 09:10:20.234: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000204: Jan 19 09:10:20.276: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/6  

000205: Jan 19 09:10:20.335: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000206: Jan 19 09:10:20.363: %HA_EM-6-LOG: catchall: copy flash:vlan.dat scp:  

000207: Jan 19 09:10:20.412: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/8  

000208: Jan 19 09:10:20.486: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000209: Jan 19 09:10:20.563: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/22  

000210: Jan 19 09:10:20.636: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000211: Jan 19 09:10:20.678: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/26  

000212: Jan 19 09:10:20.716: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000213: Jan 19 09:10:20.758: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/2  

000214: Jan 19 09:10:20.797: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000215: Jan 19 09:10:20.839: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/17  

000216: Jan 19 09:10:20.881: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000217: Jan 19 09:10:20.916: %HA_EM-6-LOG: catchall: interface FastEthernet0  

000218: Jan 19 09:10:20.957: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000219: Jan 19 09:10:20.999: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/44  

000220: Jan 19 09:10:21.038: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000221: Jan 19 09:10:21.080: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/19  

000222: Jan 19 09:10:21.118: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000223: Jan 19 09:10:21.164: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/43  

000224: Jan 19 09:10:21.202: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000225: Jan 19 09:10:21.241: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/4  

000226: Jan 19 09:10:21.283: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000227: Jan 19 09:10:21.321: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/45  

000228: Jan 19 09:10:21.363: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000229: Jan 19 09:10:21.405: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/21  

000230: Jan 19 09:10:21.447: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000231: Jan 19 09:10:21.489: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/11  

000232: Jan 19 09:10:21.527: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000233: Jan 19 09:10:21.569: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/16  

000234: Jan 19 09:10:21.611: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000235: Jan 19 09:10:21.653: %HA_EM-6-LOG: catchall: interface GigabitEthernet1/0/30  

000236: Jan 19 09:10:21.691: %HA_EM-6-LOG: catchall: ip device tracking maximum 10 

000237: Jan 19 09:10:21.716: %HA_EM-6-LOG: catchall: exit  

000238: Jan 19 09:10:21.723: %SYS-5-CONFIG_I: Configured from console by dnac on vty2 (10.0.0.101) 

000239: Jan 19 09:10:21.761: %HA_EM-6-LOG: catchall: exit  

000240: Jan 19 09:10:21.919: %HA_EM-6-LOG: catchall: exit  

000241: Jan 19 09:10:23.324: %HA_EM-6-LOG: catchall: enable  

000242: Jan 19 09:10:23.355: %HA_EM-6-LOG: catchall: terminal length 0 

000243: Jan 19 09:10:23.387: %HA_EM-6-LOG: catchall: terminal width 0 

000244: Jan 19 09:10:23.429: %HA_EM-6-LOG: catchall: write memory  

000245: Jan 19 09:10:25.770: %HA_EM-6-LOG: catchall: terminal width 0 

000246: Jan 19 09:10:25.788: %HA_EM-6-LOG: catchall: configure terminal  

000247: Jan 19 09:10:25.837: %HA_EM-6-LOG: catchall: no crypto pki trustpoint DNAC-CA 

000248: Jan 19 09:10:25.889: %HA_EM-6-LOG: catchall: crypto key zeroize rsa * 

000249: Jan 19 09:10:25.900: %SYS-5-CONFIG_I: Configured from console by dnac on vty2 (10.0.0.101) 

000250: Jan 19 09:10:25.973: %HA_EM-6-LOG: catchall: exit  

000251: Jan 19 09:10:26.469: %HA_EM-6-LOG: catchall: write memory  

000252: Jan 19 09:10:28.357: %HA_EM-6-LOG: catchall: terminal width 0 

000253: Jan 19 09:10:28.374: %HA_EM-6-LOG: catchall: configure terminal  

000254: Jan 19 09:10:28.423: %HA_EM-6-LOG: catchall: ip http client source-interface Vlan1  

000255: Jan 19 09:10:28.476: %HA_EM-6-LOG: catchall: ip ssh source-interface Vlan1  

000256: Jan 19 09:10:28.500: %HA_EM-6-LOG: catchall: ip ssh version 2  

000257: Jan 19 09:10:28.532: %HA_EM-6-LOG: catchall: ip domain lookup  

000258: Jan 19 09:10:28.577: %HA_EM-6-LOG: catchall: crypto pki trustpoint DNAC-CA 

000259: Jan 19 09:10:28.612: %HA_EM-6-LOG: catchall: enrollment mode ra 

000260: Jan 19 09:10:28.644: %HA_EM-6-LOG: catchall: enrollment terminal  

000261: Jan 19 09:10:28.678: %HA_EM-6-LOG: catchall: usage ssl-client  

000262: Jan 19 09:10:28.717: %HA_EM-6-LOG: catchall: revocation-check crl none  

000263: Jan 19 09:10:28.731: %HA_EM-6-LOG: catchall: exit  

000264: Jan 19 09:10:28.776: %HA_EM-6-LOG: catchall: crypto pki authenticate DNAC-CA 

000265: Jan 19 09:10:30.520: %SYS-5-CONFIG_I: Configured from console by dnac on vty2 (10.0.0.101) 

000266: Jan 19 09:10:30.597: %HA_EM-6-LOG: catchall: exit  

000267: Jan 19 09:10:31.314: %HA_EM-6-LOG: catchall: terminal width 0 

000268: Jan 19 09:10:31.342: %HA_EM-6-LOG: catchall: configure terminal  

000269: Jan 19 09:10:31.527: %HA_EM-6-LOG: catchall: snmp-server host 10.0.0.201 traps version 2c * udp-port 162 

000270: Jan 19 09:10:31.555: %HA_EM-6-LOG: catchall: snmp-server enable traps  

000271: Jan 19 09:10:31.573: %SYS-5-CONFIG_I: Configured from console by dnac on vty2 (10.0.0.101) 

000272: Jan 19 09:10:31.601: %HA_EM-6-LOG: catchall: exit  

000273: Jan 19 09:10:32.181: %HA_EM-6-LOG: catchall: write memory  

000276: Jan 19 09:10:34.767: %SYS-6-LOGGINGHOST_STARTSTOP: Logging to host 10.0.0.201 port 0 CLI Request Triggered 

000277: Jan 19 09:10:34.774: %HA_EM-6-LOG: catchall: logging host 10.0.0.201 transport udp port 514 

000278: Jan 19 09:10:34.788: %SYS-6-LOGGINGHOST_STARTSTOP: Logging to host 10.0.0.201 port 514 started - CLI initiated 

000279: Jan 19 09:10:34.809: %HA_EM-6-LOG: catchall: logging trap 6 

000280: Jan 19 09:10:34.830: %SYS-5-CONFIG_I: Configured from console by dnac on vty2 (10.0.0.101) 

000281: Jan 19 09:10:34.858: %HA_EM-6-LOG: catchall: exit  

000282: Jan 19 09:10:35.431: %HA_EM-6-LOG: catchall: write memory  

2960X_PnP-TEST> 

Phew! +280 poster! Låt oss bryta ner det lite… 

Till att börja med ser vi några meddelanden i början som man normalt sett inte ser, exempelvis Op-43 Msg: Det beror på 5A1D i Option 43-kedjan av DHCP-poolen, “D” för Debug . Under normala omständigheter bör den alternativa koden vara 5A1N, “N” för Normalt. 

De allra första konfigurationsändringarna är följande: 

Jan 19 09:05:09.289: %SYS-6-CLOCKUPDATE: System clock has been updated from 09:05:04 UTC Sun Jan 19 2020 to 09:05:09 UTC Sun Jan 19 2020, configured from console by console. 

Jan 19 09:05:09.537: %PKI-4-NOCONFIGAUTOSAVE: Configuration was modified. Issue "write memory" to save new IOS PKI configuration 

000041: Jan 19 09:09:13.045: %SSH-5-ENABLED: SSH 1.99 has been enabled 

000042: Jan 19 09:09:13.331: Configuring snmpv3 USM user, persisting snmpEngineBoots. Please wait... 

000043: Jan 19 09:09:13.541: %PARSER-4-BADCFG: Unexpected end of configuration file. 

Det här är när PnP-konfigurerar grundläggande konnektivitet till switchen, såsom att lägga till inloggningsuppgifter (CLI och SNMP) och konfigurera SSH. Dessa inloggningsuppgifter krävs för att DNAC ska kunna lägga till enheten i sitt inventarie. Anledningen till att vi ser new PKI configuration, är att DNAC, som är vår PnP-server, installerar ett certifikat som används för PnP-kommunikation. Och uppenbarligen måste klockan vara synkroniserad, därför görs det innan certet installerats. Certifikationsinstallationen görs innan PnP körs. 

Den sista raden 000043: 19 jan 09: 09: 13.541:% PARSER-4-BADCFG: Unexpected end of  configuration file. är normal. Jag har sett det tidigare som ett sista meddelande om att PnP-onboardingen är färdig. Jag tror att det är ett kosmetiskt fel. 

Nu när DNAC är färdig med PnP-onboardingen, börjar den samla in information om switchen med olika show-kommandon. Den sparar också konfiguration 000046: 19 jan. 09: 09: 34.401:% HA_EM-6-LOG: catchall: copy running-config start-config, varefter den börjar konfigurera IP Device Tracking (IPDT). Det är en del av Device Controllability funktionen som är aktiverad som standard. Du hittar en beskrivning i inställningar: 

  Device Controllability PnP konfiguration av enheter i DNA Center DNAC Conscia

Device controllability görs endast vid onboarding med PnP eller genom att lägga till enheter till inventariet med ett Discovery job. Även om de säger att ändringar görs när man lägger till en enhet i inventeringen, har jag inte sett att det händer när man manuellt lägger till 2960X direkt i en site med den här installation. Faktum är att detta är vad dokumentationen säger:  

Efter att ha konfigurerat IPDT sparas konfigurationen med write memory den här gången. 

000239: Jan 19 09:10:21.761: %HA_EM-6-LOG: catchall: exit  

000240: Jan 19 09:10:21.919: %HA_EM-6-LOG: catchall: exit  

000241: Jan 19 09:10:23.324: %HA_EM-6-LOG: catchall: enable 

000242: Jan 19 09:10:23.355: %HA_EM-6-LOG: catchall: terminal length 0 

000243: Jan 19 09:10:23.387: %HA_EM-6-LOG: catchall: terminal width 0 

000244: Jan 19 09:10:23.429: %HA_EM-6-LOG: catchall: write memory  

000245: Jan 19 09:10:25.770: %HA_EM-6-LOG: catchall: terminal width 0 

000246: Jan 19 09:10:25.788: %HA_EM-6-LOG: catchall: configure terminal  

000247: Jan 19 09:10:25.837: %HA_EM-6-LOG: catchall: no crypto pki trustpoint DNAC-CA 

000248: Jan 19 09:10:25.889: %HA_EM-6-LOG: catchall: crypto key zeroize rsa * 

000249: Jan 19 09:10:25.900: %SYS-5-CONFIG_I: Configured from console by dnac on vty2 (10.0.0.101) 

000250: Jan 19 09:10:25.973: %HA_EM-6-LOG: catchall: exit  

000251: Jan 19 09:10:26.469: %HA_EM-6-LOG: catchall: write memory 

PnP försöker radera DNAC-certifikatet. Det är konstigt eftersom vi håller på att onboarda enheter genom att använda ZTP med PnP, vilket innebär konfigurera en ny enhet. Det är uppenbart att DNAC inte tar hänsyn till det här när en ny enhet läggs till i dess inventering. Hade vi använt ett Discovery job när vi la till en enhet hade jag tolkat det som Brownfield-konfigurationen kunnat finnas kvar. 

Härnäst ser det ut som att DNAC försöker rensa alla rsa-nycklar genom att använda crypto key zeroize rsa * -kommandot, men SSH fungerar fortfarande. Låt oss se vad som händer när vi försöker köra det här kommandot på switchen 

2960X_PnP-TEST#conf t 

Enter configuration commands, one per line. End with CNTL/Z. 

2960X_PnP-TEST(config)# 

000377: Jan 19 09:28:19.879: %HA_EM-6-LOG: catchall: configure terminal  

2960X_PnP-TEST(config)#crypto key zeroize rsa * 

% The specified keypair does not exist (*). 

2960X_PnP-TEST(config)# 

000378: Jan 19 09:28:25.126: %HA_EM-6-LOG: catchall: crypto key zeroize rsa * 

2960X_PnP-TEST(config)#crypto key zeroize rsa ? 

WORD keypair label 

<cr> 

 

2960X_PnP-TEST(config)#crypto key zeroize rsa

Det där är roligt! Jag undrar när vi kan se ett nyckelpar med etiketten * i en konfiguration. Visst är det möjligt att konfigurera ett sådant nyckelpar, jag har bara aldrig sett det förut. 

000252: Jan 19 09:10:28.357: %HA_EM-6-LOG: catchall: terminal width 0 

000253: Jan 19 09:10:28.374: %HA_EM-6-LOG: catchall: configure terminal  

000254: Jan 19 09:10:28.423: %HA_EM-6-LOG: catchall: ip http client source-interface Vlan1  

000255: Jan 19 09:10:28.476: %HA_EM-6-LOG: catchall: ip ssh source-interface Vlan1  

000256: Jan 19 09:10:28.500: %HA_EM-6-LOG: catchall: ip ssh version 2  

000257: Jan 19 09:10:28.532: %HA_EM-6-LOG: catchall: ip domain lookup  

000258: Jan 19 09:10:28.577: %HA_EM-6-LOG: catchall: crypto pki trustpoint DNAC-CA 

000259: Jan 19 09:10:28.612: %HA_EM-6-LOG: catchall: enrollment mode ra 

000260: Jan 19 09:10:28.644: %HA_EM-6-LOG: catchall: enrollment terminal  

000261: Jan 19 09:10:28.678: %HA_EM-6-LOG: catchall: usage ssl-client  

000262: Jan 19 09:10:28.717: %HA_EM-6-LOG: catchall: revocation-check crl none  

000263: Jan 19 09:10:28.731: %HA_EM-6-LOG: catchall: exit  

000264: Jan 19 09:10:28.776: %HA_EM-6-LOG: catchall: crypto pki authenticate DNAC-CA 

Ovan är både HTTP- och SSH klient-interfacet konfigurerade. Den första berättar för DNAC vilken IP-adress som ska användas för att hantera enheten. Den senare vet jag inte varför DNAC konfigurerar. Kanske är det användbart för enheter med flera interface för att säkerställa att om du SSH från den routern, så använder du management-interface som source. Speciellt i miljöer med VRF:er konfigurerade. 

Domänuppslag är aktiverade och nu är DNAC-certifikatet installerat. Det gör att enheten litar på DNAC när han kommunicerar med HTTPS. En applikation som kan göra detta är SWIM (Software Image Management). 

Slutligen konfigureras SNMP trap-server och syslog: 

000267: Jan 19 09:10:31.314: %HA_EM-6-LOG: catchall: terminal width 0 

000268: Jan 19 09:10:31.342: %HA_EM-6-LOG: catchall: configure terminal  

000269: Jan 19 09:10:31.527: %HA_EM-6-LOG: catchall: snmp-server host 10.0.0.201 traps version 2c * udp-port 162 

000270: Jan 19 09:10:31.555: %HA_EM-6-LOG: catchall: snmp-server enable traps  

000271: Jan 19 09:10:31.573: %SYS-5-CONFIG_I: Configured from console by dnac on vty2 (10.0.0.101) 

000272: Jan 19 09:10:31.601: %HA_EM-6-LOG: catchall: exit  

000273: Jan 19 09:10:32.181: %HA_EM-6-LOG: catchall: write memory  

000276: Jan 19 09:10:34.767: %SYS-6-LOGGINGHOST_STARTSTOP: Logging to host 10.0.0.201 port 0 CLI Request Triggered 

000277: Jan 19 09:10:34.774: %HA_EM-6-LOG: catchall: logging host 10.0.0.201 transport udp port 514 

000278: Jan 19 09:10:34.788: %SYS-6-LOGGINGHOST_STARTSTOP: Logging to host 10.0.0.201 port 514 started - CLI initiated 

000279: Jan 19 09:10:34.809: %HA_EM-6-LOG: catchall: logging trap 6 

000280: Jan 19 09:10:34.830: %SYS-5-CONFIG_I: Configured from console by dnac on vty2 (10.0.0.101) 

000281: Jan 19 09:10:34.858: %HA_EM-6-LOG: catchall: exit  

000282: Jan 19 09:10:35.431: %HA_EM-6-LOG: catchall: write memory 

Båda serverkonfigurationerna pekar mot DNAC:s VIP av Enterprise-gränssnittet, i det här exemplet: 10.0.0.201.. 

Lägg märke till SNMP:s trapkonfigurationen. Den använder en version 2c community (endast en asterisk visas ovan). Community strängen som är konfigurerad när man använder SNMPv3 är användarnamnet för din SNMPv3-konfiguration. Anledningen till att DNAC konfigurerar SNMP v2c traps är att DNAC för närvarande inte stöder SNMPv3 för assuranceWARNING-meddelandet här: 

SNMP credentials PnP konfiguration av enheter i DNA Center DNAC Conscia

Tänk på det här om du har strikt säkerhetspolicy. Kom ihåg att dessa inställningar (Syslog– och SNMP-servrar) kommer från Design – Network Settings – Network sidan i DNAC och att de är aktiverade som standard. 

Slutsats – DNAC – konfiguration med PnP

Många saker händer i bakgrunden när du onboardar enheter som använder DNAC. Sammanfattningsvis bestämdes detta: 

  • Enhetsuppgifter (CLI och SNMP) 
  • IPDT 
  • Syslog till DNAC på informationsnivå 
  • HTTP-klientkällgränssnitt 
  • SSH-källgränssnitt 
  • SSH version 2 
  • Domänuppslag 
  • DNAC-certifikat 
  • SNMP fångar till DNAC (med v2c) 

Vi märkte också mycket write memory under hela konfigurationen. 

Jag hoppas att det här var en intressant läsning för dig. Jag har alltid gillat att öppna huven och se vad som egentligen händer därunder!  

Läs gärna mer om DNA Center och har du frågor – hör av dig!

 

Jacob Zartmann är en hängiven nätverksexpert med många års erfarenhet inom Ciscos nätverkslösningar, där han är särskilt intresserad av DNA Center med fokus på SD-Access. Jacob har två CCIE-certifieringar inom Routing & Switching och Service Provider.  Privat slappnar han av med långa framfotslöpturer. Ovan inlägg är en godkänd översättning från Jacobs blogg. 

 

 

Kontakta oss!
Svar inom 24h