diff --git a/scapy/volatile.py b/scapy/volatile.py
index bbe61e7f01d7e2652f4c300fd5bfe03af4a79ff7..de2945935e6f5f87e2fbf611664c652c9bec2532 100644
--- a/scapy/volatile.py
+++ b/scapy/volatile.py
@@ -42,10 +42,11 @@ class RandomEnumeration:
     def next(self):
         while True:
             if self.turns == 0 or (self.i == 0 and self.renewkeys):
+                self.cnt_key = self.rnd.randint(0,2**self.n-1)
                 self.sbox = [self.rnd.randint(0,self.fsmask) for k in xrange(self.sbox_size)]
             self.turns += 1
             while self.i < 2**self.n:
-                ct = self.i
+                ct = self.i^self.cnt_key
                 self.i += 1
                 for k in range(self.rounds): # Unbalanced Feistel Network
                     lsb = ct & self.fsmask