ishiz_iwy
2024年4月17日 10時18分
コンテナにてCANサーボを使用するため、add_args --net=hostの設定を追加しております。
その際、Bridge(podman0)を使用し動作している他コンテナから本コンテナへ通信(UDP)を行うことは可能でしょうか。
ncコマンドにて他コンテナの指定ポートへデータが送信可能なことは確認できましたが、本コンテナ(宛先10.88.0.1:xxxxx)では他コンテナからのデータを受信出来ませんでした。
標準から追加で必要なネットワーク設定などありましたらご教示いただけると幸いです。
よろしくお願いいたします。
コメント
ishiz_iwy
at_reika.yamazaki
ishiz_iwy
at_reika.yamazaki
山崎です。
2点確認です。
1. コンテナ②から host.containers.internal 宛の ping は確認できているでしょうか?
問題なければ以下のような結果になると思います。
# ping -c 3 host.containers.internal PING host.containers.internal (10.88.0.1): 56 data bytes 64 bytes from 10.88.0.1: seq=0 ttl=42 time=0.720 ms 64 bytes from 10.88.0.1: seq=1 ttl=42 time=0.476 ms 64 bytes from 10.88.0.1: seq=2 ttl=42 time=0.483 ms
2. コンテナ②の /etc/hosts の内容はどうなっているでしょうか?
「/etc/hostsにて10.88.0.1の記載有り」とご連絡いただけていることから、
以下のような内容かと思うのですが、異なるでしょうか?
# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain ::1 localhost localhost.localdomain 10.88.0.1 host.containers.internal host.docker.internal 10.88.0.4 d93a9ff72e48 udp_client
ご確認いただけますと幸いです。
もし上記も問題ない場合は、再現確認のため、
再現に必要なコンテナ①、②の設定内容を教えていただけると助かります。
以上、どうぞよろしくお願いいたします。
ishiz_iwy
at_reika.yamazaki
at_reika.yamazaki
2024年4月17日 14時44分
お世話になっております。
山崎です。
podman0 を使用して本コンテナと他コンテナで UDP 通信したいということですね。
コンテナのネットワークについては以下という認識ですがあっているでしょうか?
・本コンテナ
add_args --net=hostの設定なし
・他コンテナ
add_args --net=hostの設定を追加
認識が誤りでしたら申し訳ありません。
上記の場合ですと、本コンテナの設定ファイルに UDP 用のポート設定を追加すると良いのではと思います。
実際は使用するポート番号を設定してください。
以下に2つのコンテナを使って UDP 通信を確認した例を載せます。
参考になりましたら幸いです。
・本コンテナの起動
本コンテナを動かしておきます。
・他コンテナを起動
・送受信確認
認識に誤り等ありましたらご指摘ください。
以上、どうぞよろしくお願いいたします。