diff --git a/software/slaprunner/common.cfg b/software/slaprunner/common.cfg
index d17df70a87eaf727b2e6acb0ddbe5af18f659fed..2af43903e1f725e524f3cc1ffa97181eb445fec6 100644
--- a/software/slaprunner/common.cfg
+++ b/software/slaprunner/common.cfg
@@ -54,7 +54,7 @@ mode = 0644
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-runner.cfg
 output = ${buildout:directory}/template-runner.cfg.in
-#md5sum = e62a9604cb10c6b743056294004b95cc
+md5sum = fe8626980860002cd1044669cf7c2181
 mode = 0644
 
 [template-runner-import-script]
@@ -70,7 +70,7 @@ mode = 0644
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-runner-import.cfg.in
 output = ${buildout:directory}/instance-runner-import.cfg
-#md5sum = 22d958bd271a378b84f04e36010ee689
+md5sum = 341e1273f9489d60520c3bbaef72e1f4
 mode = 0644
 
 [template-runner-export-script]
@@ -86,7 +86,7 @@ mode = 0644
 recipe = slapos.recipe.template
 url = ${:_profile_base_location_}/instance-runner-export.cfg.in
 output = ${buildout:directory}/instance-runner-export.cfg
-#md5sum = 38a2b6e9ebb65457c1f477455b205328
+md5sum = c4c1c2059666e30b715e87509d2a0db7
 mode = 0644
 
 [template-resilient]
diff --git a/software/slaprunner/instance-runner-export.cfg.in b/software/slaprunner/instance-runner-export.cfg.in
index 1a98fd3932c32db704d4dc9f6e82c3a4bb6b210d..7e0f745f0f195789aac748411e4ec46c62d5d185 100644
--- a/software/slaprunner/instance-runner-export.cfg.in
+++ b/software/slaprunner/instance-runner-export.cfg.in
@@ -36,6 +36,31 @@ parts +=
   monitor-check-resilient-feed-file
   monitor-check-webrunner-internal-instance
 
+[proxy-free-port]
+recipe = slapos.cookbook:free_port
+minimum = 49980
+maximum = 49989
+ip = $${slap-network-information:global-ipv6}
+
+[runner-free-port]
+recipe = slapos.cookbook:free_port
+minimum = 50005
+maximum = 50014
+ip = $${slap-network-information:global-ipv6}
+
+[slaprunner]
+proxy_port = $${proxy-free-port:port}
+runner_port = $${runner-free-port:port}
+
+[supervisord-free-port]
+recipe = slapos.cookbook:free_port
+minimum = 39986
+maximum = 39995
+ip = $${slaprunner:ipv4}
+
+[supervisord]
+port = $${supervisord-free-port:port}
+
 [exporter]
 recipe = slapos.recipe.template:jinja2
 template = ${template-runner-export-script:location}/${template-runner-export-script:filename}
@@ -48,8 +73,14 @@ context =
   raw  shell_binary ${dash:location}/bin/dash
   raw  rsync_binary ${rsync:location}/bin/rsync
 
+[monitor-httpd-free-port]
+recipe = slapos.cookbook:free_port
+minimum = 8437
+maximum = 8446
+ip = $${slap-network-information:global-ipv6}
+
 [monitor-instance-parameter]
-monitor-httpd-port = 8437
+monitor-httpd-port = $${monitor-httpd-free-port:port}
 # Pass some parameter to dispay in monitoring interface
 instance-configuration =
   httpdcors cors-domain $${slaprunner-httpd-cors:location} $${httpd-graceful-wrapper:output}
diff --git a/software/slaprunner/instance-runner-import.cfg.in b/software/slaprunner/instance-runner-import.cfg.in
index 825bef741414c245d106649f82d2e0682b387b50..b28bd4470af649e019b9ba9e8e3c9350c69d6670 100644
--- a/software/slaprunner/instance-runner-import.cfg.in
+++ b/software/slaprunner/instance-runner-import.cfg.in
@@ -34,9 +34,30 @@ parts +=
 # In case both exporter and importer (aka main instance and clone instance)
 # run with the same IP (usually for testing purposes),
 # run slaprunner using different ports.
+[proxy-free-port]
+recipe = slapos.cookbook:free_port
+minimum = 49990
+maximum = 49999
+ip = $${slap-network-information:global-ipv6}
+
+[runner-free-port]
+recipe = slapos.cookbook:free_port
+minimum = 50015
+maximum = 50024
+ip = $${slap-network-information:global-ipv6}
+
 [slaprunner]
-proxy_port = 50000
-runner_port = 50005
+proxy_port = $${proxy-free-port:port}
+runner_port = $${runner-free-port:port}
+
+[supervisord-free-port]
+recipe = slapos.cookbook:free_port
+minimum = 39996
+maximum = 40005
+ip = $${slaprunner:ipv4}
+
+[supervisord]
+port = $${supervisord-free-port:port}
 
 # Idem for some other services
 [runner-sshd-port]
diff --git a/software/slaprunner/instance-runner.cfg b/software/slaprunner/instance-runner.cfg
index 66fad67999033e6c451e7017b0aabcf1109584d9..9f1e06c2c10ebf3c3756152b28a1ae63f821ceb7 100644
--- a/software/slaprunner/instance-runner.cfg
+++ b/software/slaprunner/instance-runner.cfg
@@ -685,7 +685,8 @@ no_logfile = NONE
 numprocs = 1
 path = $${shell:path}
 pidfile = $${directory:run}/supervisord.pid
-server = $${slaprunner:ipv4}:$${:port}
+ip = $${slaprunner:ipv4}
+server = $${:ip}:$${:port}
 port = 39986
 slapgrid-cp = slapgrid-cp
 slapgrid-cp-command = $${slaprunner:slapos} node instance --all --cfg $${:slapos-cfg} --pidfile $${:slapgrid-cp-pid} --verbose --logfile $${:slapgrid-cp-log}