私はdocker-1.9.1
をQNAP raidマシンで実行しています。サブネット10.0.3.0/24
を使用するデフォルトのbridge
ネットワークがあります。私はドッカーはこのルール自体を作成したと仮定していますDockerはブリッジネットワーク用のiptablesでIPマスカレードルールを自動化しますか?
-A POSTROUTING -s 10.0.3.0/24 ! -d 10.0.3.0/24 -j MASQUERADE
:iptablesのでは私はnat
テーブル内のルールを参照してください。これは、iptablesのでルールを作成しません
docker network create \
--gateway=10.0.5.1 \
--subnet=10.0.5.0/24 \
-o "com.docker.network.bridge.host_binding_ipv4"="0.0.0.0" \
-o "com.docker.network.bridge.enable_icc"="true" \
-o "com.docker.network.driver.mtu"="1500" \
-o "com.docker.network.bridge.name"="lxcbr1" \
-o "com.docker.network.bridge.enable_ip_masquerade"="true" \
isolated_nw
:
私は新しいブリッジネットワークを作成しました。私は一歩足りなかった?ここで
は@larsks'の例をコピーし、完全なセットアップコマンドと結果です:
[/share/Containers] # docker --version
Docker version 1.9.1, build 147ce3e
[/share/Containers] # iptables -t nat -S | grep 10.0.5.0
[/share/Containers] # docker network create \
> --gateway=10.0.5.1 \
> --subnet=10.0.5.0/24 \
> -o "com.docker.network.bridge.host_binding_ipv4"="0.0.0.0" \
> -o "com.docker.network.bridge.enable_icc"="true" \
> -o "com.docker.network.driver.mtu"="1500" \
> -o "com.docker.network.bridge.name"="lxcbr1" \
> -o "com.docker.network.bridge.enable_ip_masquerade"="true" \
> isolated_nw
a7b5c938008169f32fcdfc1d9409716b725cc916b30f472ac6ec2a1d71fb77f0
[/share/Containers] # iptables -t nat -S | grep 10.0.5.0
[/share/Containers] # iptables -t nat -S
-P PREROUTING ACCEPT
-P INPUT ACCEPT
-P OUTPUT ACCEPT
-P POSTROUTING ACCEPT
-A POSTROUTING -s 10.0.3.0/24 ! -d 10.0.3.0/24 -j MASQUERADE
[/share/Containers] #
https://docs.docker.com/engine/userguide/containers/networkingcontainers/で「独自のブリッジネットワークを作成する」ことは承知していますか? –
私は自分のネットワークを作成するためにそのページの例を使用しました。それは偽のip偽装やiptablesのように見えません。 –
それは...実はします。あなたは私の答えで走ったコマンドの実際のシーケンスを見ることができます。または、これを見ることができます。これは同じテストを実行している私の実際のセッションです:https://asciinema.org/a/9ipp0n6izkcb3iqk2tdgmpx1i – larsks