diff --git a/manifests/public_ip.pp b/manifests/public_ip.pp
index 110fbd9d5978cf48fccc8c1884a5b5ec8de111c5..8ed83ddf823d5580450aaf3f1d33a4331ab79d72 100644
--- a/manifests/public_ip.pp
+++ b/manifests/public_ip.pp
@@ -43,6 +43,23 @@ class lysnetwork::public_ip (
     }
     'Debian': {
       package { 'resolvconf': ensure => installed }
+      # An ifdown before and an ifup after would be preferable
+      # but if something goes wrong then than's bad
+      # Also, the interface should only be reinstansiated if the
+      # interface is about to change.
+      file_line { 'source interfaces.d':
+        ensure => present,
+        path   => '/etc/network/interfaces',
+        line   => 'source /etc/network/interfaces.d/*'
+      }
+      file { "/etc/network/interfaces.d/${iface}":
+        content => @("EOF"/$)
+        iface ${iface} inet6 static
+          address 2001:6b0:17:f0a0::${last_octet_16}/64
+          gateway 2001:6b0:17:f0a0::1
+        |- EOF
+        ,
+      }
     }
     default: {}
   }