デジピーター運用のための DMRGateway 設定ガイド ― TGRewrite と PassAllTG の正しい使い方

Pi-Star / WPSD でデジピーターを運用する際、DMRGateway の設定ファイルにある TGRewritePassAllTG の役割を正しく理解することが、安定した運用の鍵になります。この 2 つは似て非なるものであり、組み合わせ方によって「どの TG を通すか」「どの TG に変換するか」の動作が大きく変わります。


📖 TGRewrite とは

TGRewrite は、特定の TG 番号を別の TG 番号に変換(リライト)してネットワークへ送り出すルールです。書式は以下の通りです。

⚠️ TGRewrite は双方向の変換として機能します。たとえば「入力 TG6 → 出力 TG44833」と設定した場合、ローカルからネットワークへの送信だけでなく、ネットワークから TG44833 で届いたトラフィックをローカルの TG6 として返す方向も同時に有効になります。一方通行だけの変換設定はできません。
TGRewrite0=スロット, 入力TG, スロット, 出力TG, 変換数

たとえば、

TGRewrite0=1,6,1,44833,1

はスロット 1 で TG6 を受信したとき、TG44833 として TGIF ネットワークへ送り出す、という意味です。無線機のダイヤルでは TG6 に合わせたまま運用できます。


📖 PassAllTG とは

PassAllTG は、TGRewrite に一致しない TG もすべてそのまま通過させる設定です。Pi-Star / WPSD のデフォルト設定では多くの場合これが有効になっています。

書式は PassAllTGN=スロット番号 です。末尾の N(0, 1, 2…)はルールのインデックス番号であり、スロット番号ではありません。スロット番号は(右辺の数字)で指定します。

PassAllTG0=1   # ルール 0 番:値=1 → スロット 1 のすべての TG を通過させる
PassAllTG1=2   # ルール 1 番:値=2 → スロット 2 のすべての TG を通過させる

この設定があると、ユーザーが無線機のダイヤルで任意の TG を呼び出した際、TGRewrite に一致しない TG でも DMRGateway は素通りさせます。これが「ダイナミック TG」(無線機ダイヤルによる自由な TG 接続)を可能にしている根拠です。


📖 Dynamic TG Control との違い

[Dynamic TG Control]PassAllTG とは別物です。PassAllTG 単体で機能します。

[Dynamic TG Control]
Enabled=1
Port=3769

このセクションは、外部ツールが UDP ポート経由で DMRGateway に直接 TG 切り替え命令を送るためのインターフェースを開くものです。ただし、TGIFChanger は TGIF のネットワーク API を直接操作して TG を切り替えるため、このセクションは不要です。[Dynamic TG Control] は、MMDVMHost のコマンドポートなど、DMRGateway 経由でTGを操作する他のツールを使う場合に有効にします。PassAllTG 自体の有効・無効とは無関係です。

設定 役割 Dynamic TG Control との関係
TGRewrite特定 TG を別 TG に変換無関係
PassAllTG変換ルール外の TG をすべて通過無関係(独立して動作)
[Dynamic TG Control]UDP ポート経由で DMRGateway に TG 切り替え命令を送る外部ツール用のインターフェースTGIFChanger には不要(TGIFChanger は TGIF API を直接操作するため)

🔧 設定パターン別の動作比較

パターン① ダイナミック TG を許可する(デフォルト)

ユーザーが無線機のダイヤルで自由に TG を変えられる、もっとも一般的な構成です。PassAllPC(プライベートコール)も同様に、変換ルール外の PC をすべて通過させます。

TGRewrite0=1,6,1,44833,1   # TG6 → TG44833(ホーム TG)に変換
TGRewrite1=2,6,2,44833,1

PassAllTG0=1               # スロット 1:上記以外の TG もすべて通過
PassAllTG1=2               # スロット 2:上記以外の TG もすべて通過

この構成では、ユーザーが TG245 などに切り替えると DMRGateway はそのまま TG245 を TGIF へ送ります。TGIFChanger と組み合わせることで、一定時間後にホーム TG(TG44833)へ自動復帰させることができます。

パターン② TG を完全固定する(ダイナミック TG を禁止)

ホーム TG 以外への接続を一切許可しない、厳格な構成です。PassAllTG を書かず、TGRewrite のみ記述します。

TGRewrite0=1,6,1,44833,1   # TG6 → TG44833 のみ変換・通過
TGRewrite1=2,6,2,44833,1

# PassAllTG は書かない → TGRewrite に一致しない TG はドロップされる

この構成では、ユーザーが TG245 などを呼び出しても DMRGateway がドロップするため、TGIF の接続先は変わりません。デジピーターを常にホーム TG だけで運用したい場合に適しています。

構成 TGRewrite PassAllTG 動作
ダイナミック TG 許可ありありホーム TG 変換+その他 TG も通過
TG 完全固定ありなしホーム TG のみ通過、他はドロップ
すべて素通りなしありすべての TG がそのまま通過

📋 実際の設定例(JJ2YYK)

以下は当局(JJ2YYK)の TGIF 接続設定です。ホーム TG は TG44833 で、ローカルスロットでは TG6 として待ち受けています。

[DMR Network 4]
Enabled=1
Address=tgif.network
Port=62031
Name=TGIF_Network
Id=440251955
Password="passw0rd"

TGRewrite0=1,6,1,44833,1   # スロット 1:ローカル TG6 → TGIF TG44833
TGRewrite1=2,6,2,44833,1   # スロット 2:ローカル TG6 → TGIF TG44833

PCRewrite0=2,94000,2,4000,1001
TypeRewrite0=2,9990,2,9990
SrcRewrite0=2,4000,2,9,1001

PassAllPC0=1               # ルール 0 番:値=1 → スロット 1 のすべての PC(プライベートコール)を通過
PassAllTG0=1               # ルール 0 番:値=1 → スロット 1 のすべての TG を通過(ダイナミック TG 許可)
PassAllTG1=2               # ルール 1 番:値=2 → スロット 2 のすべての TG を通過(ダイナミック TG 許可)

[Dynamic TG Control]
Enabled=1
Port=3769                  # 外部ツールから DMRGateway へ TG 切り替え命令を送るポート(TGIFChanger には不要)

この設定により、利用者は無線機のダイヤルで任意の TG へ一時的に接続でき、TGIFChanger が通信終了後にホーム TG(TG44833)へ自動復帰させます。

JJ2YYK
  • JJ2YYK

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です