From 435a98cd3f3147ab6b222cd8a265d7101f0a3f12 Mon Sep 17 00:00:00 2001 From: Michael Andersen Date: Tue, 12 Jan 2016 10:36:37 +0100 Subject: [PATCH] Fix unable to setup more than one Site2Site VPN Connection --- .../debian/config/opt/cloud/bin/configure.py | 16 ++++++++++------ .../config/opt/cloud/bin/cs_site2sitevpn.py | 2 +- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/systemvm/patches/debian/config/opt/cloud/bin/configure.py b/systemvm/patches/debian/config/opt/cloud/bin/configure.py index 3e6d717647a..f616b6b891b 100755 --- a/systemvm/patches/debian/config/opt/cloud/bin/configure.py +++ b/systemvm/patches/debian/config/opt/cloud/bin/configure.py @@ -462,16 +462,20 @@ class CsSite2SiteVpn(CsDataBag): if m: self.confips.append(m.group(1)) - for public_ip in self.dbag: - if public_ip == "id": + for vpn in self.dbag: + if vpn == "id": continue - dev = CsHelper.get_device(public_ip) + + local_ip = self.dbag[vpn]['local_public_ip'] + dev = CsHelper.get_device(local_ip) + if dev == "": - logging.error("Request for ipsec to %s not possible because ip is not configured", public_ip) + logging.error("Request for ipsec to %s not possible because ip is not configured", local_ip) continue + CsHelper.start_if_stopped("ipsec") - self.configure_iptables(dev, self.dbag[public_ip]) - self.configure_ipsec(self.dbag[public_ip]) + self.configure_iptables(dev, self.dbag[vpn]) + self.configure_ipsec(self.dbag[vpn]) # Delete vpns that are no longer in the configuration for ip in self.confips: diff --git a/systemvm/patches/debian/config/opt/cloud/bin/cs_site2sitevpn.py b/systemvm/patches/debian/config/opt/cloud/bin/cs_site2sitevpn.py index 02157b4194f..972c09a23d7 100755 --- a/systemvm/patches/debian/config/opt/cloud/bin/cs_site2sitevpn.py +++ b/systemvm/patches/debian/config/opt/cloud/bin/cs_site2sitevpn.py @@ -19,7 +19,7 @@ from pprint import pprint def merge(dbag, vpn): - key = vpn['local_public_ip'] + key = vpn['peer_gateway_ip'] op = vpn['create'] if key in dbag.keys() and not op: del(dbag[key])