diff --git a/docs/guides/server/caching.adoc b/docs/guides/server/caching.adoc
index 74352830df9..093551debc9 100644
--- a/docs/guides/server/caching.adoc
+++ b/docs/guides/server/caching.adoc
@@ -271,22 +271,22 @@ and define your own transport stack.
For more details, see https://infinispan.org/docs/stable/titles/server/server.html#using-inline-jgroups-stacks_cluster-transport[Using inline JGroups stacks].
-.defining a custom transport stack
-[source]
+.Defining a custom stack with encryption using UDP
+[source,xml]
----
-
+
+ asym_algorithm="RSA"
+ change_key_on_coord_leave = "false"
+ change_key_on_leave = "false"
+ use_external_key_exchange = "true"
+ stack.combine="INSERT_BEFORE"
+ stack.position="pbcast.NAKACK2"/>
@@ -296,6 +296,26 @@ For more details, see https://infinispan.org/docs/stable/titles/server/server.ht
----
+When IP multicast (or UDP) is unavailable in your environment, configure {project_name} using a static list of IP addresses as shown in the following example.
+
+.Defining a custom stack without multicast discovery
+[source,xml]
+----
+
+
+
+ stack.combine="REPLACE"
+ stack.position="MPING"/>
+
+
+
+
+
+ ...
+
+----
+<1> The `initial_hosts` is a comma separated list of IP and port, using the format `IP[PORT]`.
+
By default, the value set to the `cache-stack` option has precedence over the transport stack you define in the cache configuration file.
If you are defining a custom stack, make sure the `cache-stack` option is not used for the custom changes to take effect.