ブロードバンド ケーブル : ケーブル管理とサービス

ベンダー固有情報オプション(オプション 43)によるセット トップ ボックスに対する CNR の応答の設定

2015 年 11 月 25 日 - 機械翻訳について
その他のバージョン: PDFpdf | ライター翻訳版 (2003 年 1 月 13 日) | 英語版 (2015 年 8 月 22 日) | フィードバック


目次


概要

Data-over-Cable Service Interface Specifications(DOCSIS)のケーブル プラントにおけるセット トップ ボックスは、ケーブル モデム(CM)の特殊なケースです。 ボックスでは、オンラインになるときと、ネットワークに接続するときにケーブル モデムと同じ手順を踏みます。 ただし、セット トップ ボックスでは、標準的なケーブル モデムにはない、テレビ放送のサービス、ペイ パー ビュー、電子番組ガイドなどの他の機能レベルを一般的に備えています。

このため、セットトップ ボックスでは、これらの追加機能を初期化して設定するための情報を提供するプロビジョニング システムが必要となる場合があります。

このドキュメントでは、Motorola DCT5000 セットトップ ボックスの例を示します。 このデバイスがプロビジョニング システムから DHCP リースを取得するときに、このデバイスの開始ページとして機能する URL も受け取る必要があります。 URL を受け取らないと、このブランドのセットトップ ボックスでは、すべてのレベルの機能を適切に使用できなくなります。

注: このドキュメントを、Motorola DCT5000 セットトップ ボックスのプロビジョニング用のマニュアルとして使用しないでください。 モトローラのドキュメントを正規のマニュアルとして参照してください。

このドキュメントで使用する DHCP サーバ システムは、Cisco Network Registrar(CNR)バージョン 5.06 です。 以前の CNR リリースを使用することもできますが、プロセスは異なります。 ASCII 形式で情報を入力する必要がありますが、時間がかかり、手順が複雑になる可能性があります。

注: 旧バージョンの CNR のように、オプション 43 に手動で値を定義するのではなく、このドキュメントで説明する手順を使用することを推奨します。

前提条件

要件

このドキュメントに関する特別な要件はありません。

使用するコンポーネント

このドキュメントの情報は、CNR バージョン 5.06 に基づくものです。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。 ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

ベンダー クラス ID(オプション 60)

ベンダー クラス ID(オプション 60)は、DHCP クライアントが、DHCP クライアントのベンダーや機能を識別するために使用することができます。 この情報は可変長の文字列またはオクテットで、DHCP クライアントのベンダーによって指定された意味をもちます。

DHCP クライアントが特定の種類のハードウェアとファームウェアを使用していることを伝える 1 つの手段として、DHCP 要求でベンダー クラス ID(VCI)(オプション 60)と呼ばれる値を設定する方法があります。 たとえば、DOCSIS 1.0 ベースの CM は、この DHCP オプションの値を文字列 docsis1.0 に、DOCSIS 1.1 ベースの CM は、この値を docsis1.1 に設定する必要があります。 この方法では、DHCP サーバが 2 種類の CM を区別し、2 種類のモデムからの要求を適切に処理します。

セットトップ ボックスにも、DHCP サーバにデバイスのハードウェアの種類と機能を通知するように VCI(オプション 60)を設定するタイプのものあります。 このオプションに設定された値は、DHCP サーバにとって、このクライアントが DHCP 応答でどのような情報を必要としているかを知る手がかりとなります。

コード 長さ ベンダー クラス ID  
60 n i1 i2 .............

注: オプション 60 は、RFC 2132 で定義されています leavingcisco.com

ベンダー固有情報(オプション 43)DHCP オプション

セット トップ ボックスで、送信した VCI に基づいて返されるベンダー固有の情報を得るための最も一般的な方法は、ベンダー固有情報オプション(オプション 43)と呼ばれる DHCP オプションを使用することです。 このオプションの書式は RFC 2132 で定義されています leavingcisco.com ただし、このオプションによって返される値の定義は、関係するベンダーによって指定されています。

RFC 2132 の 8.4 項によれば、 通常このオプションは、<leavingcisco.com ts bold='1' nval='C%1,2%%'タイプ、長さ、値(TLV)の形式でフォーマットされます。この形式では、異なる種類の情報を異なるサブオプションのタイプで表します。 フィールドの意味は、エンド デバイスのメーカーによって定義されます。

コード 長さ データ項目   コード 長さ データ項目  
T1 n d1 D2 ......... T2 n D1 D2 ........

Motorola DCT5000 セットトップ ボックスの開始ページに応答するための CNR の設定

