diff --git a/ffs-set-segment/files/etc/init.d/ffs-set-segment b/ffs-set-segment/files/etc/init.d/ffs-set-segment
index 15dfcf08112d1e83fb388debdfeeed47773a241e..8197714b07e5c83d03b8ed18a7b204a938e35888 100755
--- a/ffs-set-segment/files/etc/init.d/ffs-set-segment
+++ b/ffs-set-segment/files/etc/init.d/ffs-set-segment
@@ -8,6 +8,7 @@ start () {
         /etc/init.d/fastd restart
     fi
 
+    rm /tmp/.seg.ffs
     /etc/init.d/micrond enable
     /etc/init.d/micrond restart
 }
diff --git a/ffs-set-segment/files/usr/sbin/ffs-set-segment b/ffs-set-segment/files/usr/sbin/ffs-set-segment
index 6435ab0a59a8585027d73d14eac13c384c3dc635..00c2988aa9ae8600790386bb6e17360bcf9cef25 100755
--- a/ffs-set-segment/files/usr/sbin/ffs-set-segment
+++ b/ffs-set-segment/files/usr/sbin/ffs-set-segment
@@ -1,4 +1,6 @@
 #!/bin/sh
+SEGSET=/tmp/.seg.ffs
+
 ME=$(basename $0)
 if [ $(ps | grep -c "$ME") -gt 4 ]; then
   logger -s -t $ME "started twice"
@@ -23,12 +25,18 @@ BATSEG=$(batctl gwl | grep '02:00:3' | tail -1 | sed 's/:0/:/g' | cut -d':' -f4)
 GITSEG=$(nslookup ffs-${NODEID}-${PUBKEY}.segassign.freifunk-stuttgart.de ::1#54 | grep "2001:2:0:711::" | cut -d':' -f7)
 
 if [ -z "$GITSEG" ]; then
-  logger -t $ME "Node not registered"
-  GITSEG=99
+  if [ -f $SEGSET ]; then
+    GITSEG=$(cat $SEGSET)
+    logger -t $ME "Node is in Segment: $GITSEG"
+  else
+    logger -t $ME "Node not registered"
+    GITSEG=99
+  fi
 else
   if [ -n "$BATSEG" ] && [ "$BATSEG" != "$GITSEG" ]; then
     logger -t $ME "Avoiding Shortcut"
     GITSEG=99
+    rm $SEGSET
   fi
 fi
 
@@ -51,6 +59,7 @@ if [ "$CHANGED" = "1" ]; then
   /sbin/ifdown client
   /etc/init.d/fastd restart
   /sbin/ifup client
+  echo $GITSEG >$SEGSET
   logger -t $ME "Set Segment: $GITSEG"
 else
   logger -t $ME "No changes"