<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:DengXian;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@DengXian";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.E-MailFormatvorlage18
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.E-MailFormatvorlage19
        {mso-style-type:personal-reply;
        font-family:"Arial",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hi, <o:p></o:p></p>
<p class="MsoNormal">we are facing the following problem: <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">We are using a Strongswan-Client (Initiator, details below) to open up a Tunnel with reauthentication enabled and make_before_break=yes.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">After opening up a tunnel initially, we see local (clients) ip routes as follows (as expected):
<o:p></o:p></p>
<p class="MsoNormal">ip route list table 220<o:p></o:p></p>
<p class="MsoNormal">10.0.0.0/8 via 146.185.113.17 dev eth0  proto static  src 10.23.7.205<o:p></o:p></p>
<p class="MsoNormal">188.144.0.0/15 via 146.185.113.17 dev eth0  proto static  src 10.23.7.205<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">During reauthentication with make_before_break: <o:p></o:p></p>
<p class="MsoNormal">As long as we receive the same virtual IP everything is fine, the ip routes are kept and traffic still can flow through this tunnel.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">But once we receive a different virtual IP from the responder, the ipsec still says „tunnel is active“, but the old ip routes get deleted and no new ones are set up.
<o:p></o:p></p>
<p class="MsoNormal">So, ip route table 220 is empty and hence no traffic will flow through this still active tunnel.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Please note, once we disable make_before_break (which is not an option for us), everything runs smooth, even with new virtual IPs during reauthentication.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Any idea ? <o:p></o:p></p>
<p class="MsoNormal">Thanks for your help !<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">BR, Alex. <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><u>Clients OS</u>: <o:p></o:p></p>
<p class="MsoNormal">Linux gtegklvk04067 4.4.114-94.14-default #1 SMP Mon Feb 19 14:46:07 UTC 2018 (14c5f0f) x86_64 x86_64 x86_64 GNU/Linux<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><u>Strongswan Clients Version</u>: <o:p></o:p></p>
<p class="MsoNormal">Linux strongSwan U5.5.3-20180605_3/K4.4.114-94.14-default<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><u>ipsec.conf<o:p></o:p></u></p>
<p class="MsoNormal"># basic configuration<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">config setup<o:p></o:p></p>
<p class="MsoNormal">   charondebug="cfg 2, dmn 2, ike 2, net 9, job -1"<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">conn %default<o:p></o:p></p>
<p class="MsoNormal">   keyexchange=ikev2<o:p></o:p></p>
<p class="MsoNormal">   ike=aes256-sha256-modp2048,aes256-sha1-modp2048!<o:p></o:p></p>
<p class="MsoNormal">   esp=aes256-sha256-modp2048,aes256-sha1-modp2048!<o:p></o:p></p>
<p class="MsoNormal">   dpdaction=clear<o:p></o:p></p>
<p class="MsoNormal">   dpddelay=300s<o:p></o:p></p>
<p class="MsoNormal">   rightid=%any<o:p></o:p></p>
<p class="MsoNormal">   leftcert=my.C_NK_VPN.pem<o:p></o:p></p>
<p class="MsoNormal">   leftsourceip=%config<o:p></o:p></p>
<p class="MsoNormal">   forceencaps=yes<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">conn RU1_TI_1<o:p></o:p></p>
<p class="MsoNormal">   right=146.185.113.4<o:p></o:p></p>
<p class="MsoNormal">   rightsubnet=10.0.0.0/8,188.144.0.0/15<o:p></o:p></p>
<p class="MsoNormal">   lifetime=5m <o:p></o:p></p>
<p class="MsoNormal">   ikelifetime=2m <o:p></o:p></p>
<p class="MsoNormal">   margintime=1m<o:p></o:p></p>
<p class="MsoNormal">   rekeyfuzz=0%<o:p></o:p></p>
<p class="MsoNormal">   auto=add<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><u>strongswan.conf<o:p></o:p></u></p>
<p class="MsoNormal">charon {<o:p></o:p></p>
<p class="MsoNormal">        make_before_break = yes<o:p></o:p></p>
<p class="MsoNormal">        hash_and_url = no<o:p></o:p></p>
<p class="MsoNormal">        load_modular = yes<o:p></o:p></p>
<p class="MsoNormal">        plugins {<o:p></o:p></p>
<p class="MsoNormal">                include strongswan.d/charon/*.conf<o:p></o:p></p>
<p class="MsoNormal">        }<o:p></o:p></p>
<p class="MsoNormal">}<o:p></o:p></p>
<p class="MsoNormal">include strongswan.d/*.conf<o:p></o:p></p>
</div>
</body>
</html>