Milesight ルーターを GenieACS システムに TR-069 経由で統合する方法

1. はじめに

TR-069(Technical Report 069)は、正式名称を「CPE WAN Management Protocol」といい、ブロードバンド・フォーラムによって開発された業界標準プロトコルです。このプロトコルは、リモートデバイス(ルーター、モデム、セットトップボックスなど)とオートコンフィグレーションサーバー(ACS)間の通信と管理を容易にするために設計されています。TR-069 の目的は、ブロードバンドデバイスの展開、設定、管理、およびメンテナンスのプロセスを簡素化および自動化することです。このプロトコルを通じて、サービスプロバイダー(ISP)は数百万のユーザーデバイスをリモートで管理でき、動作効率の向上、メンテナンスコストの削減、およびユーザー体験の向上を実現できます。この記事では、TR069 プロトコルを使用して Milesight ルーターを管理する方法について説明します。

2. 要件

  • Ubuntu Server 20.04.6
  • Milesight ルーター:UR3x(ファームウェアバージョン 3x.3.0.8 以降)
  • ルーターと Ubuntu Server 間のネットワーク接続(以下のポートが開いていることを確認):7547、7443、3000、7557、9091

3. GenieACS サーバーのセットアップ

GenieACS は、TR-069 対応デバイスのリモート管理用の高パフォーマンスな自動構成サーバー (ACS) です。複雑なプロビジョニングシナリオを大規模に自動化するための宣言型で障害耐性のある構成エンジンを採用しています。詳細な手順は、インストールガイド の記事を参照してください。

3.1. Node.js 環境のインストール

注意: バージョンは 12.x である必要があります。他のバージョンは互換性がありません。

sudo apt-get update
sudo apt-get install -y curl gnupg
curl -fsSL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt-get install -y nodejs
Generic

3.2. MongoDB データベースのインストール

注意: バージョンは3.6以降でなければなりません。他のバージョンは互換性がありません。

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
sudo apt update
sudo apt install mongodb-org
sudo systemctl start mongod.service
sudo systemctl status mongod.service
sudo systemctl enable mongod.service
Generic

3.3. GenieACS システムのインストール

sudo npm install -g genieacs@1.2.13
Generic

インストールが完了するまで待ちます。

3.4. 設定ファイルの作成

sudo useradd --system --no-create-home --user-group genieacs
mkdir /opt/genieacs
mkdir /opt/genieacs/ext
chown genieacs:genieacs /opt/genieacs/ext
Generic

設定ファイルを編集します:

vi /opt/genieacs/genieacs.env
Generic

以下の内容を入力します:

GENIEACS_CWMP_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-cwmp-access.log
GENIEACS_NBI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-nbi-access.log
GENIEACS_FS_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-fs-access.log
GENIEACS_UI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-ui-access.log
GENIEACS_DEBUG_FILE=/var/log/genieacs/genieacs-debug.yaml
NODE_OPTIONS=--enable-source-maps
GENIEACS_EXT_DIR=/opt/genieacs/ext
Generic

以下のコマンドを実行して続行してください:

node -e "console.log(\"GENIEACS_UI_JWT_SECRET=\" + require('crypto').randomBytes(128).toString('hex'))" >> /opt/genieacs/genieacs.env
Generic

適切な所有権と権限を設定します:

sudo chown genieacs:genieacs /opt/genieacs/genieacs.env
sudo chmod 600 /opt/genieacs/genieacs.env
Generic

ログディレクトリを作成し、所有権を設定します:

mkdir /var/log/genieacs
sudo chown genieacs:genieacs /var/log/genieacs
Generic

3.5. システムサービスファイルの作成

(1) CWMPサービスファイルの作成:

touch /etc/systemd/system/genieacs-cwmp.service
Generic

以下の内容を入力:

[Unit]
Description=GenieACS CWMP
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-cwmp

[Install]
WantedBy=default.target
Generic

(2) FS サービスファイルの作成:

touch /etc/systemd/system/genieacs-fs.service
Generic

以下の内容を入力:

[Unit]
Description=GenieACS FS
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-fs

[Install]
WantedBy=default.target
Generic

(3) NBI サービスファイルの作成:

touch /etc/systemd/system/genieacs-nbi.service
Generic

以下の内容を入力:

[Unit]
Description=GenieACS NBI
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-nbi

[Install]
WantedBy=default.target
Generic

 

(4) UI サービスファイルの作成:

touch /etc/systemd/system/genieacs-ui.service
Generic

以下の内容を入力:

[Unit]
Description=GenieACS UI
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-ui

[Install]
WantedBy=default.target
Generic

(5) ログローテーション設定の作成:

touch /etc/logrotate.d/genieacs
Generic

以下の内容を入力:

/var/log/genieacs/*.log /var/log/genieacs/*.yaml {
    daily
    rotate 30
    compress
    delaycompress
    dateext
}
Generic

3.6. 起動時の設定

sudo systemctl enable genieacs-cwmp
sudo systemctl enable genieacs-nbi
sudo systemctl enable genieacs-fs
sudo systemctl enable genieacs-ui
Generic

3.7. システムの起動

sudo systemctl start genieacs-cwmp
sudo systemctl status genieacs-cwmp

sudo systemctl start genieacs-nbi
sudo systemctl status genieacs-nbi

sudo systemctl start genieacs-fs
sudo systemctl status genieacs-fs

sudo systemctl start genieacs-ui
sudo systemctl status genieacs-ui
Generic

3.8. Web UI にアクセスする

Chrome ブラウザを使用して、http://[Ubuntu サーバーの IP アドレス]:3000 にアクセスします。ユーザー名にadmin、パスワードにadminを入力してログインします。

 

 

4. Milesight ルーターを GenieACS と統合する

    • ルーターのウェブ GUI でService > TR-069ページに移動し、TR069 オプションを有効にします。
    • ACS設定URLフィールドに http://[Ubuntu Server IP Address]:7547/ を入力します。 注意: ポート番号は7547であり、末尾のスラッシュを省略しないようにしてください。
    • ACS ユーザー名とパスワードの両方に admin を入力します。
    • CPR 設定の「Enable Period Inform」オプションにチェックを入れます。
    • Save をクリックします。この時点で、CPE ユーザー名と CPE パスワードは手動動作なしで自動的に入力されます。

5. 結果の確認

しばらく待つと、接続されたデバイスの情報が GenieACS の Devices セクションに表示されます。

 

Show をクリックして、デバイスから送信されたパラメーター情報を表示します。

 

 

-以上-

関連記事

ルーターの使用

ソリューション / IoT サポート


    Milesight製品

    ウェーブクレスト株式会社が運営するMilesight製品特設サイトです

    居住者の健康を確保

    お知らせ

    1. 2025-4-3

      ピープル・センシング 駆動型スマートビルディング

      People Sensing Insights を通じてビルインテリジェンスに革命をもたらします。…
    2. 2023-7-21

      LoRaWANの説明: 理論から実践へのガイド

      この包括的なビデオでは、LoRaWANを深く掘り下げ、その仕組み、利点、アプリケーションについて説明…
    3. 2023-4-6

      センシング・インサイト Milesight リブランディングのお知らせ

      https://youtu.be/r40DK40DjIY …
    ページ上部へ戻る