現在の環境は次のとおりです。 Windows 10にはHyper-VにUbuntu 16.04がインストールされており、このホストされたUbuntuはローカルネットワーク10.10.10.*に接続されています。ここで、UbuntuのIPは10.10.10.1、WindowsのIPは10.10です。 10.100。彼らはお互いに会い、すべてが大丈夫です。 UbuntuにはLXC / LXDコンテナ(nginx、postgres、およびnodejsサービス)があり、これらのコンテナのchyrrybr0というネットワークをアドレス10.10.0。*に接続しているので、現在の環境は次のとおりです。
コンテナからWindowsをpingできますが、Windowsはコンテナにpingまたは接続できません。だから私の質問は次のとおりです。どうすればいいですか?コンテナに新しいネットワークインターフェイスを追加する、固定IPアドレスを10.10.10。*に設定できますか?
次のネットワークを作成しようとしています。
編集:新しいeth1インターフェースを追加できました。まず、Ubuntuホストで実行してから、lxc network attach eth1 postgres eth1
postgresコンテナにネットワークインターフェイスの設定10-win-network.cfg
とコンテンツを追加します。
auto eth1
iface eth1 inet static
address 10.10.10.5
netmask 255.255.255.0
ただし、これからは100% packet loss
10.10.10.100()のWindowsホストとicmp_seq=1 Destination Host Unreachable
10.10.10.1()のUbuntuホストをpingできません。しかし、10.10.0.249(cherrybr0のUbuntuホストIPアドレス)へのpingは成功しました。私は何を見逃していますか?
ベストアンサー1
この問題を解決できたかどうかはわかりませんが、最近同様の問題(「私のラップトップの外部からローカルラップトップで実行されているコンテナにどのようにアクセスしますか?」)が発生したため、静的パスを追加しました。私の家のルーター...
スピード:
- たとえば、すべてのコンテナを別々のネットワークで実行します
172.18.0.0/16
。これらのコンテナはすべて1つのIPの背後にあります172.18.0.1
。たとえば、このマシンと呼びますShip
(コンテナがあるので..へへ)。 - あなたの
Ship
返品ローカルIPが必要です。たとえば、192.168.1.xxx
これはルータが知っているアドレスです。 172.18.0.0
ルーター(またはルーターの場合はWindowsコンピュータ)で、ネットワークサブマスクへの固定パスをs255.255.0.0
に追加します。Ship
192.168.1.xxx
今、172.18.0.xxx
ローカルネットワーク(Windowsシステムを含む)どこからでもコンテナを呼び出すことができます。