ConoHa VPSでプライベートネットワークを構築してみた
1日単位で利用できるConoHa VPSを利用しています。
ConoHaにはパブリックなネットワークを介さずにローカルネットワーク内で複数のVPSを通信させる機能が無料で利用できます。
例えばアプリケーションサーバーをフロントに置いて、バックエンドにDBサーバーを置くといった構成にするのが一般的です。
この機能を利用することによってバックエンドを直接グローバルネットワークに接続しないのでセキュリティを高めることができ、通信も高速化します。
今回はUbuntu16.04を利用してローカルネットワークを構築することにします。
最初にConoHaの管理画面から、ネットワーク > プライベートネットワークを選択します
もしこの時点で初めてプライベートネットワークを構築する場合はプライベートネットワークの欄には何も表示されないと思います。
プライベートネットワークを追加するには、青色のボタン「+ ネットワーク」を選択します そして、「」
次にネットワークの設定を行います。
最初に選択するのはリージョンです。リージョンの異なるVPS同士をプライベートネットワークで接続することはできません。
今回は東京リージョンを利用しているので、「東京」を選択します。
次はセグメントの設定を行います。Ipv4形式でプライベートネットワークを割り当てる場合は、
- クラスA - 10.0.0.0 ~ 10.255.255.255 (10.0.0.0/8)
- クラスB - 172.16.0.0 ~ 172.31.255.255 (172.16.0.0/12)
- クラスC - 192.168.0.0~192.168.255.255 (192.168.0.0/16)
で設定します。
今回はクラスCで設定を行います
最後の / で区切られた部分はCIDR(サイダー)表記と呼ばれ、複数のプライベートネットワークを設定する場合に他と区別するために使用されます。
今回は192.168.0.1/24に設定します。
追加を押すとプライベートネットワークが追加されます。
プライベートネットワークの追加にはしばらく時間がかかりますが、しばらくすると選択できるようになります。タブをクリックするとこのように展開できるようになります。
契約中のVPSをプライベートネットワークに追加するには「契約中VPS」の右側にある工具のマークをクリックします。
ここからVPSをプライベートネットワークに接続できますが、もしVPSが起動中の場合は操作ができないので、事前に停止させておきます。
ネットワークに接続したいVPSの接続状況を「接続しない」から「接続する」に変更して
「保存」をクリックします
するとプライベートIPアドレスが割り当てられます。
これで各VPSに対してネットワークインターフェイスが追加されます。
次にネットワークインターフェイスに対して、ここで割り当てられたIPアドレスの設定を行う必要があります。
CentOS6の場合はConoHaの公式ガイドを参照してください
この記事ではUbuntu16.04の場合を解説します。
ネットワークインターフェイスを確認
ip addr
Ubuntu16.04から表記が変わりeth1からens4に変更されました。
3: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether fa:16:3e:cc:f1:0b brd ff:ff:ff:ff:ff:ff
プライベートIPを設定
ens4がネットワークインターフェイスとして認識されていますが、IPアドレスが割り当てられていないためプライベートネットワークの内の外部サーバーからの接続ができません。
先ほど割り当てられたプライベートIPをここで利用します。
sudo ip a add 192.168.0.1/24 dev ens4 && sudo ifconfig ens4 up
192.168.0.1の箇所は割り当てられたプライベートIPに置き換えてください。
設定が完了したかを確認
ip addr
inetのところに上で入力したIPアドレスが表示されていれば設定は完了です。
3: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether fa:16:3e:cc:f1:0b brd ff:ff:ff:ff:ff:ff inet 192.168.0.1/24 scope global ens4 valid_lft forever preferred_lft forever inet6 fe80::f816:3eff:fecc:f10b/64 scope link valid_lft forever preferred_lft forever