docker networkでbridgeを作成して、VPCと接続したい

0

識者の皆様

いつもご指導ありがとうございます
現在、EC2(Amazon Linux)でdockerをインストールして、dokcerのコンテナをVPCのサブネットに公開をしたいと考えています
手順としては、以下の通りの手順を実行しています

【手順】
1.bridge作成
docker network create \
--driver bridge \
--subnet=192.168.33.0/24 \ #VPC-subnet
--gateway=192.168.33.10 \ #docker hostのipアドレス
--opt "com.docker.network.bridge.name"="br0" \
shared_nw

2.br0作成
cat >> /etc/sysconfig/network-scripts/ifcfg-br0 <<EOF
DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
ONBOOT=yes
STP=no

echo "BRIDGE=br0" >> /etc/sysconfig/network-scripts/ifcfg-eth0

/etc/init.d/network restart

3.brctlでbridgeの状況を確認
brctl show
bridge name bridge id    STP enabled interfaces
br0   8000.0a4a84f0f732 no eth0

4.dockerを起動
docker run -v /var/log/script:/var/log/script --name test01 --net shared_nw --ip 192.168.33.10 -dti --security-opt label:disable --cap-add=NET_ADMIN centos7

5.brctlでbridgeの状況を確認
bridge name bridge id STP enabled interfaces
br0 8000.0a4a84f0f732 no eth0
veth9ef588d

6.コンテナにログイン
docker exec -it test01 /bin/bash

7.コンテナのroute tableの確認
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.33.10 0.0.0.0 UG 0 0 0 eth0
172.31.0.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0

8.pingでVPC-subnetのgatewayにpingの疎通確認
ping 192.168.33.1
PING 192.168.33.1 (192.168.33.1) 56(84) bytes of data.
From 192.168.33.1 icmp_seq=1 Destination Host Unreachable
From 192.168.33.1 icmp_seq=2 Destination Host Unreachable
From 192.168.33.1 icmp_seq=3 Destination Host Unreachable

上記の通り、VPC-subnetのgatewayにpingが届きません
tcpdumpでパケットの状況を確認しているとvethからgatewayのarpの解決を行っているようなのですが、gatewayからの返事がなく、pingが届かないようです

あえてarpでgatewayのmacをstaticに登録をしてpingを打って見たのですが、結果は変わらずでした
色々と試行錯誤をしているのですが、awsのVPCにおけるl2ベースの何らかの制限があるのではと考えております

識者の皆様なにか情報をお持ちであれば、ご教示をいただけませんでしょうか
よろしくおねがいします

質問済み 6年前421ビュー
1回答
0

以下ご参考になるかもしれません。

AWSネットワークの論理的な側面 ~ AWSのバックボーンネットワークに関するDeepな話(2)
https://codezine.jp/article/detail/9790

送信元ゲストOSが出したARPリクエストは送信先ゲストOSへは到達していない
宛先は Mapping Service に管理されていて、ARP による MAC アドレスの解決の挙動とは異なります。

semnil
回答済み 6年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン