Flannel: フランネルネットワークとNATの外部へのルート

作成日 2014年11月02日  ·  3コメント  ·  ソース: coreos/flannel

こんにちは、これは機能のリクエストの問題です。

vxLANでバックアップされたオーバーレイがあるコンテナーを実行したいと思います。 ただし、オーバーレイの外側の宛先については、コンテナをNAT変換して、たとえばパブリックインターネットに送信したいと思います。

私はこれを行うための3つの方法を見ています:

  • 2番目のネットワークインターフェイス:オーバーレイにFlannelを使用しますが、コンテナーのデフォルトのDockerNATにより類似した2番目のnetdevを作成します。 その後、オーバーレイへのトラフィックは引き続きフランネルを経由し、2番目のnetdevのデフォルトルートがインターネットトラフィックを処理します。
  • フランネルセットアップNAT :ある種のフランネルへの構成オプション。オーバーレイの外側のデフォルトルートを追加し、オーバーレイを終了するときに、フランネルにNATを構成させます。
  • vxLANゲートウェイの作成:フランネルインターフェイスとNATへの別のnetdev(またはそのようなもの)を備えたコンテナーまたはマシンを作成します。 このNATインスタンスを経由するように他のコンテナのデフォルトルートを設定します。

考え? これはフランネルの範囲内ですか、それとも範囲外ですか?

最も参考になるコメント

2と非常によく似た処理を行うオプションがすでにあります。 --ip-masqを使用してflanneldを実行すると、コンテナから出てインターネットに向かうトラフィックにIPマスカレードルールが追加されます。 より正確には、オーバーレイアドレス空間の内側から発信され、その外側に向かうトラフィックです。

Dockerが--ip-masqの追加をDockerデーモンにマージするのを待っていたので、このオプションは文書化されていません(修正する必要があります)。 これにより、Dockerデーモンを--ip-masq=falseで実行し、flanneldを--ip-masqで実行できます。 それ以外の場合、Dockerはdocker0から送信されるトラフィックのIPマスカレードルールもインストールします。

最近リリースされたDocker1.3には、 --ip-masqオプションがあります。

全てのコメント3件

2番目のオプションは妥当なようです。 フランネルブリッジを立ち上げた後、systemd-networkdを利用してこのネットワークルートを構成できると思います。

@eyakubovichはおそらくこれについて意見を持っています。

2と非常によく似た処理を行うオプションがすでにあります。 --ip-masqを使用してflanneldを実行すると、コンテナから出てインターネットに向かうトラフィックにIPマスカレードルールが追加されます。 より正確には、オーバーレイアドレス空間の内側から発信され、その外側に向かうトラフィックです。

Dockerが--ip-masqの追加をDockerデーモンにマージするのを待っていたので、このオプションは文書化されていません(修正する必要があります)。 これにより、Dockerデーモンを--ip-masq=falseで実行し、flanneldを--ip-masqで実行できます。 それ以外の場合、Dockerはdocker0から送信されるトラフィックのIPマスカレードルールもインストールします。

最近リリースされたDocker1.3には、 --ip-masqオプションがあります。

よろしくお願いします!

このページは役に立ちましたか?
0 / 5 - 0 評価