<div dir="ltr"><div style="font-size:12.8000001907349px">Hi,</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">I am doing some load testing using Strong Swan as a VPN client and server but on different machines. I was able to bring up about 200 VPN connections  on the client. </div><div style="font-size:12.8000001907349px">All the clients could talk to the internet and things looked fine.</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">Bit I see that after some time even though I have script that is generating traffic constantly, all or some of the tunnels just vanish. Can someone please provide an </div><div style="font-size:12.8000001907349px">insight?</div><div style="font-size:12.8000001907349px">********************</div><div style="font-size:12.8000001907349px"><b>CLIENT config:</b></div><div style="font-size:12.8000001907349px">My ipsec.conf on client side is blank.</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px"><b>/etc/strongswan.conf:</b></div><div style="font-size:12.8000001907349px">charon {</div><div style="font-size:12.8000001907349px">#   load = sha1 sha2 md5 aes des hmac pem pkcs1 x509 revocation gmp random nonce curl xauth-generic kernel-netlink socket-default updown stroke</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">    dh_exponent_ansi_x9_42 = no</div><div style="font-size:12.8000001907349px">    reuse_ikesa = no</div><div style="font-size:12.8000001907349px">    threads = 32</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">   # install_routes=no</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">    plugins {</div><div style="font-size:12.8000001907349px">        load-tester {</div><div style="font-size:12.8000001907349px">            # enable the plugin</div><div style="font-size:12.8000001907349px">            enable = yes</div><div style="font-size:12.8000001907349px">            # 10000 connections, ten in parallel</div><div style="font-size:12.8000001907349px">            initiators = 10</div><div style="font-size:12.8000001907349px">            iterations = 1</div><div style="font-size:12.8000001907349px">            # use a delay of 100ms, overall time is: iterations * delay = 100s</div><div style="font-size:12.8000001907349px">            delay = 100</div><div style="font-size:12.8000001907349px">            # address of the gateway (releases before 5.0.2 used the "remote" keyword!)</div><div style="font-size:12.8000001907349px">            responder = 10.101.248.152</div><div style="font-size:12.8000001907349px">            # IKE-proposal to use</div><div style="font-size:12.8000001907349px">            proposal = aes128-sha1-modp2048</div><div style="font-size:12.8000001907349px">            esp = aes128-sha1</div><div style="font-size:12.8000001907349px">            # use faster PSK authentication instead of 1024bit RSA</div><div style="font-size:12.8000001907349px">            initiator_auth = pubkey|xauth</div><div style="font-size:12.8000001907349px">            responder_auth = pubkey</div><div style="font-size:12.8000001907349px">            # request a virtual IP using configuration payloads</div><div style="font-size:12.8000001907349px">            request_virtual_ip = yes</div><div style="font-size:12.8000001907349px">            # disable IKE_SA rekeying (default)</div><div style="font-size:12.8000001907349px">            ike_rekey = 0</div><div style="font-size:12.8000001907349px">            # enable CHILD_SA every 60s</div><div style="font-size:12.8000001907349px">            child_rekey = 60</div><div style="font-size:12.8000001907349px">            </div><div style="font-size:12.8000001907349px">            initiator_id = "CN=conn%dround%d"</div><div style="font-size:12.8000001907349px">            initiator_match = *</div><div style="font-size:12.8000001907349px">            responder_id="C=CH, O=strongSwan, CN=<a href="http://vpntest.x.com/" target="_blank">vpntest.x.com</a>"</div><div style="font-size:12.8000001907349px">            issuer_cert = /etc/ipsec.d/cacerts/caCert.pem</div><div style="font-size:12.8000001907349px">            issuer_key = /home/mbangad/caKey.pem</div><div style="font-size:12.8000001907349px">           </div><div style="font-size:12.8000001907349px">            # do not delete the IKE_SA after it has been established (default)</div><div style="font-size:12.8000001907349px">            delete_after_established = no</div><div style="font-size:12.8000001907349px">            # do not shut down the daemon if all IKE_SAs established</div><div style="font-size:12.8000001907349px">            shutdown_when_complete = no</div><div style="font-size:12.8000001907349px">            version=1</div><div style="font-size:12.8000001907349px">            initiator_tsr = <a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a></div><div style="font-size:12.8000001907349px">        }</div><div style="font-size:12.8000001907349px">    }</div><div style="font-size:12.8000001907349px">}</div><div style="font-size:12.8000001907349px">********************</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">*********************</div><div style="font-size:12.8000001907349px"><b>Server </b></div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px"><b>ipsec.conf:</b></div><div style="font-size:12.8000001907349px"># ipsec.conf - strongSwan IPsec configuration file</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">config setup</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px"># ipsec.conf - strongSwan IPsec configuration file</div><div style="font-size:12.8000001907349px">conn %default</div><div style="font-size:12.8000001907349px">  ikelifetime=60m</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">conn ios</div><div style="font-size:12.8000001907349px">    keyexchange=ikev1</div><div style="font-size:12.8000001907349px">    fragmentation=yes</div><div style="font-size:12.8000001907349px">    left=10.101.248.152</div><div style="font-size:12.8000001907349px">    leftcert=serverCert.pem</div><div style="font-size:12.8000001907349px">    leftsubnet=<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a></div><div style="font-size:12.8000001907349px">    leftfirewall=yes</div><div style="font-size:12.8000001907349px">    right=%any</div><div style="font-size:12.8000001907349px">    rightsourceip=<a href="http://10.10.3.0/24" target="_blank">10.10.3.0/24</a></div><div style="font-size:12.8000001907349px">    rightauth=pubkey</div><div style="font-size:12.8000001907349px">    rightauth2=xauth-radius</div><div style="font-size:12.8000001907349px">    eap_identity=%identity</div><div style="font-size:12.8000001907349px">    auto=add</div><div style="font-size:12.8000001907349px">    mobike=yes</div><div style="font-size:12.8000001907349px"><span style="white-space:pre-wrap">     </span></div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px"><b>strongswan.conf:</b></div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px"> strongswan.conf - strongSwan configuration file</div><div style="font-size:12.8000001907349px">#</div><div style="font-size:12.8000001907349px"># Refer to the strongswan.conf(5) manpage for details</div><div style="font-size:12.8000001907349px">#</div><div style="font-size:12.8000001907349px"># Configuration changes should be made in the included files</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">charon {</div><div style="font-size:12.8000001907349px">   #  load_modular = yes</div><div style="font-size:12.8000001907349px">    dns1=8.8.8.8</div><div style="font-size:12.8000001907349px">    dos_protection = no</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">    threads = 32</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">    # Two defined file loggers. Each subsection is either a file</div><div style="font-size:12.8000001907349px">    # in the filesystem or one of: stdout, stderr.</div><div style="font-size:12.8000001907349px">    filelog {</div><div style="font-size:12.8000001907349px">        /var/log/charon.log {</div><div style="font-size:12.8000001907349px">            # add a timestamp prefix</div><div style="font-size:12.8000001907349px">            time_format = %b %e %T</div><div style="font-size:12.8000001907349px">            # loggers to files also accept the append option to open files in</div><div style="font-size:12.8000001907349px">            # append mode at startup (default is yes)</div><div style="font-size:12.8000001907349px">            append = no</div><div style="font-size:12.8000001907349px">            # the default loglevel for all daemon subsystems (defaults to 1).</div><div style="font-size:12.8000001907349px">            default = 1</div><div style="font-size:12.8000001907349px">            # flush each line to disk</div><div style="font-size:12.8000001907349px">            flush_line = yes</div><div style="font-size:12.8000001907349px"><span style="white-space:pre-wrap">                   </span>ike_name = yes</div><div style="font-size:12.8000001907349px">        }</div><div style="font-size:12.8000001907349px">    }</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">    #Radius Plugin</div><div style="font-size:12.8000001907349px">    plugins {</div><div style="font-size:12.8000001907349px">       eap-radius {</div><div style="font-size:12.8000001907349px">           accounting = yes</div><div style="font-size:12.8000001907349px">           servers {</div><div style="font-size:12.8000001907349px">               server-a {</div><div style="font-size:12.8000001907349px">                   address = 127.0.0.1</div><div style="font-size:12.8000001907349px">                   secret = testing123</div><div style="font-size:12.8000001907349px">               }</div><div style="font-size:12.8000001907349px">               server-b {</div><div style="font-size:12.8000001907349px">                   address = 10.101.248.152</div><div style="font-size:12.8000001907349px">                   secret = testing123</div><div style="font-size:12.8000001907349px">               }</div><div style="font-size:12.8000001907349px">           }</div><div style="font-size:12.8000001907349px">       }</div><div style="font-size:12.8000001907349px">   }</div><div style="font-size:12.8000001907349px">}</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">*********************************</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">thanks,</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">M</div></div>