LTE ルーター Teltonika RUT956 を経由して配下のマシンへ WireGuard でリモートアクセスしてみた

LTE ルーター Teltonika RUT956 を経由して配下のマシンへ WireGuard でリモートアクセスしてみた

LTE ルーター RUT956 を WireGuard で繋いでリモートメンテナンスを可能にしてみました。
2026.10.07

ウィスキー、シガー、パイプをこよなく愛する大栗です。最近は製造ビジネステクノロジー部に所属しています。

製造現場で PoC を行うときに、既存のネットワーク回線へ検証用の機器を追加することが難しい場合があります。そのような時には PoC 専用の通信環境を別に用意することがあり、その手段として LTE / 5G ルーターを使ったりします。

LTE / 5G ルーターは SIM と電源があればすぐにインターネットへ接続できます。一方で、モバイル回線は通常グローバル IP アドレスを持たないので、外からルーター配下の機器へ直接接続することはできません。しかし PoC の機材を設置した後は、現地に行かずともリモートから配下のデバイスへアクセスしたくなります。

そこで今回は、手元にある Teltonika Networks の RUT956 を使って、リモートから WireGuard 経由でルーター配下のマシンへアクセスできるかを試してみました。

Teltonika RUT956 とは

RUT956 は、リトアニアの Teltonika Networks が提供している 4G LTE接続、Wi-Fi、有線 LAN 機能を備えた産業用の LTE ルーターです。

項目 内容
モバイル回線 4G LTE Cat 4。最大ダウンロード 150 Mbps
SIM デュアル SIM
Wi-Fi 802.11b/g/n (Wi-Fi 4)
有線 LAN 10/100 Mbps × 4 (WAN 1 + LAN 3)
電源 9〜30 V DC
動作温度 −40〜75 ℃
OS RutOS(OpenWrt ベース)

RUT956 は技適の認証を受けており、ASEAN 地域の各国の電波規制などの認証を多く取っている製品であるため幅広い地域で利用可能です。

WireGuard を選んだ理由

RUT956 は OpenVPN、IPsec、ZeroTier など数多くの VPN に対応していますが、今回は AWS 上に WireGuard サーバーを立てて接続する構成にしました。理由は次の 3 つです。

  • コスト : 対応している ZeroTier には無料のプランがありますが非営利目的となり業務では有料プランが必須です。WireGuard サーバーを Lightsail の最小構成で構築する場合はより安く抑えられます。
  • RUT956 の標準対応 : 管理画面だけで設定できます。
  • OpenVPN や IPsec より設定が簡単 : キーペアと数行の設定ファイルで済み、PC・Mac・スマホ向けの公式アプリが揃っています。
構成 月額 備考
Amazon Lightsail + WireGuard 5 USD 最小構成(メモリ 512 MB)。1 TB のデータ転送料金が含まれており、静的 IP アドレスにも追加のコストが発生しません。
Tailscale Standard 8 USD / ユーザー 無料の Personal プランは非商用のみ
ZeroTier Essential 18 USD(10 台込み) 無料の Personal プランは個人利用・評価向け

マネージドサービスである ZeroTier や Tailscale と異なりハブサーバーの構築/運用や鍵の授受は自前で行う必要がありますが、必要最低限の作業で済みます。

構成

今回の構成は以下のとおりです。

LTE 回線は CGNAT の内側にあるためインターネットからアクセスはできません。そのため AWS 上に WireGuard サーバーを構築してハブとします。RUT956 や PC、スマホなども WireGuard サーバーへアウトバウンドでアクセスして、インバウンドの通信はありません。

設定内容

基本的な設定内容は以下となります。

  • 今回 RUT956 の LAN の CIDR は 192.168.77.0/24 を設定。
  • WireGuard 自体のネットワークは 172.16.100.0/24 を設定。
  • Persistent Keepalive は推奨値の 25 秒を設定。
  • サーバーの AllowedIPs に RUT956 の LAN の CIDR を含める。
  • RUT956 の Route Allowed IPs を有効にする。

やってみる

検証環境

使用する機材などは以下の通りです。

項目 内容 備考
LTE ルーター RUT956 ファームウェアバージョンは RUT9M_R_00.07.24.3
SIM SORACOM IoT SIM {plan01s} SMS が利用可能
WireGuard サーバー Amazon Lightsail、東京リージョン、Ubuntu 24.04 LTS、Linux/Unix 0.5GB
クライアント Mac(WireGuard アプリ)、Android(WireGuard アプリ)
ルーター配下の機器 Raspberry Pi 4 Model B、ネットワークカメラ(TP-Link Tapo C210)

IP アドレスは以下の様に割り当てます。

デバイス IP アドレス 備考
ルーターネットワーク 192.168.77.0/24(RUT956 は 192.168.77.1)
RUT956(LAN) 192.168.77.1
ネットワークカメラ(Tapo C210) 192.168.77.102
Raspberry Pi 192.168.77.103
WireGuard ネットワーク 172.16.100.0/24
WireGuard サーバー 172.16.100.1
RUT956(WireGuard) 172.16.100.2
Mac 172.16.100.11
スマートフォン 172.16.100.12

AWS の設定

まずは Lightsail のインスタンスを作成します。インスタンスの構成は以下です。

項目 値 備考
リージョン 東京リージョン
プラットフォーム Linux オペレーティングシステム
設計図 Ubuntu 24.04 LTS
ネットワークタイプ デュアルスタック IPv4 を使用する
インスタンスプラン 汎用 月額 $5 512 MB
自動スナップショット 有効

作成したインスタンス詳細のネットワーキングタブを選択して 静的 IP をアタッチする をクリックします。

IP アドレスのリソース名を入力して 作成およびアタッチ をクリックします。これで静的 IP アドレスが設定されます。

ファイアウォールルールを設定します。デフォルトで入っている HTTP のルールを削除して、以下のルールを設定します。

アプリケーション プロトコル ポートまたはポート範囲/コード 許可されたインバウンドトラフィック
カスタム UDP 51820 任意の IPv4 アドレス
SSH TCP 22 Lightsail ブラウザ SSH のみ

Lightsail にログインして、WireGuard をインストールします。またスマホで設定を読ませるために QR コードのエンコーダーもインストールします。

$ sudo apt update && sudo apt install -y wireguard qrencode

サーバーのキーペアを作成します。server.key と server.pub の内容は後ほど使用します。

$ wg genkey | sudo tee /etc/wireguard/server.key | wg pubkey | sudo tee /etc/wireguard/server.pub
$ sudo chmod 600 /etc/wireguard/server.key
$ sudo chmod 600 /etc/wireguard/server.pub

WireGuard サーバーの設定を作成します。

/etc/wireguard/wg0.conf を作成します。

/etc/wireguard/wg0.conf
[Interface]
Address    = 172.16.100.1/24
ListenPort = 51820
PrivateKey = <server.key の内容>

IP フォワーディングを有効にして、WireGuard を起動します。

$ echo "net.ipv4.ip_forward = 1" | sudo tee /etc/sysctl.d/99-wireguard.conf
$ sudo sysctl --system
$ sudo systemctl enable --now wg-quick@wg0

設定を確認します。listening port: 51820 が出ていることを確認します。

$ sudo wg show
interface: wg0
  public key: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  private key: (hidden)
  listening port: 51820

RUT956 の設定

ここでは RUT956 を WebUI で操作します。

[Network] - [LAN] で設定されている LAN を編集します。

ここでは IPv4 address で 192.168.77.1 を設定して Save & Apply をクリックします。

LAN interfaces の画面でもう一度 Save & Apply をクリックします。

WireGuard のインスタンスを作成します。[Service] - [VPN] - [WireGuard] で設定名を入力して Add をクリックします。ここでは aws_01 と入力しました。

General settings タブで Enable を ON に設定し、IP address で 172.16.100.2/24 を入力して、Public Key をメモしておきます。peer instance に aws_hub と入力して Add をクリックします。

General settings タブと Advanced settings タブで以下の内容を入力して Save & Apply をクリックします。

タブ 項目 値
General settings Public Key Lightsail で作成した server.pub の内容
General settings Endpoint address (host) <Lightsail の静的 IP アドレス>
General settings Endpoint address (port) 51820
General settings Allowed IPs 172.16.100.0/24
General settings Route Allowed IPs ON
Advanced settings Persistent keep alive 25

設定内容を確認して Save & Apply をクリックします。

WireGuard サーバーに RUT956 の Peer を追加