Motorola DCT5000 のセットトップ ボックスから DHCP 要求を送信するときに、VCI(オプション 60)の値が dct5000.008X に設定されます。 X は 0 ~ F までの 16 進数字で、セットトップ ボックスの機能によって異なります。 CNR では、この情報を使用して、DHCP クライアントが確かに DCT5000 セットトップ ボックスであることを判断します。

CNR で DHCP 要求が DCT5000 からであることが認識されたら、CNR では Motorola DCT5000 が正しく初期化されるように、開始 URL を DHCP 応答で返す必要があります。 Motorola では、この開始 URL はベンダー固有情報オプション(オプション 43)のサブオプション タイプ 2 として送信される必要があると定義しています。

コード 長さ データ項目
2 61 http://172.16.1.10/dtv/app/servicemanager/servicemanager.html

CNR で行う必要のある最初のステップは、CNR にセットトップ ボックスで使用されている VCI を通知することです。 それには、CNR のコマンドライン インターフェイスのユーティリティで次の nrcmd コマンドを発行します。 vendor-option <vendor-option-name> create <Vendor-class-identifier>

注: この設定は、nrcmd コマンドを使用した場合のみ実行できます。 これらのコマンドを GUI インターフェイスで使用することはできません。

各記号の意味は次のとおりです。

  • vendor-option-name:VCI を送信するクライアントのタイプを表す識別子。

  • Vendor-class-identifier:特定のタイプのデバイスによってベンダー情報オプション(オプション 60)に設定される値。

注: コマンドの vendor-option-name フィールドは、すべて小文字で指定する必要があります。 大文字を使用すると、小文字に変換されます。 Vendor-class-identifier フィールドでは、大文字も小文字も指定できます。

DCT5000 セットトップ ボックスの場合、DCT5000 の各タイプを表す次のベンダー オプションが定義されています。

Vendor-option dct5000_80 create dct5000.0080  
vendor-option dct5000_81 create dct5000.0081  
vendor-option dct5000_82 create dct5000.0082  
vendor-option dct5000_83 create dct5000.0083  
vendor-option dct5000_84 create dct5000.0084  
vendor-option dct5000_85 create dct5000.0085  
vendor-option dct5000_86 create dct5000.0086  
vendor-option dct5000_87 create dct5000.0087  
vendor-option dct5000_88 create dct5000.0088  
vendor-option dct5000_89 create dct5000.0089  
vendor-option dct5000_8a create dct5000.008A  
vendor-option dct5000_8b create dct5000.008B  
vendor-option dct5000_8c create dct5000.008C  
vendor-option dct5000_8d create dct5000.008D  
vendor-option dct5000_8e create dct5000.008E  
vendor-option dct5000_8f create dct5000.008F  

将来、ネットワークで他のタイプのセットトップ ボックスが使用され、これらのセットトップ ボックスで異なるベンダー クラス ID が使用される場合には、これらを後で定義することができます。

現在、CNR にはこれらの異なる VCI を 1 つのエントリにまとめる方法はありません。 CNR では、これらをまったく異なるものとして扱います。

次のステップは、サブオプション タイプ 2 をこれらの各 VCI に対して有効なタイプとして定義することです。

サブオプション タイプは、nrcmd コマンドの vendor-option <vendor-option-name> definesuboption <suboption-name> <suboption-type-number> <option-data-type> を使用して作成されます。

各記号の意味は次のとおりです。

  • vendor-option-name:クライアントのタイプを表すために選択される識別子。

  • suboption-name:作成されるサブオプションの名前。 サブオプションの機能を表す名前を指定します。

  • suboption-type-number:このサブオプションのサブオプション タイプ番号。

  • option-data-type:このサブオプションが使用するデータ型。 たとえば、IPADDR、STRING、BYTE_ARRAY など。 他の型は、nrcmd コマンドの option-datatype list で参照できます。

注: このコマンドの vendor-option-namesuboption-name のフィールドは、すべて小文字で指定する必要があります。 大文字を使用すると、小文字に変換されます。 option-data-type フィールドでは、大文字も小文字も指定できます。

この例では、開始 URL に対してサブオプション タイプ番号 2 を定義する必要があります。 URL は文字列なので、option-data-type として type STRING コマンドを発行します。

Vendor-option dct5000_80 definesuboption start_url 2 STRING  
vendor-option dct5000_81 definesuboption start_url 2 STRING  
vendor-option dct5000_82 definesuboption start_url 2 STRING  
vendor-option dct5000_83 definesuboption start_url 2 STRING  
vendor-option dct5000_84 definesuboption start_url 2 STRING  
vendor-option dct5000_85 definesuboption start_url 2 STRING  
vendor-option dct5000_86 definesuboption start_url 2 STRING  
vendor-option dct5000_87 definesuboption start_url 2 STRING  
vendor-option dct5000_88 definesuboption start_url 2 STRING  
vendor-option dct5000_89 definesuboption start_url 2 STRING  
vendor-option dct5000_8a definesuboption start_url 2 STRING  
vendor-option dct5000_8b definesuboption start_url 2 STRING  
vendor-option dct5000_8c definesuboption start_url 2 STRING  
vendor-option dct5000_8d definesuboption start_url 2 STRING  
vendor-option dct5000_8e definesuboption start_url 2 STRING  
vendor-option dct5000_8f definesuboption start_url 2 STRING  

