/vpc_conn

VpcConn is a tool that enables communication between two VPC hosts with overlapping addresses.

Primary LanguageRuby

VpcConn is a tool that enables communication between two VPC hosts with overlapping addresses.

This tool is experimental.

--

Image of what VpcConn can do.

vpc_conn_en

Outline of the mechanism.

vpc_conn_en2

--

This tool currently has the following restrictions.

  • Can only make a call from one side
  • No encryption between tunnels
  • Can only be processed by a single thread

--

HowToUse

  • Prepare two VPCs with the same CIDR
  • Prepare a total of 4 EC2 instances.
    • Place two EC2 instances in one VPC
      • One is used as a router for tunnels and one is used as a host for sending and receiving.
    • Set up three ENIs for your EC2 instance for your router.
      • For management
      • For tunnel
      • For communication with the host in the VPC
    • Set the same IP address as the IP address of the receiving host as the secondary IP of the ENI of the router of the VPC of the sending host.
$ git clone git@github.com:kuredev/vpc_conn.git
  # Commands on the router of the VPC of the host for sending
$ sudo ruby vpc_conn.rb -o eth1 -t eth2 -d [Peer Router IP Address] -s [IP address to communicate with peer VPC host] -r [Same IP address as the receiving host]
  # Commands on the router of the VPC of the host for receiving
$ sudo ruby vpc_conn.rb -o eth1 -t eth2 -d [Peer Router IP Address] -s [IP address to communicate with peer VPC host]