Lightsail で /etc/wireguard/wg0.conf に RUT956 のパブリックキーを登録して Peer を追加します。以下の内容を追記します。AllowedIPs には WireGuard ネットワークの RUT956 の IP アドレスと RUT956 のルーターネットワークの CIDR の両方を登録することで、ルーター配下のデバイスへの接続が可能になります。

/etc/wireguard/wg0.conf
# RUT956
[Peer]
PublicKey  = <RUT956 の Public Key>
AllowedIPs = 172.16.100.2/32, 192.168.77.0/24

サービスを再起動して、WireGuard の状態を確認します。RUT956 が Peer として登録されていることが確認できます。

$ sudo systemctl restart wg-quick@wg0
$ sudo wg show
interface: wg0
  public key: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  private key: (hidden)
  listening port: 51820

peer: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  endpoint: 116.67.153.62:44682
  allowed ips: 172.16.100.2/32, 192.168.77.0/24
  latest handshake: 6 seconds ago
  transfer: 180 B received, 92 B sent

RUT956 でも同様に確認します。

root@RUT956:~# wg show
interface: aws_01
  public key: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  private key: (hidden)
  listening port: 51820

peer: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  endpoint: 192.0.2.1:51820
  allowed ips: 172.16.100.0/24
  latest handshake: 1 minute, 59 seconds ago
  transfer: 92 B received, 39.32 KiB sent
  persistent keepalive: every 25 seconds

RUT956 から WireGuard サーバーへ ping を実行して接続を確認します。

root@RUT956:~# ping -c 3 172.16.100.1
PING 172.16.100.1 (172.16.100.1): 56 data bytes
64 bytes from 172.16.100.1: seq=0 ttl=64 time=9.778 ms
64 bytes from 172.16.100.1: seq=1 ttl=64 time=5.001 ms
64 bytes from 172.16.100.1: seq=2 ttl=64 time=5.018 ms

--- 172.16.100.1 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 5.001/6.599/9.778 ms

クライアントの追加

クライアントに応じたインストール方法を確認してインストールします。ここでは MacBook Air M4 (macOS 26.6.2) をクライアントとして登録するので App Store からインストールしました。

WireGuard を起動します。左下のメニューで + をクリックして 設定が空のトンネルを追加 します。

公開鍵と秘密鍵が作成されるので任意の名前を入力します。秘密鍵は絶対に外部へ漏らさないでください。

以下の内容を入力して 保存 をクリックします。

セクション キー 値 備考
Interface PrivateKey <デフォルトの値> 変更しない
Interface Address 172.16.100.11/32
Peer PublicKey <Lightsail の server.pub の内容>
Peer Endpoint <Lightsail の静的 IP アドレス>:51820
Peer AllowedIPs 172.16.100.0/24, 192.168.77.0/24 WireGuard ネットワークとルーターネットワーク
Peer PersistentKeepalive 25

macOS では VPN 構成の追加の確認をされるので 許可 をクリックします。

有効化 をクリックして状態が有効になることを確認します。

Lightsail で /etc/wireguard/wg0.conf に macOS のパブリックキーを登録して Peer を追加します。

/etc/wireguard/wg0.conf
# Oguri's Macbook Air
[Peer]
PublicKey  = <macOS の WireGuard アプリの 公開鍵>
AllowedIPs = 172.16.100.11/32

WireGuard を再起動します。

$ sudo systemctl restart wg-quick@wg0

動作確認

クライアントから RUT956 へ接続できるか ping を実行してみます。

$ ping -c 3 192.168.77.1
PING 192.168.77.1 (192.168.77.1): 56 data bytes
64 bytes from 192.168.77.1: icmp_seq=0 ttl=63 time=14.092 ms
64 bytes from 192.168.77.1: icmp_seq=1 ttl=63 time=13.571 ms
64 bytes from 192.168.77.1: icmp_seq=2 ttl=63 time=13.338 ms

--- 192.168.77.1 ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 13.338/13.667/14.092/0.315 ms
$ ping -c 3 192.168.77.103
PING 192.168.77.103 (192.168.77.103): 56 data bytes
64 bytes from 192.168.77.103: icmp_seq=0 ttl=62 time=15.316 ms
64 bytes from 192.168.77.103: icmp_seq=1 ttl=62 time=14.231 ms
64 bytes from 192.168.77.103: icmp_seq=2 ttl=62 time=16.520 ms

--- 192.168.77.103 ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 14.231/15.356/16.520/0.935 ms

ネットワークカメラへも接続を確認します。TP-Link Tapo C210 は RTSP への接続も可能なので、カメラのアカウントを作成しておきます。

RTSP クライアントとして IINA を使用します。rtsp://<ユーザー名>:<パスワード>@192.168.77.102:554/stream1 の形式で開くと画像が表示されます。

スマホの追加

Lightsail 側で設定を作成して QR コードで読み込ませます。

$ sudo wg genkey | sudo tee /etc/wireguard/phone.key | sudo wg pubkey | sudo tee /etc/wireguard/phone.pub
/etc/wireguard/phone.conf
[Interface]
PrivateKey = <phone.key の内容>
Address    = 172.16.100.12/32

[Peer]
PublicKey           = <Lightsail の server.pub>
Endpoint            = <Lightsail の静的 IP アドレス>:51820
AllowedIPs          = 172.16.100.0/24, 192.168.77.0/24
PersistentKeepalive = 25

phone.conf の内容を QR コードに変換します。

$ sudo cat /etc/wireguard/phone.conf | qrencode -t ansiutf8

スマホの WireGuard アプリで右下の + から QRコードからスキャン を選択して QR コードを読み込みます。トンネルに名前をつけて有効化しておきます。

Lightsail wg0.conf にスマホの Peer を追加します。

/etc/wireguard/wg0.conf
# Smart Phone
[Peer]
PublicKey  = <phone.pub の内容>
AllowedIPs = 172.16.100.12/32

WireGuard を再起動します。

$ sudo systemctl restart wg-quick@wg0

WireGuard の状態を確認するとスマホの peer が増えているのが分かります。

$ sudo wg show
interface: wg0
  public key: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  private key: (hidden)
  listening port: 51820

peer: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  endpoint: 116.67.153.62:63205
  allowed ips: 172.16.100.12/32
  latest handshake: 1 second ago
  transfer: 180 B received, 92 B sent

peer: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  allowed ips: 172.16.100.2/32, 192.168.77.0/24

peer: ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefg=
  allowed ips: 172.16.100.11/32

スマホから RUT956 の管理画面にもアクセスできます。

ハマりポイント

クライアントの Mac を LTE ルーター配下の LAN に接続した時に、WireGuard のトンネルを無効化しても Raspberry Pi やネットワークカメラに接続できない問題が発生しました。Raspberry Pi へ SSH で接続する場合には、以下のようにホストへのルートがない状態になっています。

$ ssh pi@192.168.77.103
ssh: connect to host 192.168.77.103 port 22: No route to host

これは同一ネットワークのデバイスとの通信を許可制にするプライバシー機能の影響です。macOS では [システム設定] - [プライバシーとセキュリティ] - [ローカルネットワーク] で対象のアプリケーションを有効にすればアクセス可能になります。

SSH を実行するターミナルアプリでローカルネットワークの設定を有効化して SSH を実行すると普通にアクセス可能になります。

% ssh pi@192.168.77.103
pi@192.168.77.103's password:
Linux raspi4b-01 6.18.50+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.18.50-1+rpt1 (2026-09-11) aarch64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Oct  7 11:57:41 2026 from 192.168.77.181
pi@raspi4b-01:~$

さいごに

グローバル IP のない LTE ルーターでも、WireGuard のハブサーバーを設置すればインターネット経由でルーター配下のマシンへ直接アクセスできました。RUT956 は WireGuard に標準で対応しているためルーター側は WebUI の設定だけで済み、メンテナンス用途であればハブも Lightsail の最小のプランで動きます。

PoC 用の回線として LTE ルーターを置く場面では、リモートから入れる経路を最初に用意しておくと現地に行く回数を減らせるため事前に設定しておいたほうが良いですね。


製造業のクラウド活用とデジタル化を支援します

クラスメソッドの専門家による包括的なクラウド導入とデジタル化支援で、製造業の業務効率を最大化しましょう。AWSの導入から運用、最適化まで、最新技術と豊富な知見であらゆる課題に対応します。生産ラインのデジタル化やデータ活用、IoTの導入事例もございます。ぜひ、弊社の実績をご覧ください。

製造業界での支援内容を見る

この記事をシェアする

関連記事