将来、新しい機能がセットトップ ボックスで定義され、他のサブオプションを定義する必要がある場合は、後で同様の方法で指定できます。

この処理での最後のステップは、定義したベンダー オプションとポリシーを関連付け、個々のサブオプションがとる値を指定することです。 これは、nrcmd コマンドの policy <policy-name> setvendoroption <vendor-option-name> <suboption-name> <suboption-value> で実行されます。

各記号の意味は次のとおりです。

  • policy-name:セットトップ ボックスがオプションを受信する DHCP のポリシーの名前。 これは、事前に設定されています。

  • vendor-option-name:クライアントのタイプを表すために選択される識別子。

  • suboption-name:サブオプションの名前。

  • suboption-value:DHCP 応答の中でサブオプションに与えられる値。 サブオプションを定義する際に、指定された option-data-type ごとに入力する必要があります。

注: vendor-option-namesuboption-name のフィールドでは、大文字と小文字が区別されます。 これらのフィールドはすべて小文字で指定するようにしてください。 suboption-value フィールドは、大文字でも小文字でも指定できます。 suboption-value フィールドは、サブオプションを受信するクライアントで大文字と小文字が区別される場合のみ、大文字と小文字が区別されます。

この例では、セットトップ ボックスに STB_policy と呼ばれるポリシーが作成されていると仮定します。 また、次の各タイプのセットトップ ボックスに対して、開始 URL を http://172.16.1.10/dtv/app/servicemanager/servicemanager.htmlhttp://www.lookuptables.com/ として指定します。

これは次の nrcmd コマンドを使用して実行されます。

policy STB_policy setvendoroption dct5000_80 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_81 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_82 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_83 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_84 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_85 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_86 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_87 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_88 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_89 start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_8a start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_8b start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_8c start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_8d start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_8e start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html  
policy STB_policy setvendoroption dct5000_8f start_url http://172.16.1.10/dtv/app/
servicemanager/servicemanager.html 

VCI の他のサブオプション タイプが指定されている場合は、同様の方法でポリシーに関連付けて値を割り当てることができます。

この段階で、設定の変更を保存し、変更を適用するように DHCP サーバを再起動できます。 それには、nrcmd とともに、コマンド dhcp savereload を使用します。

手動で 5.0 以前の CNR バージョンのベンダー固有オプションを設定する方法

CNR の以前のバージョンには、高度なベンダー固有情報オプションの機能はありません。 そのため、ベンダー固有オプション(オプション 43)をポリシーに対して手作業で設定する必要があります。 この操作は CNR 5.0 では行えません。 オプション 43 の値を受信する必要がある場合は、コマンドの vendor-optionpolicy setvendoroption を組み合わせて発行する必要があります。

5.0 より前の CNR のバージョンでは、ベンダー固有情報オプション(オプション 43)を提供するようにポリシーを設定するには、コマンド policy <policy-name> setoption vendor-encapsulated-option <value-byte-array> を発行する必要があります。

各記号の意味は次のとおりです。

  • policy-name:セットトップ ボックスがオプションを受信する DHCP のポリシーの名前。 これは、事前に設定されています。

  • value-byte-array:ベンダー固有情報オプション(オプション 43)で返される全体の値。16 進数のバイトの配列で指定します。

ベンダー固有情報オプション(オプション 43)に含まれる値は 16 進数のバイトの配列として表され、またサブタイプの定義を含めることはできないため、必須フィールド全体を適切な ASCII コードにデコードする必要があります。

http://www.lookuptables.com/ にあるような、テキストから ASCII 16 進数への変換表を使用して、 http:leavingcisco.com //172.16.1.10/dtv/app/servicemanager/servicemanager.html という URL を、対応する 16 進数値に変換できます。

この URL は、次の値になります。

68:74:74:70:3a:2f:2f:31:37:32:2e:31:36:2e:31:2e:31:30:2f:64:
74:76:2f:61:70:70:2f:73:65:72:76:69:63:65:6d:61:6e:61:67:65:
72:2f:73:65:72:76:69:63:65:6d:61:6e:61:67:65:72:2e:68:74:6d:6c

ベンダー固有情報オプション(オプション 43)を正しくフォーマットするためには、この配列の先頭にタイプ長さのフィールドを追加する必要があります。

コード 長さ データ項目
2 61 http://172.16.1.10/dtv/app/servicemanager/servicemanager.html

コード 長さ データ項目
02 3d 68:74:74:70:3a:2f:2f:31:37:32:2e:31:36:2e:31:2e:31:30:2f:64:74: 76:2f:61:70:70:2f:73:65:72:76:69:63:65:6d:61:6e:61:67:65:72:2f: 73:65:72:76:69:63:65:6d:61:6e:61:67:65:72:2e:68:74:6d:6c

この表に示されているように、16 進数値の 61:3d を、開始 URL を表す 16 進数の列の前に付加する必要があります。 次の nrcmd コマンドを発行して、ベンダー固有情報オプション(オプション 43)の全体の値を指定することができます。

policy STB_policy setoption vendor-encapsulated-option

02:3d:68:74:74:70:3a:2f:2f:31:37:32:2e:31:36:2e:31:2e:31:30:2f:64:74:76:2f:61:70:70:2f:73:65:72:76:69:63:65:6d:61:

6e:61:67:65:72:2f:73:65:72: 76:69:63:65:6d:61:6e:61:67:65:72:2e:68:74:6d:6c

注: このコマンド全体は、1 行で実行されます。

設定の確認

設定コマンドが正しく入力されているかどうかを確認するには nrcmd コマンドを使用します。

最初のコマンドは vendor-option list です。 この出力が示すように、このコマンドの出力には、ベンダー オプションの名前、ベンダー クラス ID、ベンダー オプション機能の read_only の設定を含むベンダー オプションのリストが表示されます。

nrcmd> vendor-option list
100 Ok
dct5000_80:
    name = dct5000_80
    read-only = disabled
    vendor-class-id = dct5000.0080
dct5000_81:
    name = dct5000_81
    read-only = disabled
    vendor-class-id = dct5000.0081
dct5000_82:
    name = dct5000_82
    read-only = disabled
    vendor-class-id = dct5000.0082
dct5000_83:
    name = dct5000_83
    read-only = disabled
    vendor-class-id = dct5000.0083
dct5000_84:
    name = dct5000_84
    read-only = disabled
    vendor-class-id = dct5000.0084
dct5000_85:
    name = dct5000_85
    read-only = disabled
    vendor-class-id = dct5000.0085
dct5000_86:
    name = dct5000_86
    read-only = disabled
    vendor-class-id = dct5000.0086
dct5000_87:
    name = dct5000_87
    read-only = disabled
    vendor-class-id = dct5000.0087
dct5000_88:
    name = dct5000_88
    read-only = disabled
    vendor-class-id = dct5000.0088
dct5000_89:
    name = dct5000_89
    read-only = disabled
    vendor-class-id = dct5000.0089
dct5000_8a:
    name = dct5000_8a
    read-only = disabled
    vendor-class-id = dct5000.008A
dct5000_8b:
    name = dct5000_8b
    read-only = disabled
    vendor-class-id = dct5000.008B
dct5000_8c:
    name = dct5000_8c
    read-only = disabled
    vendor-class-id = dct5000.008C
dct5000_8d:
    name = dct5000_8d
    read-only = disabled
    vendor-class-id = dct5000.008D
dct5000_8e:
    name = dct5000_8e
    read-only = disabled
    vendor-class-id = dct5000.008E
dct5000_8f:
    name = dct5000_8f
    read-only = disabled
    vendor-class-id = dct5000.008F

注: ベンダー オプションの read-only 機能はデフォルトでは無効(disabled)になっています。 これを有効にするには、vendor-option name enable read-only コマンドを発行します。 ベンダー固有の DHCP オプションの read-only 機能は、policy name setVendoroption コマンドでオプションを使用し、オプション用にデータを設定する前に有効にしておく必要があります。

各ベンダー オプションに割り当てられているサブオプションのリストを確認するには、コマンド vendor-option vendor-option-name listsuboptiovns を発行します。 このコマンドを使用すると、サブオプションのデータ型と値を参照できます。 この出力では文字列型で、値は start_url です。

nrcmd> vendor-option dct5000_80 listsuboptiovns
100 OK
    start_url(2) : string
 
nrcmd> vendor-option dct5000_81 listsuboptions
100 OK
    start_url(2) : string

ベンダー固有情報オプション(オプション 43)で正しい値がエンド クライアントに返されているかどうかを確認するには、CNR で拡張デバッグをアクティブにして、クライアントへの DHCP 応答に含まれる DHCP オプションの内容を表示することができます。 CNR で拡張デバッグをオンにする詳細については、「Cisco Network Registrar のデバッグを使用したケーブル ネットワークにおける DHCP 問題のトラブルシューティング」を参照してください。

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 12193