La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento viene descritto come iniziare a utilizzare Field Network Director (FND) e Plug and Play (PNP) con l'utilizzo di un set minimo di componenti.
Cisco raccomanda la conoscenza dei seguenti argomenti:
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Poiché FND dispone di molte opzioni di installazione diverse, l'obiettivo è quello di poter impostare un'installazione minima ma funzionante per FND. Questa impostazione può quindi fungere da punto di partenza per ulteriori personalizzazioni e per aggiungere ulteriori funzionalità. La configurazione qui illustrata si basa sull'utilizzo dell'installazione Open Virtual Appliance (OVA) con pacchetto FND come punto di partenza e utilizza la modalità semplice per evitare la necessità di PKI (Public Key Infrastructure) e il provisioning del tunnel. Utilizzare PNP per semplificare e aggiungere dispositivi all'installazione.
Il risultato di questa guida non è destinato all'uso in produzione in quanto potrebbero esserci alcuni rischi di sicurezza dovuti alla password del testo del piano e all'assenza di tunnel e PKI.
Passaggio 1. Scaricare e distribuire il file OVA FND sull'hypervisor. Ad esempio, per VMWare, verrà utilizzato File > Distribuisci modello OVF come mostrato nell'immagine.
Passaggio 2. Una volta distribuita, è possibile avviare la VM e visualizzare una schermata di accesso, illustrata nell'immagine.
Le password predefinite per il file OVA sono:
Passaggio 3. Accedere con l'utente e la password cisco e selezionare Applications > System Tools > Settings > Network. Aggiungere un profilo cablato e nella scheda IPv4, impostare l'indirizzo IP o DHCP desiderato come mostrato nell'immagine.
Passaggio 4. Per verificare che le nuove impostazioni siano state applicate, fare clic su Apply (Applica) e attivare/disattivare la connessione.
A questo punto, dovrebbe essere possibile passare all'interfaccia utente FND con il browser e l'indirizzo IP configurato come mostrato nell'immagine.
Passaggio 5. Accedere alla GUI con il nome utente e la password predefiniti: root / root123
Viene richiesto di modificare immediatamente la password e quindi di reindirizzare nuovamente l'utente al login.
Se tutto va bene, si dovrebbe essere in grado di effettuare il login con la nuova password ed essere in grado di navigare attraverso la GUI FND.
Vengono inoltre descritte le modalità PNP e demo, seguite dalla configurazione di FND.
PNP è il metodo Cisco più recente per eseguire l'implementazione Zero Touch (ZTD). Con PNP, è possibile configurare completamente un dispositivo e non è necessario toccare manualmente la configurazione.
Per FND, con l'uso della rete PNP, è possibile evitare di dover prima eseguire il bootstrap del router. Infatti, tutto quello che fa PNP, lo reindirizza al FND, in modo sicuro, e recupera la configurazione del bootstrap.
Una volta che la configurazione bootstrap è presente nel dispositivo, il resto del processo continua come con un dispositivo bootstrap classico.
Esistono diversi modi per utilizzare PNP:
Per questa configurazione, l'indirizzo IP del server PNP viene impostato manualmente, ovvero l'indirizzo IP del server FND, e la porta sul dispositivo. Se si desidera eseguire questa operazione con DHCP, fornire le informazioni seguenti:
Per Cisco IOS®, il server DHCP deve essere configurato come segue:
ip dhcp pool pnp_pool network 192.168.10.0 255.255.255.248 default-router 192.168.10.1 dns-server 8.8.8.8 option 43 ascii "5A;K4;B2;I10.48.43.231;J9125" !
Per DHCPd su Linux:
[jedepuyd@KJK-SRVIOT-10 ~]$ cat /etc/dhcp/dhcpd.conf subnet 192.168.100.0 netmask 255.255.255.0 { option routers 192.168.100.1; range 192.168.100.100 192.168.100.199; option domain-name-servers 192.168.100.1; option domain-name "test.dom"; option vendor-encapsulated-options "5A;K4;B2;I10.48.43.231;J9125"; }
In questa configurazione dell'opzione 43 o delle opzioni incapsulate dal fornitore, è necessario specificare le seguenti stringhe ASCII:
"5A;K4;B2;I10.50.215.252;J9125"
Può essere personalizzato come segue:
Per ulteriori informazioni su PNP con DHCP, visitare il sito: https://www.cisco.com/c/en/us/td/docs/routers/connectedgrid/iot_fnd/guide/4_3/iot_fnd_ug4_3/sys_mgmt.html#31568 nella sezione: Configurazione dell'opzione DHCP 43 sul server DHCP Cisco IOS®
La modalità Easy è stata introdotta a partire da FND 4.1, anche se all'epoca era chiamata modalità demo e consente di eseguire FND in modo meno sicuro. Sebbene non sia consigliato per la produzione, è un buon modo per iniziare.
Con l'uso della modalità semplice, è possibile concentrarsi sul processo PNP, sul bootstrap e sulla configurazione del router. Nel caso in cui qualcosa non funzioni, non è necessario sospettare la creazione del tunnel o i certificati.
Modifiche che si verificano quando si configura FND per l'esecuzione in modalità semplice:
Ulteriori informazioni sulla modalità semplice sono disponibili qui:
Ora, si sa cosa è la modalità demo/PNP e perché viene utilizzata in questo contesto. Modificare la configurazione FND per abilitarla:
Sulla VM FND, che ha avuto origine dal file OVA, collegarsi a SSH e modificare cgms.properties come segue:
[root@iot-fnd ~]# cat /opt/fnd/data/cgms.properties cgms-keystore-password-hidden=dD5KmzJHa64Oyvpqdu8SCg== use-router-ip-from-db=true rabbit-broker-ip= rabbit-broker-port= rabbit-broker-username= rabbit-broker-password= fogd-ip=192.68.5.3 enable-reverse-dns-lookup=false enableApiAuth=false fnd-router-mgmt-mode=1 enable-bootstrap-service=true proxy-bootstrap-ip=10.48.43.231
Le ultime tre righe sono state modificate nel file di configurazione.
Dopo aver modificato il file, riavviare il contenitore FND per adattare le modifiche apportate:
[root@iot-fnd ~]# /opt/fnd/scripts/fnd-container.sh restart Stopping FND container... fnd-container [root@iot-fnd ~]# Starting FND container... fnd-container
Dopo il riavvio, il resto della configurazione può essere eseguito usando la GUI.
L'aggiunta del dispositivo a questo punto del processo di configurazione potrebbe sembrare un po' illogica, ma alcune parti della configurazione non sono disponibili finché non vengono aggiunti alcuni tipi di dispositivo.
Questa operazione viene eseguita per evitare che la GUI sia troppo complessa in quanto dispositivi diversi introducono opzioni diverse.
In questo caso, provare ad aggiungere un IR809 a FND.
Il formato CSV è il seguente:
deviceType,eid,adminUsername,adminPassword,ip ir800,IR809G-LTE-GA-K9+JMX2022X04S,fndadmin,C1sc0123!,10.48.43.250
I campi nel file CSV sono:
Per aggiungere questo dispositivo, collegarsi alla GUI e selezionare Dispositivi > Dispositivi sul campo > Inventario > Aggiungi dispositivi, come mostrato nell'immagine.
Nella finestra di dialogo, specificare il percorso del file CSV e fare clic su Add per aggiungerlo a FND, come mostrato nell'immagine.
Se tutto va bene, dovrebbe vedere l'elemento della cronologia per elencare "COMPLETED". Dopo aver chiuso la finestra di dialogo, il dispositivo dovrebbe apparire nell'inventario come mostrato nell'immagine.
Poiché è stato aggiunto il dispositivo di tipo ir800, a questo punto i modelli e i gruppi applicabili saranno disponibili nella GUI.
Poiché FND è configurato per la modalità demo, è necessario modificare l'URL di provisioning per utilizzare HTTP. A tale scopo, selezionare Admin > Provisioning Settings (Amministratore > Impostazioni di provisioning):
Modificare l'URL IoT-FND in http://<FND IP>:9121
Configurare quindi due modelli minimi per il bootstrap e la configurazione.
Il primo, denominato modello di configurazione del bootstrap del router, è la configurazione che viene inviata al router una volta in grado di contattare correttamente FND con la PNP.
Se il protocollo PNP non è in uso, sarà la configurazione a essere applicata sul router manualmente o in fabbrica al momento del processo di bootstrap. Questa configurazione contiene informazioni sufficienti per permettere al router di avviare il processo di registrazione in FND.
Il secondo, denominato modello di configurazione, sarà la configurazione aggiunta alla configurazione attualmente in esecuzione del dispositivo. Infatti, può essere visto come un incremento nella configurazione esistente.
Nella maggior parte dei casi, ciò porta a una situazione strana, quindi si consiglia di cancellare tutte le configurazioni sul router prima di aggiungerlo a FND.
Per impostare il modello Router Factory Reprovision, selezionare Configura > Tunnel Provisioning > Configurazione bootstrap router e sostituirlo con il seguente modello:
<#if isBootstrapping = true> <#assign mgmtintf = "GigabitEthernet0"> <#assign fndserver = "10.48.43.231"> <#assign sublist=far.eid?split("+")[0..1]> <#assign pid=sublist[0]> <#assign sn=sublist[1]> <#-- General parameters --> hostname ${sn}BS ip domain-name ${sn} ip host fndserver.fnd.iot ${fndserver} service timestamps debug datetime msec localtime show-timezone service timestamps log datetime msec localtime show-timezone ! <#-- Users --> username backup privilege 15 password C1sc0123! username ${far.adminUsername} privilege 15 password ${far.adminPassword} ! <#-- Interfaces --> interface ${mgmtintf} ip address ${far.ip} 255.255.255.192 exit ! <#-- Clock --> clock timezone UTC +2 ! <#-- Archive --> file prompt quiet do mkdir flash:archive archive path flash:/archive maximum 8 exit ! <#-- HTTP --> ip http server ip http client connection retry 5 ip http client connection timeout 5 ip http client source-interface ${mgmtintf} ip http authentication local ip http timeout-policy idle 600 life 86400 requests 3 ip http max-connections 2 ! <#-- WSMA --> wsma profile listener exec transport http path /wsma/exec exit ! wsma profile listener config transport http path /wsma/config exit ! wsma agent exec profile exec exit ! wsma agent config profile config exit ! <#-- CGNA --> cgna gzip ! cgna profile cg-nms-register add-command show hosts | format flash:/managed/odm/cg-nms.odm add-command show interfaces | format flash:/managed/odm/cg-nms.odm add-command show ipv6 dhcp | format flash:/managed/odm/cg-nms.odm add-command show ipv6 interface | format flash:/managed/odm/cg-nms.odm add-command show platform hypervisor | format flash:/managed/odm/cg-nms.odm add-command show snmp mib ifmib ifindex | format flash:/managed/odm/cg-nms.odm add-command show iox host list detail | format flash:/managed/odm/cg-nms.odm add-command show version | format flash:/managed/odm/cg-nms.odm interval 10 url http://fndserver.fnd.iot:9121/cgna/ios/registration gzip active exit ! <#-- Script to generate RSA for SSH --> event manager applet genkeys event timer watchdog name genkeys time 30 maxrun 60 action 10 cli command "enable" action 20 cli command "configure terminal" action 30 cli command "crypto key generate rsa modulus 2048" action 80 cli command "no event manager applet genkeys" action 90 cli command "exit" action 99 cli command "end" exit end </#if>
Per impostare il modello di configurazione. Passare a Configurazione > Configurazione dispositivo > Modifica modello di configurazione e aggiungere questo modello:
<#-- Enable periodic inventory notification every 1 hour to report metrics. --> cgna profile cg-nms-periodic interval 60 exit <#-- Enable periodic configuration (heartbeat) notification every 15 min. --> cgna heart-beat interval 15 <#-- Enable SSH access --> line vty 0 4 transport input ssh login local exit
Questo modello sarà la configurazione di esecuzione del router risultante. Pertanto, qualsiasi configurazione specifica per questo gruppo di configurazione deve essere aggiunta qui.
Il metodo più semplice consiste nell'utilizzare questo modello minimo. Una volta completato, aggiornare e personalizzare il modello in base alle proprie esigenze.
A questo punto, la configurazione/preparazione di FND è completata ed è possibile iniziare con la preparazione del router.
Se il dispositivo di cui si desidera eseguire il provisioning contiene già una configurazione o è stato utilizzato in precedenza, è consigliabile cancellare completamente la configurazione del router prima di aggiungerlo a FND con PNP.
Ovviamente, se si tratta di un nuovo dispositivo, questo passaggio può essere ignorato.
Il modo più semplice per eseguire questa operazione è usare il comando write erase e ricaricare il router con il comando console.
ir809kjk#write erase Erasing the nvram filesystem will remove all configuration files! Continue? [confirm] [OK] Erase of nvram: complete *Oct 18 11:42:54.367 UTC: %SYS-7-NV_BLOCK_INIT: Initialized the geometry of nvram ir809kjk#reload System configuration has been modified. Save? [yes/no]: no Proceed with reload? [confirm] Starting File System integrity check NOTE: File System will be deinited and later rebuilt
Dopo qualche tempo, IR800 dovrebbe tornare con la richiesta di eseguire la finestra di dialogo di configurazione iniziale:
--- System Configuration Dialog --- Would you like to enter the initial configuration dialog? [yes/no]: no Press RETURN to get started!
Accertarsi che non vi siano più residui di un precedente tentativo PNP/ZTD, è meglio ricreare l'archivio e la directory e rimuovere anche la configurazione prima della registrazione sul router:
IR800#delete /f before-* IR800#delete /f /r archive* IR800#mkdir archive Create directory filename [archive]? Created dir flash:/archive IR800#conf t Enter configuration commands, one per line. End with CNTL/Z. IR800(config)#archive IR800(config-archive)#path flash:/archive IR800(config-archive)#maximum 8 IR800(config-archive)#end
Al momento, si ha un nuovo dispositivo o un dispositivo con una configurazione vuota, quindi, se necessario, questo è il momento in cui è possibile applicare una configurazione minima per consentire al router di raggiungere FND.
Nel caso si disponga di un server DHCP, la maggior parte di questo dovrebbe avvenire automaticamente.
Sul dispositivo è selezionata la seguente configurazione manuale:
IR800>enable IR800#conf t Enter configuration commands, one per line. End with CNTL/Z. IR800(config)#int gi0 IR800(config-if)#ip addr dhcp IR800(config-if)#no shut IR800(config-if)#end *Aug 1 12:02:02.887: %SYS-5-CONFIG_I: Configured from console by console IR800#ping 10.48.43.231 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.48.43.231, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms IR800#
Come si può vedere, è stato eseguito un ping rapido per verificare se il router è stato in grado di raggiungere FND con la configurazione IP applicata.
A questo punto, tutti i prerequisiti sono completi ed è possibile avviare il processo PNP. In questo caso viene eseguita manualmente.
In un ambiente di produzione, è molto probabile che PNP venga utilizzato con l'opzione DHCP 43. Ciò significa che una volta avviato il router, riceverà una configurazione IP e PNP e sarà possibile ignorare questo passaggio e quello successivo.
Per configurare manualmente PNP su IR800 senza DHCP, è necessario specificare la destinazione delle richieste, che sarà il server FND.
A tale scopo, eseguire le operazioni seguenti:
IR800(config)#pnp profile pnp-zero-touch IR800(config-pnp-init)#transport http ipv4 10.48.43.231 port 9125 IR800(config-pnp-init)#end
Non appena si immette la riga che inizia con "transport", il router avvia il processo PNP e proverà a contattare FND sull'IP e sulla porta specificati.
Se tutto va bene, il dispositivo passa attraverso questi:
È possibile tenere traccia del processo in FND server.log.
Nella GUI, lo spostamento del dispositivo è visibile quando si passa a Unheard > Boostrapping > Bootstrapped
Al termine del bootstrap, il router riceve il modello Router Factory Reprovision sostituito e si comporta come un normale dispositivo bootstrap senza PNP.
In altre parole, un profilo CGNA su IR800 tenta di eseguire la registrazione con il server FND.
Controllare lo stato del profilo CGNA:
JMX2022X04SBS#sh cgna profile-state all Profile 1: Profile Name: cg-nms-register Activated at: Thu Aug 1 15:31:14 2019 URL: http://fndserver.fnd.iot:9121/cgna/ios/registration Payload content type: xml Interval: 10 minutes gzip: activated Profile command: show hosts | format flash:/managed/odm/cg-nms.odm show interfaces | format flash:/managed/odm/cg-nms.odm show ipv6 dhcp | format flash:/managed/odm/cg-nms.odm show ipv6 interface | format flash:/managed/odm/cg-nms.odm show platform hypervisor | format flash:/managed/odm/cg-nms.odm show snmp mib ifmib ifindex | format flash:/managed/odm/cg-nms.odm show iox host list detail | format flash:/managed/odm/cg-nms.odm show version | format flash:/managed/odm/cg-nms.odm State: Wait for timer for next action Timer started at Thu Aug 1 15:31:14 2019 Next update will be sent in 9 minutes 30 seconds Last successful response not found Last failed response not found
Con la configurazione fornita, il dispositivo tenterà di eseguire la registrazione con FND dopo dieci minuti. Come si può notare, in questo output rimangono nove minuti e trenta secondi prima che il router inizi il processo di registrazione.
È possibile attendere il termine del timer o eseguire manualmente il profilo cg-nms-register immediatamente:
IR800-Bootstrap#cgna exec profile cg-nms-register
Fare riferimento a questa sezione per verificare che la configurazione funzioni correttamente.
Il dispositivo dovrebbe passare allo stato UP in FND, come mostrato nell'immagine.
Le informazioni contenute in questa sezione permettono di risolvere i problemi relativi alla configurazione.
Per risolvere i problemi relativi al processo di bootstrap, verificare quanto segue:
Per risolvere i problemi relativi al processo di registrazione, verificare quanto segue: