Armadilloフォーラム

SIMカードを挿入して設定しているWWANで優先してIoTHUBへ送信を行うように設定したい

takeshita_kyouhei

2025年2月18日 23時56分

【概要】
WWANとLANを同時に使用しているArmadillo-IoT G4で、IoTHUBとの通信を行う処理については、WWANを優先して使用するように設定したい

【詳細】
現在、Armadillo-IoT G4でsoracomのSIMを挿入して使用しているWWANと有線LAN接続を行っているLANが存在しています
 WWAN:前述の通り、soracomのSIMカードを使用
 LAN:DHCPサーバが存在するネットワークに接続、開発用PC(VirtualBoxでATDE9を構築)とデータ取得先のPCも同じLANに接続しています

このArmadilloで実行するコンテナでの通信について、IoTHUB(特定のURLへの通信)について、WWANを使用するように設定したいのですが可能でしょうか?

コメント

アットマークテクノの古賀です。

takeshita_kyouheiさん:
>【概要】
>WWANとLANを同時に使用しているArmadillo-IoT G4で、IoTHUBとの通信を行う処理については、WWANを優先して使用するように設定したい

LAN 接続について質問ですが、Armadillo が接続している LAN からは IoT HUB と通信できず、WWAN からのみ IoT Hub に通信できない環境でしょうか?
あるいは、LAN と WWAN のどちらからも IoT Hub と通信できるが、IoT Hub との通信には WWAN を経由したい、ということでしょうか。

>【詳細】
>現在、Armadillo-IoT G4でsoracomのSIMを挿入して使用しているWWANと有線LAN接続を行っているLANが存在しています
> WWAN:前述の通り、soracomのSIMカードを使用
> LAN:DHCPサーバが存在するネットワークに接続、開発用PC(VirtualBoxでATDE9を構築)とデータ取得先のPCも同じLANに接続しています
>
>このArmadilloで実行するコンテナでの通信について、IoTHUB(特定のURLへの通信)について、WWANを使用するように設定したいのですが可能でしょうか?

コンテナの動作について質問です。IoT Hub と通信するコンテナは、IoT Hub とのみ通信できればよいのでしょうか?あるいは、LAN 上の「データ取得先の PC」とも通信出来る必要があるのでしょうか。

takeshita_kyouhei

2025年2月19日 10時48分

返信いただきありがとうございます

> >【概要】
> >WWANとLANを同時に使用しているArmadillo-IoT G4で、IoTHUBとの通信を行う処理については、WWANを優先して使用するように設定したい
>
> LAN 接続について質問ですが、Armadillo が接続している LAN からは IoT HUB と通信できず、WWAN からのみ IoT Hub に通信できない環境でしょうか?
> あるいは、LAN と WWAN のどちらからも IoT Hub と通信できるが、IoT Hub との通信には WWAN を経由したい、ということでしょうか。
WWANからのみIoTHUBへ通信したいです

> >【詳細】
> >現在、Armadillo-IoT G4でsoracomのSIMを挿入して使用しているWWANと有線LAN接続を行っているLANが存在しています
> > WWAN:前述の通り、soracomのSIMカードを使用
> > LAN:DHCPサーバが存在するネットワークに接続、開発用PC(VirtualBoxでATDE9を構築)とデータ取得先のPCも同じLANに接続しています
> >
> >このArmadilloで実行するコンテナでの通信について、IoTHUB(特定のURLへの通信)について、WWANを使用するように設定したいのですが可能でしょうか?
>
> コンテナの動作について質問です。IoT Hub と通信するコンテナは、IoT Hub とのみ通信できればよいのでしょうか?あるいは、LAN 上の「データ取得先の PC」とも通信出来る必要があるのでしょうか。
後者になります
コンテナは、以下のように通信したいです
IoTHUBへの通信:WWAN
データを取得先のPCとの通信:LAN

上記実施可能でしょうか?

アットマークテクノの古賀です。

