From eea5f4343aa91a9ee1e724097f5ffbb6427875a5 Mon Sep 17 00:00:00 2001 From: "Ray J. Greenwell" Date: Thu, 22 Mar 2018 16:26:43 -0700 Subject: [PATCH] Allow cross-region connections to use internal IPs. --- .../presents/peer/server/persist/NodeRecord.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/threerings/presents/peer/server/persist/NodeRecord.java b/core/src/main/java/com/threerings/presents/peer/server/persist/NodeRecord.java index 0d4244c3d..54da6e476 100644 --- a/core/src/main/java/com/threerings/presents/peer/server/persist/NodeRecord.java +++ b/core/src/main/java/com/threerings/presents/peer/server/persist/NodeRecord.java @@ -55,6 +55,10 @@ public class NodeRecord extends PersistentRecord * object in a way that will result in a change to its SQL counterpart. */ public static final int SCHEMA_VERSION = 3; + /** Allow configuration of the use of the public hostname when in different regions. */ + public static final boolean ALWAYS_CONNECT_INTERNAL = Boolean.getBoolean( + "com.threerings.presents.peer.alwaysConnectInternal"); + /** The unique name assigned to this node. */ @Id @Column(name="NODE_NAME", length=64) @@ -112,7 +116,9 @@ public class NodeRecord extends PersistentRecord */ public String getPeerHostName (String region) { - return Objects.equal(this.region, region) ? hostName : publicHostName; + return (ALWAYS_CONNECT_ON_INTERNAL || Objects.equal(this.region, region)) + ? hostName + : publicHostName; } @Override