Comments前回に引き続き、Dockerのネットワーク周りです。socketで扱ってみようと思います。linkの関係にあり、対応するvethにパケットを送信するとコンテナ内のethに転送されます。ホストOS上で見えるvethは、通常のNICと同じように扱えます。bridgeであるdocker0というブリッジに接続されますが、前回はvethをdocker0から剥がしてOpenvSwitchに接続しました。これによりVLANが扱えたり、OpenFlowでパケット転送を制御したりが可能となりました。今回は、そのOpenvSwitchに当たる転送処理を自前で実装してみようというのが趣旨になります。簡単なバカハブ(リピーターハブ)を実装してみたいと思います。Commentご無沙汰しております(3年ぶり)仕事?もちろんしてますよ。それはそうと、仕事でネットワーク関連の検証をやっていて、ただのPing箱がたくさん欲しくなったとき、こんな感じの構成を作りたかった。Namespace)でやっていた。netnsはネットワークの隔離であって、ファイルシステムやプロセス空間までは分けてくれない。ホストOS上でApacheだったりsshdだったりが動いていると、起動スクリプトをいじくったりしないといけない。ここがコンテナになると、一度にネットワークもファイルシステムもプロセス空間も分離できる。DockerならDockerfile少し書いたり、出来合いのイメージ拾ってくるだけでサーバとかも一瞬で建てられる。いうわけでやってみよう。