第35回 Open vSwitchで作るDockerのネットワーク(OVSで構築する編)古賀政純の「攻めのITのためのDocker塾」(5/6 ページ)

» 2017年02月08日 07時30分 公開

コンテナc1のIPアドレスの確認、疎通確認

 コンテナc1にログインします。以下では、コンテナc1のrootアカウントのコマンドプロンプトを「c1 #」、コンテナc2のrootアカウントのコマンドプロンプトを「c2 #」とします。


# docker exec -it c1 /bin/bash
c1 #

 コンテナc1上で、yumコマンドを使ってRPMパッケージをインストールします。コンテナc1がプロキシサーバ経由でインターネットにアクセスする場合は、コンテナc1上の「/etc/yum.conf」ファイルにプロキシサーバの設定を追記しておきます。


c1 # echo "proxy=http://proxy.your.site.com:8080" >> /etc/yum.conf

 コンテナc1上でipコマンドを使ってIPアドレスを確認するため、コンテナc1上にiproute RPMパッケージをインストールします。


c1 # yum install -y iproute

 コンテナc1でIPアドレスとMACアドレスが正しく設定されているかを確認します。


c1 # ip a
...
12: eth0@if13: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 00:01:02:03:04:05 brd ff:ff:ff:ff:ff:ff
    inet 172.16.1.171/16 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::9c6c:c3ff:fed7:eaa8/64 scope link
       valid_lft forever preferred_lft forever

 さらに、コンテナc1のデフォルトゲートウェイが正しく設定されているかを確認します。


c1 # netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         172.16.1.1      0.0.0.0         UG        0 0          0 eth0
172.16.0.0      0.0.0.0         255.255.0.0     U         0 0          0 eth0

 コンテナc1からコンテナc2のIPアドレス(172.16.1.172/16)に対して、pingコマンドで疎通確認を行います。


c1 # ping -c 3 172.16.1.172
PING 172.16.1.172 (172.16.1.172) 56(84) bytes of data.
64 bytes from 172.16.1.172: icmp_seq=1 ttl=64 time=0.250 ms
64 bytes from 172.16.1.172: icmp_seq=2 ttl=64 time=0.050 ms
64 bytes from 172.16.1.172: icmp_seq=3 ttl=64 time=0.042 ms
 
--- 172.16.1.172 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.042/0.114/0.250/0.096 ms

 以上で、コンテナc1とc2の通信が可能であることを確認できました。

Copyright © ITmedia, Inc. All Rights Reserved.