この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、最小限のコンポーネントセットを使用してField Network Director(FND)およびプラグアンドプレイ(PNP)を使用する方法について説明します。
次の項目に関する知識があることが推奨されます。
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
FNDには多くの異なる導入オプションがあるため、目標はFND用に最小限の機能を持つインストールをセットアップできるようにすることです。このセットアップは、さらにカスタマイズしたり、より多くの機能を追加するための開始点として機能します。ここで説明するセットアップでは、Open Virtual Appliance(OVA)パッケージのFNDインストールを開始点として使用し、公開キーインフラストラクチャ(PKI)とトンネルプロビジョニングの必要性を回避するためにeasyモードを使用します。 PNPを使用して、インストールを簡素化し、デバイスを追加します。
このガイドの結果は、実稼働環境での使用を意図したものではありません。これは、計画テキストのパスワードや、トンネルおよびPKIがないことによるセキュリティリスクが存在する可能性があるためです。
ステップ1:FND OVAファイルをダウンロードし、ハイパーバイザに展開します。たとえばVMWareの場合、図に示すように、これはFile > Deploy OVF Templateを介して行われます。

ステップ 2導入が完了すると、VMを起動でき、図に示すログイン画面が表示されます。

OVAファイルのデフォルトパスワードは次のとおりです。
ステップ 3ciscoユーザとパスワードでログインし、Applications > System Tools > Settings > Networkの順に選択します。 有線プロファイルを追加し、IPv4タブで、図に示すように目的のIPアドレスまたはDHCPを設定します。

ステップ 4Applyをクリックして、接続のoff/onを切り替え、新しい設定が適用されるようにします。
この時点で、次の図に示すように、ブラウザとIPアドレスを設定してFND GUIに移動できます。

