<div dir="ltr">Hello,<div><br></div><div>I got OpenSwan talking to AWS Virtual Gateway just fine, and can now route directly between two VPC's using static routes.</div><div>But I have to switch to BGP routing in order to do smarter routing (e.g. have a Virtual Gateway act as a hub between multiple VPC's and non-VPC networks).</div><div><br></div><div>I tried configuring bgpd from Quagga but it fails to initiate the connection, and I suspect that it might be related to the IPSec tunnel not having routable end-points(?)</div><div>(I might be talking rubbish here, I'm a noob when it comes to ipsec).</div><div><br></div><div>Here is the configuration I have in a test network. It's a VPC running OpenSwan on Ubuntu 14.04 on EC2 with a subnet of 10.20.50/24 and connecting to a Virtual GW in another VPC (the test "Hub") which has a subnet of 10.20.30/24).</div><div><br></div><div><div><b><font face="monospace, monospace">version 2.0</font></b></div><div><b><font face="monospace, monospace">config setup</font></b></div><div><b><font face="monospace, monospace"><span class="" style="white-space:pre">      </span>dumpdir=/var/run/pluto/</font></b></div><div><b><font face="monospace, monospace"><span class="" style="white-space:pre">  </span>nat_traversal=yes</font></b></div><div><b><font face="monospace, monospace"><span class="" style="white-space:pre">        </span>virtual_private=%v4:<a href="http://10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12,%v4:25.0.0.0/8,%v6:fd00::/8,%v6:fe80::/10,%v4:!10.20.50.0/24">10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12,%v4:25.0.0.0/8,%v6:fd00::/8,%v6:fe80::/10,%v4:!10.20.50.0/24</a></font></b></div><div><b><font face="monospace, monospace"><span class="" style="white-space:pre"> </span>oe=off</font></b></div><div><b><font face="monospace, monospace"><span class="" style="white-space:pre">   </span>protostack=netkey</font></b></div><div><b><font face="monospace, monospace"><span class="" style="white-space:pre">        </span>interfaces=%defaultroute</font></b></div><div><b><font face="monospace, monospace">include /etc/ipsec.d/*.conf</font></b></div></div><div><div><b><font face="monospace, monospace">conn amos-spoke-c-amos-hub-1</font></b></div><div><b><font face="monospace, monospace">    type=tunnel</font></b></div><div><b><font face="monospace, monospace">    authby=secret</font></b></div><div><b><font face="monospace, monospace">    forceencaps=yes</font></b></div><div><b><font face="monospace, monospace">    auto=start</font></b></div><div><b><font face="monospace, monospace">    left=%defaultroute</font></b></div><div><b><font face="monospace, monospace">    leftid=52.4.101.228</font></b></div><div><b><font face="monospace, monospace">    leftnexthop=%defaultroute</font></b></div><div><b><font face="monospace, monospace">    leftsubnet=<a href="http://10.20.50.0/24">10.20.50.0/24</a></font></b></div><div><b><font face="monospace, monospace">    right=52.7.165.219</font></b></div><div><b><font face="monospace, monospace">    rightid=52.7.165.219</font></b></div><div><b><font face="monospace, monospace">    rightsubnet=<a href="http://10.20.30.0/24">10.20.30.0/24</a></font></b></div></div><div><br></div><div><br></div><div>bgpd.conf:</div><div><br></div><div><div><b><font face="monospace, monospace">!</font></b></div><div><b><font face="monospace, monospace">! Zebra configuration saved from vty</font></b></div><div><b><font face="monospace, monospace">!   2016/02/18 05:51:54</font></b></div><div><b><font face="monospace, monospace">!</font></b></div><div><b><font face="monospace, monospace">hostname ip-10-20-50-15</font></b></div><div><b><font face="monospace, monospace">password zebra</font></b></div><div><b><font face="monospace, monospace">log stdout</font></b></div><div><b><font face="monospace, monospace">!</font></b></div><div><b><font face="monospace, monospace">debug bgp events</font></b></div><div><b><font face="monospace, monospace">debug bgp keepalives</font></b></div><div><b><font face="monospace, monospace">debug bgp updates</font></b></div><div><b><font face="monospace, monospace">debug bgp fsm</font></b></div><div><b><font face="monospace, monospace">debug bgp filters</font></b></div><div><b><font face="monospace, monospace">!</font></b></div><div><b><font face="monospace, monospace">router bgp 65102</font></b></div><div><b><font face="monospace, monospace"> bgp router-id 0.0.0.0</font></b></div><div><b><font face="monospace, monospace"> neighbor 169.254.44.121 remote-as 7224</font></b></div><div><b><font face="monospace, monospace"> neighbor 169.254.44.121 timers 10 30</font></b></div><div><b><font face="monospace, monospace"> neighbor 169.254.44.121 timers connect 30</font></b></div><div><b><font face="monospace, monospace"> neighbor 169.254.44.121 soft-reconfiguration inbound</font></b></div><div><b><font face="monospace, monospace">!</font></b></div><div><b><font face="monospace, monospace">line vty</font></b></div><div><b><font face="monospace, monospace">!</font></b></div></div><div><b><font face="monospace, monospace"><br></font></b></div><div>The VirtualGateway configuration in generic format is below (I tried to keep only relevant parts). I suspect that the issue boils down to that my configuration doesn't mention any of the "<b><font face="monospace, monospace">Inside IP Addresses</font></b>" from that file, but I don't know how am I supposed to do that.</div><div><br></div><div>Could you please explain to me what should I change?</div><div><br></div><div>Thanks.</div><div><br></div><div><div><b><font face="monospace, monospace">Amazon Web Services</font></b></div><div><b><font face="monospace, monospace">Virtual Private Cloud</font></b></div><div><b><font face="monospace, monospace"><br></font></b></div><div><b><font face="monospace, monospace">IPSec Tunnel #1</font></b><br></div><div><b><font face="monospace, monospace">================================================================================</font></b></div><div><b><font face="monospace, monospace">#1: Internet Key Exchange Configuration</font></b></div><div><span class="" style="white-space:pre"><b><font face="monospace, monospace">                </font></b></span></div><div><b><font face="monospace, monospace">...</font></b></div><div><b><font face="monospace, monospace">The Customer Gateway and Virtual Private Gateway each have two addresses that relate</font></b><br></div><div><b><font face="monospace, monospace">to this IPSec tunnel. Each contains an outside address, upon which encrypted</font></b></div><div><b><font face="monospace, monospace">traffic is exchanged. Each also contain an inside address associated with</font></b></div><div><b><font face="monospace, monospace">the tunnel interface.</font></b></div><div><b><font face="monospace, monospace"> </font></b></div><div><b><font face="monospace, monospace">The Customer Gateway outside IP address was provided when the Customer Gateway</font></b></div><div><b><font face="monospace, monospace">was created. Changing the IP address requires the creation of a new</font></b></div><div><b><font face="monospace, monospace">Customer Gateway.</font></b></div><div><b><font face="monospace, monospace"><br></font></b></div><div><b><font face="monospace, monospace">The Customer Gateway inside IP address should be configured on your tunnel</font></b></div><div><b><font face="monospace, monospace">interface. </font></b></div><div><b><font face="monospace, monospace"><br></font></b></div><div><b><font face="monospace, monospace">Outside IP Addresses:</font></b></div><div><b><font face="monospace, monospace">  - Customer Gateway <span class="" style="white-space:pre">               </span>        : 52.4.101.228 </font></b></div><div><b><font face="monospace, monospace">  - Virtual Private Gateway<span class="" style="white-space:pre"> </span>        : 52.7.165.219</font></b></div><div><span class="" style="white-space:pre"><b><font face="monospace, monospace">               </font></b></span></div><div><b><font face="monospace, monospace">Inside IP Addresses</font></b></div><div><b><font face="monospace, monospace">  - Customer Gateway         <span class="" style="white-space:pre">           </span>: <a href="http://169.254.44.122/30">169.254.44.122/30</a></font></b></div><div><b><font face="monospace, monospace">  - Virtual Private Gateway             : <a href="http://169.254.44.121/30">169.254.44.121/30</a></font></b></div><div><b><font face="monospace, monospace"><br></font></b></div><div><b><font face="monospace, monospace">Configure your tunnel to fragment at the optimal size:</font></b></div><div><b><font face="monospace, monospace">  - Tunnel interface MTU     : 1436 bytes</font></b></div><div><b><font face="monospace, monospace">    </font></b></div><div><b><font face="monospace, monospace">#4: Border Gateway Protocol (BGP) Configuration:</font></b></div><div><b><font face="monospace, monospace"><br></font></b></div><div><b><font face="monospace, monospace">The Border Gateway Protocol (BGPv4) is used within the tunnel, between the inside</font></b></div><div><b><font face="monospace, monospace">IP addresses, to exchange routes from the VPC to your home network. Each</font></b></div><div><b><font face="monospace, monospace">BGP router has an Autonomous System Number (ASN). Your ASN was provided </font></b></div><div><b><font face="monospace, monospace">to AWS when the Customer Gateway was created.</font></b></div><div><b><font face="monospace, monospace"><br></font></b></div><div><b><font face="monospace, monospace">BGP Configuration Options:</font></b></div><div><b><font face="monospace, monospace">  - Customer Gateway ASN<span class="" style="white-space:pre">    </span>          : 65102 </font></b></div><div><b><font face="monospace, monospace">  - Virtual Private  Gateway ASN          : 7224</font></b></div><div><b><font face="monospace, monospace">  - Neighbor IP Address     <span class="" style="white-space:pre">          </span>  : 169.254.44.121</font></b></div><div><b><font face="monospace, monospace">  - Neighbor Hold Time       : 30</font></b></div><div><b><font face="monospace, monospace"><br></font></b></div><div><b><font face="monospace, monospace">Configure BGP to announce routes to the Virtual Private Gateway. The gateway</font></b></div><div><b><font face="monospace, monospace">will announce prefixes to your customer gateway based upon the prefix you </font></b></div><div><b><font face="monospace, monospace">assigned to the VPC at creation time.</font></b></div><div><b><font face="monospace, monospace"><br></font></b></div><div><b><font face="monospace, monospace">...</font></b></div><div><b><font face="monospace, monospace">(Tunnel 2 configuration removed)</font></b></div><div><br></div></div><div><div><br></div>
</div></div>