質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

Q&A

解決済

2回答

2454閲覧

別ホストからDockerへ通信をしたい

Otazoman

総合スコア44

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

0グッド

0クリップ

投稿2021/07/03 03:38

前提・実現したいこと

Dockerの通信関連で困っています。
ホストAとホストBがあってホストA上でDockerコンテナを
立ち上げてDocker内でIPレンジを割当ててやっています。
ホストBからホストAのDockerに対して通信をしたいと
考えていますが通信できないので通信できるようにしたいです。

※DockerでSambaを立ち上げていてSambaとホストB上の仮想マシンから
ドメインに参加しようとしていて躓いています。

恐れ入りますがご回答よろしくお願いいたします。

発生している問題・エラーメッセージ

構成は以下の通りです。
ホストAでは192.168.50.0/24のルートを追加してDockerマシンへの通信はできています。ホストBで192.168.50.0/24のルートを追加してもDockerマシンへの通信ができません。

イメージ説明

該当のソースコード

ホストAとホストBでルーティング追加したコマンド

route add 192.168.50.0 MASK 255.255.255.0 192.168.0.11

試したこと

・ホストA→Dockerマシンへのping OK
・ホストA→VMへのping OK
・ホストB→ホストAへのping OK
・ホストB→VMへのping OK
・ホストB→Dockerマシンへのping NG
・Dockerマシン→ホストAへのping OK
・Dockerマシン→ホストBへのping OK

補足情報(FW/ツールのバージョンなど)

ホストAはWindows10、ホストBもWindows10でVMはUbuntu20.04LTSです。
Dockerはdocker0とは別に192.168.50.0/24のネットワークを準備しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

手元でとりあえず次のような環境を構築して

ホストA:(Windows 10) [192.168.0.77/24] ┗VirtualBox内ゲスト:(Ubuntu 20.04 サーバー) [192.168.0.79/24 (ブリッジアダプタ)] [172.17.0.1/16 (docker0)] ┗ docker(samba) [172.17.0.2/16] ホストB:(Windows 10) [192.168.0.128/24]

ホストBで
route add 172.17.0.0 mask 255.25.0.0 192.168.0.79
を実施してホストBからdockerのsambaサーバーに\172.17.0.2でアクセスできました。

私の理解力が乏しいだけだと思うのですが,提示いただいている図の192.168.0.11は何か?
というのが今一つ理解できていません。
VirtualBoxの仮想マシンのubuntu 20.04に設定で2つブリッジアダプタを用意している
ということでしょうか?
dockerの192.168.0.50に対応する仮想マシン側のIPアドレスは書かれていませんし
そこは回答者側で推測せよということでしょうか?

もし,仮想マシンのUbuntuOS内の設定で192.168.0.10192.168.0.11
アクセスできるようにしているなら,ホストマシンはともかく,ルーターやホストBは
192.168.0.11を知る手段はないのではないでしょうか?

仮想マシンの設定として192.168.0.10をブリッジアダプタにしているなら,
ホストBで追加すべきルートは192.168.0.10ではないでしょうか?

route add 192.168.50.0 MASK 255.255.255.0 192.168.0.10

投稿2021/07/16 15:20

ujimushi_sradjp

総合スコア2101

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Otazoman

2021/07/18 03:07

失礼いたしました。 Dockerネットワークで192.168.50.0/24というネットワークアドレスを割当てていてGWは192.168.50.1です。 VMにはIPを2つ割当てていて192.168.0.12をDockerマシンに紐づけるような感じの構成にしています。
guest

0

失礼いたしました。自己解決できました。
無線中継器が間に入っていて悪さしていたみたいです。
無線中継器のSSID配下であればルーティング設定を行って
ホストBからホストAのDockerへの通信が無事にできました。

ホストB→無線AP親機→無線中継器→ホストAだとNGで

ホストB→無線中継器→ホストAだとOKでした。

原理はよくわからないのですが、SSID関連の問題が原因なのかと勝手に
推測しています。

投稿2021/07/18 03:12

Otazoman

総合スコア44

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問