ステップ 5デフォルトのユーザ名とパスワード(root / root123)を使用してGUIにログインします。
すぐにパスワードを変更するように求められ、再度ログインにリダイレクトされます。
すべてが正常に行われた場合は、新しいパスワードでログインし、FND GUIをナビゲートできます。
さらに、FNDの設定に続いて、PNPとデモモードについて説明します。
PNPは、Zero Touch Deployment(ZTD)を実行するための最新のシスコの方法です。 PNPを使用すると、デバイスを完全に設定でき、設定を手動で変更する必要がなくなります。
FNDでは、PNPを使用することで、最初にルータをブートストラップする必要がなくなります。実際、PNPが行うすべてのことは、安全な方法でFNDにリダイレクトし、ブートストラップ設定を取得します。
ブートストラップ設定がデバイスに存在すると、プロセスの残りの部分は、従来のブートストラップされたデバイスと同様に続行されます。
PNPを使用するには、次のようなさまざまな方法があります。
この設定では、PNPサーバIPは手動で設定されます。これは、FNDサーバのIPであり、デバイス上のポートです。DHCPを使用してこれを行う場合は、次のように情報を指定する必要があります。
Cisco IOS®の場合、DHCPサーバは次のように設定する必要があります。
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" !
LinuxのDHCPdの場合:
[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";
}
このオプション43またはvendor-encapsulated-optionsの設定では、次のASCII文字列を指定する必要があります。
"5A;K4;B2;I10.50.215.252;J9125"
次のようにカスタマイズできます。
DHCPを使用したPNPに関する詳細については、https://www.cisco.com/c/en/us/td/docs/routers/connectedgrid/iot_fnd/guide/4_3/iot_fnd_ug4_3/sys_mgmt.html#31568の「Cisco IOS® DHCPサーバでのDHCPオプション43の設定」セクションを参照してください。
EasyモードはFND 4.1から導入されましたが、当時はdemoモードと呼ばれていました。このモードを使用すると、FNDをより安全な方法で実行できます。実稼働環境ではこれは推奨されませんが、開始するには適切な方法です。
イージーモードを使用すると、PNPプロセス、ブートストラップ、およびルータの設定に集中できます。何かが動作しない場合は、トンネルの構築や証明書を疑う必要はありません。
FNDを簡易モードで実行するように設定した場合に発生する変更:
簡易モードの詳細については、こちらを参照してください。
これで、デモモード/PNPとは何か、およびこのコンテキストでデモモード/PNPが使用される理由がわかります。FND設定を有効にするために、次のように変更します。
OVAファイルから生成されたFND VMでSSHを使用して接続し、cgms.propertiesを次のように編集します。
[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
コンフィギュレーションファイルの最後の3行が変更されています。
ファイルを変更したら、変更を適用するためにFNDコンテナを再起動します。
[root@iot-fnd ~]# /opt/fnd/scripts/fnd-container.sh restart Stopping FND container... fnd-container [root@iot-fnd ~]# Starting FND container... fnd-container
再起動後、残りの設定はGUIを使用して実行できます。
設定プロセスのこの時点でデバイスを追加するのは少し非論理的に聞こえるかもしれませんが、残念ながら、設定の一部は特定のデバイスタイプが追加されるまで使用できません。
これは、デバイスによって導入されるオプションが異なるためにGUIが過大にならないようにするためです。
ここでは、FNDにIR809を追加してみましょう。
CSVは次のようになります。
deviceType,eid,adminUsername,adminPassword,ip ir800,IR809G-LTE-GA-K9+JMX2022X04S,fndadmin,C1sc0123!,10.48.43.250
CSVのフィールドは次のとおりです。
このデバイスを追加するには、図に示すように、GUIに接続し、Devices > Field Devices > Inventory > Add Devicesの順に選択します。

このダイアログでCSVファイルの場所を指定し、Addをクリックして図のようにFNDに追加します。

すべてが成功した場合は、履歴項目に「完了」と表示されます。 ダイアログを閉じると、図に示すように、デバイスがインベントリに表示されます。

deviceType ir800のデバイスが追加されたため、この時点で適用可能なテンプレートとグループがGUIで使用できるようになります。
FNDはデモモードに設定されているため、代わりにHTTPを使用するようにプロビジョニングURLを変更する必要があります。これを行うには、Admin > Provisioning Settingsの順に移動します。

IoT-FND URLをhttp://<FND IP>:9121に変更します。
次に、ブートストラップと設定に必要な最小限のテンプレートを2つ設定します。
最初の設定はルータブートストラップ設定テンプレートと呼ばれ、PNPを使用してFNDに正常に接続できた後にルータにプッシュされます。
PNPが使用されていない場合は、ブートストラッププロセス時に手動または工場出荷時にルータに設定が保存されています。この設定には、ルータがFNDで登録プロセスを開始するのに十分な情報が含まれています。
2つ目のテンプレートは設定テンプレートと呼ばれ、デバイスの現在実行中の設定に追加される設定です。実際には、これは既存の設定の増分として見ることができます。
ほとんどの場合、これは奇妙な状況を招くため、FNDにルータを追加する前に、最初にルータ上のすべての設定を消去することを推奨します。
ルータファクトリ再プロビジョニングテンプレートを設定するには、Configure > Tunnel Provisioning > Router Bootstrap Configurationの順に移動し、テンプレートを次のものと置き換えます。
<#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>
設定テンプレートを設定します。 Config > Device Configuration > Edit Configuration Templateの順に移動し、次のテンプレートを追加します。
<#-- 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
このテンプレートが、作成されるルータの実行コンフィギュレーションになります。したがって、この設定グループに固有の設定をここで追加する必要があります。
最も簡単なのは、この最小限のテンプレートから始めることです。成功したら、必要に応じてテンプレートを更新および調整します。
この時点で、FNDの設定と準備が完了し、ルータの準備から始めることができます。
プロビジョニングするデバイスに設定がすでに含まれている場合、または以前に使用したことがある場合は、PNPを使用してFNDにルータを追加する前に、ルータの設定を完全に消去することをお勧めします。
新しいデバイスの場合は、この手順をスキップできます。
これを行う最も簡単な方法は、write eraseコマンドを使用し、コンソールを使用してルータをリロードすることです。
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
しばらくすると、IR800が戻り、初期設定ダイアログを実行するプロンプトが表示されます。
--- System Configuration Dialog --- Would you like to enter the initial configuration dialog? [yes/no]: no Press RETURN to get started!
以前のPNP/ZTD試行の残りがないことを確認します。アーカイブとディレクトリを再作成し、ルータのbefore-registration-configも削除することをお勧めします。
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
現在、新しいデバイスを所有しているか、空の設定のデバイスを所有しています。そのため、必要に応じて、ルータがFNDに到達するための最小限の設定を適用できるタイミングです。
DHCPサーバを使用している場合は、そのほとんどが自動的に実行されます。
デバイスで次の手動設定が選択されます。
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#
ご覧のように、適用したIP設定でルータがFNDに到達できるかどうかをテストするために簡単なpingが実行されました。
この時点で、すべての前提条件が満たされており、PNPプロセスを開始できます。この場合は手動で行います。
実稼働環境では、ほとんどの場合、PNPはDHCPオプション43で使用されます。つまり、ルータが起動されると、IPとPNP設定を受信するため、このステップと次のステップは省略できます。
DHCPを使用せずにIR800でPNPを手動で設定するには、要求の宛先(FNDサーバ)を指定する必要があります。
これは次のように実行できます。
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
「transport」で始まる行を入力するとすぐに、ルータはPNPプロセスを開始し、指定されたIPおよびポートでFNDへの接続を試みます。
すべてが正常に機能している場合、デバイスは次の項目を通過します。
FND server.logでプロセスを追跡できます。
GUIでUnheard > Boostrapping > Bootstrappedの順に移動すると、デバイスが移動しているのが表示されます
ブートストラップが完了すると、ルータにはRouter Factory Reprovision(RPR)の代替テンプレートが用意され、PNPを使用しない通常のブートストラップデバイスのように動作します。
つまり、IR800上のCGNAプロファイルはFNDサーバへの登録を試みます。
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
指定された設定では、デバイスは10分後にFNDへの登録を試行します。この出力では、ルータが登録プロセスを開始する前の9分30秒が残っていることがわかります。
タイマーが終了するのを待つか、cg-nms-registerプロファイルを手動ですぐに実行します。
IR800-Bootstrap#cgna exec profile cg-nms-register
この項では、設定が正常に機能していることを確認します。
図に示すように、デバイスはFNDでUPステータスに移行します。

ここでは、設定のトラブルシューティングに役立つ情報を提供します。
ブートストラッププロセスをトラブルシューティングするには、次を確認します。
登録プロセスのトラブルシューティングを行うには、次の項目を確認します。
フィードバック