takeshita_kyouheiさん:
>>LAN 接続について質問ですが、Armadillo が接続している LAN からは IoT HUB と通信できず、WWAN からのみ IoT Hub に通信できない環境でしょうか?
>>あるいは、LAN と WWAN のどちらからも IoT Hub と通信できるが、IoT Hub との通信には WWAN を経由したい、ということでしょうか。

TYPO がありました。ごめんなさい。「WWAN からのみ IoT Hub に通信できない環境」ではなく、「WWAN からのみ IoT Hub に通信できる環境」かどうかの質問でした。

>WWANからのみIoTHUBへ通信したいです

「したい」とのことですので、LAN からも IoT Hub にアクセス可能なのでしょうね。

>>>【詳細】
>>>現在、Armadillo-IoT G4でsoracomのSIMを挿入して使用しているWWANと有線LAN接続を行っているLANが存在しています
>>> WWAN:前述の通り、soracomのSIMカードを使用
>>> LAN:DHCPサーバが存在するネットワークに接続、開発用PC(VirtualBoxでATDE9を構築)とデータ取得先のPCも同じLANに接続しています
>>>
>>>このArmadilloで実行するコンテナでの通信について、IoTHUB(特定のURLへの通信)について、WWANを使用するように設定したいのですが可能でしょうか?
>>
>>コンテナの動作について質問です。IoT Hub と通信するコンテナは、IoT Hub とのみ通信できればよいのでしょうか?あるいは、LAN 上の「データ取得先の PC」とも通信出来る必要があるのでしょうか。
>後者になります
>コンテナは、以下のように通信したいです
>IoTHUBへの通信:WWAN
>データを取得先のPCとの通信:LAN

了解しました。

>上記実施可能でしょうか?

コンテナに対してではなくホスト OS(ABOS)での設定になりますが、IoT Hub のエンドポイント IP アドレスに対するルーティング設定を、WWAN インタフェースに対して行う、というのが簡単かも知れません。

例えば、次のようにするのは、どうでしょうか:

# address=$(ping -c 1 [IoT Hub エンドポイント] | grep -ohE -m 1 '[[:digit:]]{1,}\.[[:digit:]]{1,}\.[[:digit:]]{1,}\.[[:digit:]]{1,}')
# ip route add "$address"/32 dev [WWAN インタフェース]

takeshita_kyouhei

2025年2月19日 18時48分

本件、返信ありがとうございます

> アットマークテクノの古賀です。
> >上記実施可能でしょうか?
>
> コンテナに対してではなくホスト OS(ABOS)での設定になりますが、IoT Hub のエンドポイント IP アドレスに対するルーティング設定を、WWAN インタフェースに対して行う、というのが簡単かも知れません。
>
> 例えば、次のようにするのは、どうでしょうか:
>

> # address=$(ping -c 1 [IoT Hub エンドポイント] | grep -ohE -m 1 '[[:digit:]]{1,}\.[[:digit:]]{1,}\.[[:digit:]]{1,}\.[[:digit:]]{1,}')
> # ip route add "$address"/32 dev [WWAN インタフェース]
> 

上記コマンドについて実施してみましたが、ip route addコマンドでうまくいきません
ttyCommModemというのがArmadilloで使用しているWWLANのアダプタのはずなのですが、ip route addコマンドに失敗してしまいます

・添付の通り、addressについては取得出来ているように見えます
・ttyCommModemについて、契約しているsoracomSIMカードに割り振られたグローバルIPアドレスが設定されていることを確認

上記、何が問題なのでしょうか?

ファイル ファイルの説明
ip route add_エラー.png
nmcli.png

アットマークテクノの古賀です。

takeshita_kyouheiさん:
>>コンテナに対してではなくホスト OS(ABOS)での設定になりますが、IoT Hub のエンドポイント IP アドレスに対するルーティング設定を、WWAN インタフェースに対して行う、というのが簡単かも知れません。
>>
>>例えば、次のようにするのは、どうでしょうか:

