AWS

VPC Peering、Direct Connectで同セグメントの通信を実現する方法。

はじめに

くどうです。

今回は、AWSの話です。
VPC同士でVPC Peering、もしくはオンプレミスとDirect Connectで接続して接続する場合の前提条件としてセグメントが被らないようにとあります。
最初からIP設計を行い、接続する分には問題はありません。しかし、最近は構築後に接続要件が出てくるケースがあります。
特にエンタープライズな範囲で、部署間での接続など増えてきています。
そこで、ひとつの解決方法としてProxyを利用した方法を説明していきたいと思います。つまり、ピア通信でないことをご了承ください。
また、例としてVPC Peeringを取り上げています。

概要

本来、実現したかった通信は同セグメントの通信でした。

しかし、実際にはVPC Peeringの設定自体が行えません。

そこで、VPC Peeringを実現するためセグメントの異なるVPCを挟みます。

そこで、発生する問題があります。VPC越えです。

ただ、この場合も実際にはVPC1とVPC3で通信出来ません。

そこでProxyを利用することで通信を実現します。

Peeringの設定

Peeringは、通常通り設定を行います。

Route Table

Route Tableも設定を行います。

VPC1

VPC1は192.168.0.0/24でPeeringを指定します。

VPC2

VPC2では、それぞれ{通信したいインスタンスのIP}/32で指定するのが良いと思います
/32でバッティングしないように制御します。

VPC3

VPC3ではVPC1と同様に192.168.0.0/24でPeeringを指定します。

以上でルーティングに設定は完了です。

Proxyを構築

ProxyですがSOCKS Proxyを利用します。
HTTP/Sとは違い、SOCKSを利用する理由としてはプロトコルに依存しない点です。

利用する、ProxyソフトウェアはDante です。
http://www.inet.no/dante/

インストールはソースから。

以上で完了するかと思います。

次いで、設定ファイルを用意します。
/ect/sockd.conf

/etc/socks.conf

起動

停止
Killしましょう。

Security Group

通信するプロトコルによって異なります。
適切な設定をしましょう。

通信の検証

実際に通信を行う場合はどうするか、sftpを例に確認していきます。
VPC1のインスタンスからVPC3のインスタンスへ接続を行います。

ただ、SOCKS Proxyを利用するためconnect-proxyをインストールします。
epelレポジトリを利用します。

EC2の場合は秘密鍵の指定が必要となります。
-4でバージョン4を指定しています。5でもできます。

以上で接続確認が行えました。
他のアプリケーションでもProxy使えるものならどんなものでも可能かと思います。
Internal ELBを挟むことで冗長化出来たりするかもしれません(未検証

まとめ

今回はVPC越えをするためSOCKS Proxyを利用し実現しました。
セグメントのバッティングは起こりうることなので、一つの方法として考えてもらえればと思います。
ではでは

Related post

  1. AWS

    動画でCloudを学べるCloud Academyとは?

    はじめにくどうです皆さんはCloud、例えばAzureやA…

  2. AWS

    Azure ADとAWS Directory Serviceで同期してみよう。

    はじめにどうも、くどうです。今回は、Microsoft Azure…

  3. AWS

    Azure仮想マシンがやってるポートフォワーディングをAWSのELBでやってみる。

    くどうです。小ネタです。Azureでは便利なことに仮想マシンを新…

  4. AWS

    AzureとAWSを接続してみようと思うけどどうやるの?

    はじめにくどうです。2015年初投稿です。クラウド間で接続して…

  5. AWS

    パソコン同士をVPNで接続する方法(お気に入りツールの紹介)

    はじめにくどうですパソコン同士をVPNで接続する場合が多く…

  6. AWS

    Deep Security as a Service (DSaaS)でProxyを利用する場合の注意…

    はじめにくどうです。DSaaSをProxyを使用する場合の…

  1. Azure

    Azureのアラートって簡単にPagerDutyと連携できるんです。そっからSl…
  2. Azure

    Azure RemoteAppにWeb Clientがサポートになりました。地味…
  3. Azure

    Add-AzureAccountに失敗する時の対処方法は、Clear-Azure…
  4. Azure

    HDInsightのKafkaをJolokia(REST API)でモニタリング…
  5. 未分類

    XREAで構築したEC-CUBEでメールが送れない
PAGE TOP