diff --git a/ffs-set-segment/files/usr/sbin/ffs-set-segment b/ffs-set-segment/files/usr/sbin/ffs-set-segment
index 80ed4aba3cb7555d1035a1d2686f104ffeb3af88..7ace458737c9fc1e3175be0705730c9557aabcf5 100755
--- a/ffs-set-segment/files/usr/sbin/ffs-set-segment
+++ b/ffs-set-segment/files/usr/sbin/ffs-set-segment
@@ -1,24 +1,24 @@
 #!/bin/sh
 if [  $(ps | grep -c "{$(basename $0)}") -gt 4 ]; then
+    echo started twice
     exit 1
 fi
 
 if [  $(ps | grep -c "fastd") -lt 2 ]; then
+    echo fastd not running
     exit 0
 fi
 
 if [ "$(uci get fastd.mesh_vpn_backbone.auto_segment)" = "0" ]; then
+    echo auto_segment disabled
     exit 0
 fi 
 
-NODEID=`uci get network.bat0.macaddr`
-for i in `seq 1 5`;
-do
-    NODEID=${NODEID/\:/}
-done
-NODEID=ffs-$NODEID
-SEGMENT=`nslookup $NODEID.segassign.freifunk-stuttgart.de  [::1]:54 |tail -n1 `
+NODEID=`uci get network.bat0.macaddr | sed 's/://g'`
+PUBKEY=`/etc/init.d/fastd show_key mesh_vpn | cut -c1-12`
+SEGMENT=`nslookup ffs-$NODEID-$PUBKEY.segassign.freifunk-stuttgart.de  [::1]:54 | tail -n1`
 if [[ -z "${SEGMENT// }" ]]; then
+    echo Node not known
     exit 1
 fi
 SEGMENT=${SEGMENT/Address 1: 2001:2:0:711::/}
@@ -40,4 +40,5 @@ done
 
 if [ "$CHANGED" = "1" ]; then
     /etc/init.d/fastd restart
+    echo Segment set to $SEGNUM
 fi