# address=$(ping -c 1 [IoT Hub エンドポイント] | grep -ohE -m 1 '[[:digit:]]{1,}\.[[:digit:]]{1,}\.[[:digit:]]{1,}\.[[:digit:]]{1,}')
# ip route add "$address"/32 dev [WWAN インタフェース]

>上記コマンドについて実施してみましたが、ip route addコマンドでうまくいきません
>ttyCommModemというのがArmadilloで使用しているWWLANのアダプタのはずなのですが、ip route addコマンドに失敗してしまいます
>
>・添付の通り、addressについては取得出来ているように見えます
>・ttyCommModemについて、契約しているsoracomSIMカードに割り振られたグローバルIPアドレスが設定されていることを確認
>
>上記、何が問題なのでしょうか?

以下のコマンドを実行すると、ルーティングテーブルの内容が表示されますが、ルーティングテーブルでの dev の名前は、どうなっているでしょうか?
もし ppp0 など、ttyCommModem とは違う名前の場合は、ip route で表示されたデバイス名を指定してみてください。

# ip route

WWAN インタフェースを指定してルーティング設定を追加できない場合は、SIM カード/LTE 網側の宛先アドレスになっている 10.64.64.64 に対して、IoT Hub エンドポイントの IP アドレスへのルーティング設定を追加してみてください:

# ip route add "$address" via 10.64.64.64

takeshita_kyouhei

2025年2月19日 20時38分

返信ありがとうございます

> 以下のコマンドを実行すると、ルーティングテーブルの内容が表示されますが、ルーティングテーブルでの dev の名前は、どうなっているでしょうか?
> もし ppp0 など、ttyCommModem とは違う名前の場合は、ip route で表示されたデバイス名を指定してみてください。
>
>

> # ip route
> 

>
> WWAN インタフェースを指定してルーティング設定を追加できない場合は、SIM カード/LTE 網側の宛先アドレスになっている 10.64.64.64 に対して、IoT Hub エンドポイントの IP アドレスへのルーティング設定を追加してみてください:
>

> # ip route add "$address" via 10.64.64.64
> 

ip routeコマンドでsoracomSIMカードに割り振られている「10.100.2.129」が設定されたインターフェース名は「ppp0」でした
そのため、以下のコマンドを実行してroute登録を実施してみました

ip route add "$address"/32 dev ppp0

上記実施後、ip routeコマンドを実行した結果は添付の通りでした
問題ないと思うのですが、どうでしょうか?

ファイル ファイルの説明
ip route_設定変更後.png

アットマークテクノの古賀です。

takeshita_kyouheiさん:
>>以下のコマンドを実行すると、ルーティングテーブルの内容が表示されますが、ルーティングテーブルでの dev の名前は、どうなっているでしょうか?
>>もし ppp0 など、ttyCommModem とは違う名前の場合は、ip route で表示されたデバイス名を指定してみてください。
>>

# ip route

...
>ip routeコマンドでsoracomSIMカードに割り振られている「10.100.2.129」が設定されたインターフェース名は「ppp0」でした
>そのため、以下のコマンドを実行してroute登録を実施してみました

ip route add "$address"/32 dev ppp0

>
>上記実施後、ip routeコマンドを実行した結果は添付の通りでした
>問題ないと思うのですが、どうでしょうか?

はい。これでよさそうです。

takeshita_kyouhei

2025年2月21日 19時37分

>>上記実施後、ip routeコマンドを実行した結果は添付の通りでした
>>問題ないと思うのですが、どうでしょうか?
>はい。これでよさそうです。
返信ありがとうございます
現在、想定した動作を得られていません

WWANに使用したSIMカードはsoracomのもので、今回接続するIoTHUBにはsoracomの閉域網(プライベートネットワーク)で接続を行おうとしてます
しかし、現状はRouting設定を行っても正しくIoTHUBに接続できていない状況です

Armadillo側に問題があるのか、IoTHUBひいてはsoracomからのクラウド上のルーティングが正しく設定できているかを確認します

以上、報告まで