diff --git a/driver-core/src/main/java/com/datastax/driver/core/policies/TokenAwarePolicy.java b/driver-core/src/main/java/com/datastax/driver/core/policies/TokenAwarePolicy.java
index 6f4c8d6c545..98323b58a65 100644
--- a/driver-core/src/main/java/com/datastax/driver/core/policies/TokenAwarePolicy.java
+++ b/driver-core/src/main/java/com/datastax/driver/core/policies/TokenAwarePolicy.java
@@ -40,6 +40,7 @@
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
+import java.util.concurrent.ThreadLocalRandom;
 
 /**
  * A wrapper load balancing policy that adds token awareness to a child policy.
@@ -250,7 +251,7 @@ protected Host computeNext() {
 
       if (replicaOrdering == ReplicaOrdering.RANDOM) {
         List<Host> replicasList = Lists.newArrayList(replicas);
-        Collections.shuffle(replicasList);
+        Collections.shuffle(replicasList, ThreadLocalRandom.current());
         replicasIterator = replicasList.iterator();
       } else {
         replicasIterator = replicas.iterator();