This is an automated email from the ASF dual-hosted git repository.
zrhoffman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficcontrol.git
The following commit(s) were added to refs/heads/master by this push:
new 4808c817fb Traffic Router: Set "minimum" for SOA records to a custom
value defined by a parameter (#7808)
4808c817fb is described below
commit 4808c817fbe9be87ff1cf426dfd22d8d5bf54391
Author: Srijeet Chatterjee <[email protected]>
AuthorDate: Tue Sep 26 11:02:42 2023 -0600
Traffic Router: Set "minimum" for SOA records to a custom value defined by
a parameter (#7808)
* initial commit
* set param to dns neg ttl
* adding changelog
* change param name
* fix tests
* modify changelog
* fix pmd
* code review
---
CHANGELOG.md | 1 +
docs/source/admin/traffic_router.rst | 2 -
.../traffic_router/core/dns/NameServer.java | 27 +-
.../traffic_router/core/dns/ZoneManager.java | 27 +
.../src/main/webapp/WEB-INF/applicationContext.xml | 1 -
.../traffic_router/core/dns/NameServerTest.java | 6 -
.../core/dns/ZoneManagerUnitTest.java | 10 +
.../core/src/test/resources/publish/CrConfig5.json | 1963 ++++++++++++++++++++
8 files changed, 2006 insertions(+), 31 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b715fd5c04..8397a7b1eb 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -187,6 +187,7 @@ The format is based on [Keep a
Changelog](http://keepachangelog.com/en/1.0.0/).
- [#7817](https://github.com/apache/trafficcontrol/pull/7817) *Traffic Control
Cache Config (t3c)* fixed issue that would cause null ptr panic on client
fallback.
### Removed
+- [#7808](https://github.com/apache/trafficcontrol/pull/7808) *Traffic
Router*: Set SOA `minimum` field to a custom value defined in the
`tld.soa.minimum` param, and remove the previously added
`dns.negative.caching.ttl` property.
- [#7804](https://github.com/apache/trafficcontrol/pull/7804) Removed unneeded
V5 client methods for `deliveryServiceRequiredcapabilities`.
- [#7271](https://github.com/apache/trafficcontrol/pull/7271) Removed
components in `infrastructre/docker/`, not in use as cdn-in-a-box performs the
same functionality.
- [#7271](https://github.com/apache/trafficcontrol/pull/7271) Removed
`misc/jira_github_issue_import.py`, the project does not use JIRA.
diff --git a/docs/source/admin/traffic_router.rst
b/docs/source/admin/traffic_router.rst
index 8f888b3043..3d6aeb16f3 100644
--- a/docs/source/admin/traffic_router.rst
+++ b/docs/source/admin/traffic_router.rst
@@ -128,8 +128,6 @@ For the most part, the configuration files and
:term:`Parameters` used by Traffi
| |
| To disable the queue, set to 0, or to allow an unlimited sized queue, set to
-1. | |
|
+-------------------------------------------+----------------------------------------------------------------------------------+----------------------------------------------------+
| | dns.zones.dir
| Path to automatically generated zone files for reference
| ``/opt/traffic_router/var/auto-zones`` |
- |
+-------------------------------------------+----------------------------------------------------------------------------------+----------------------------------------------------+
- | | dns.negative.caching.ttl
| Value (in seconds) to set as the ``minimum`` for NXDOMAIN and NXRRSET
responses | ``900`` |
+----------------------------+-------------------------------------------+----------------------------------------------------------------------------------+----------------------------------------------------+
| traffic_ops.properties | traffic_ops.username
| Username with which to access the :ref:`to-api`
| ``admin`` |
| |
| (must have the ``admin`` :term:`Role`)
| |
diff --git
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/NameServer.java
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/NameServer.java
index 65e029367d..91c6fa5cf9 100644
---
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/NameServer.java
+++
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/NameServer.java
@@ -42,7 +42,6 @@ import
org.apache.traffic_control.traffic_router.core.router.TrafficRouterManage
@SuppressWarnings("PMD.CyclomaticComplexity")
public class NameServer {
- private static long negativeCachingTTL = 0L;
private static final int MAX_SUPPORTED_EDNS_VERS = 0;
private static final int MAX_ITERATIONS = 6;
private static final int NUM_SECTIONS = 4;
@@ -329,20 +328,12 @@ public class NameServer {
if (record instanceof SOARecord) {
final SOARecord soa = (SOARecord) record;
- // Set the "minimum" attribute to be the
maximum of the current minimum value and 900 (seconds)
- // This is done to increase the negative
caching TTL, so as to maximize the time interval between
- // successive NXDOMAIN or NXRRSET responses.
- final long minimum = Math.max(soa.getMinimum(),
negativeCachingTTL);
- final long ttl;
// the value of the minimum field is less than
the actual TTL; adjust
- if (minimum != 0 || soa.getTTL() > minimum) {
- ttl = minimum;
- } else {
- ttl = soa.getTTL();
- }
- record = new SOARecord(soa.getName(),
DClass.IN, ttl, soa.getHost(), soa.getAdmin(),
- soa.getSerial(),
soa.getRefresh(), soa.getRetry(), soa.getExpire(),
- minimum);
+ if (soa.getMinimum() != 0 || soa.getTTL() >
soa.getMinimum()) {
+ record = new SOARecord(soa.getName(),
DClass.IN, soa.getMinimum(), soa.getHost(), soa.getAdmin(),
+ soa.getSerial(),
soa.getRefresh(), soa.getRetry(), soa.getExpire(),
+ soa.getMinimum());
+ } // else use the unmodified record
}
rrset.addRR(record);
@@ -442,14 +433,6 @@ public class NameServer {
this.trafficRouterManager = trafficRouterManager;
}
- public long getNegativeCachingTTL() {
- return negativeCachingTTL;
- }
-
- public void setNegativeCachingTTL(final long negativeCachingTTL) {
- this.negativeCachingTTL = negativeCachingTTL;
- }
-
public void destroy() {
/*
* Yes, this is odd. We need to call destroy on ZoneManager,
but it's static, so
diff --git
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/ZoneManager.java
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/ZoneManager.java
index 17cda2e957..a4ba655cd0 100644
---
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/ZoneManager.java
+++
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/ZoneManager.java
@@ -101,6 +101,7 @@ import
com.google.common.util.concurrent.ListenableFutureTask;
public class ZoneManager extends Resolver {
private static final Logger LOGGER =
LogManager.getLogger(ZoneManager.class);
+ private static long negativeCachingTTL = 0L;
private final TrafficRouter trafficRouter;
private static LoadingCache<ZoneKey, Zone> dynamicZoneCache = null;
private static LoadingCache<ZoneKey, Zone> zoneCache = null;
@@ -155,6 +156,20 @@ public class ZoneManager extends Resolver {
ZoneManager.signatureManager = sm;
}
+ public static void setNegativeCachingTTL(final JsonNode config) {
+ JsonNode node = null;
+ try {
+ node =
JsonUtils.getJsonNode(JsonUtils.getJsonNode(config, "config"), "soa");
+ } catch (JsonUtilsException e) {
+ LOGGER.warn("Couldn't find a JSON node for config or
soa; continuing by setting the minimum value to 900", e);
+ } finally {
+ negativeCachingTTL = JsonUtils.optLong(node, "minimum",
900L);
+ }
+ }
+ public static long getNegativeCachingTTL() {
+ return negativeCachingTTL;
+ }
+
@SuppressWarnings({"PMD.CyclomaticComplexity", "PMD.NPathComplexity"})
protected static void initZoneCache(final TrafficRouter tr) {
synchronized(ZoneManager.class) {
@@ -172,6 +187,7 @@ public class ZoneManager extends Resolver {
final int maintenanceInterval =
JsonUtils.optInt(config, "zonemanager.cache.maintenance.interval", 300); //
default 5 minutes
final int initTimeout = JsonUtils.optInt(config,
"zonemanager.init.timeout", 10);
+ setNegativeCachingTTL(config);
final LoadingCache<ZoneKey, Zone> dzc =
createZoneCache(ZoneCacheType.DYNAMIC, getDynamicZoneCacheSpec(config,
poolSize));
final LoadingCache<ZoneKey, Zone> zc =
createZoneCache(ZoneCacheType.STATIC);
@@ -377,6 +393,17 @@ public class ZoneManager extends Resolver {
LOGGER.debug("Attempting to load " + zoneKey.getName());
final Name name = zoneKey.getName();
List<Record> records = zoneKey.getRecords();
+ // For SOA records, set the "minimum" to the value set in the
tld.soa.minimum parameter in
+ // CRConfig.json.
+ for (int i=0; i < records.size(); i++) {
+ if (records.get(i).getType() == Type.SOA) {
+ SOARecord soa = (SOARecord)records.get(i);
+ soa = new SOARecord(soa.getName(),
soa.getDClass(), soa.getTTL(), soa.getHost(), soa.getAdmin(),
+ soa.getSerial(),
soa.getRefresh(), soa.getRetry(), soa.getExpire(), getNegativeCachingTTL());
+ records.set(i, soa);
+ break;
+ }
+ }
zoneKey.updateTimestamp();
if (zoneKey instanceof SignedZoneKey) {
diff --git a/traffic_router/core/src/main/webapp/WEB-INF/applicationContext.xml
b/traffic_router/core/src/main/webapp/WEB-INF/applicationContext.xml
index 1cb48e73d1..f478724088 100644
--- a/traffic_router/core/src/main/webapp/WEB-INF/applicationContext.xml
+++ b/traffic_router/core/src/main/webapp/WEB-INF/applicationContext.xml
@@ -267,7 +267,6 @@
<bean id="NameServer"
class="org.apache.traffic_control.traffic_router.core.dns.NameServer">
<property name="trafficRouterManager"
ref="trafficRouterManager" />
- <property name="negativeCachingTTL"
value="$[dns.negative.caching.ttl:900]" />
</bean>
<bean id="UDPBlockingQueue"
class="java.util.concurrent.LinkedBlockingQueue" />
diff --git
a/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/dns/NameServerTest.java
b/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/dns/NameServerTest.java
index 627052139d..95e3216b88 100644
---
a/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/dns/NameServerTest.java
+++
b/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/dns/NameServerTest.java
@@ -82,12 +82,6 @@ public class NameServerTest {
ns = new NSRecord(m_an, DClass.IN, 12345L, m_an);
}
- @Test
- public void TestNegativeCachingTTLGetterAndSetter() throws Exception {
- nameServer.setNegativeCachingTTL(900L);
- assertThat(nameServer.getNegativeCachingTTL(), equalTo(900L));
- }
-
@Test
public void TestARecordQueryWithClientSubnetOption() throws Exception {
diff --git
a/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/dns/ZoneManagerUnitTest.java
b/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/dns/ZoneManagerUnitTest.java
index a15e686568..30e09db522 100644
---
a/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/dns/ZoneManagerUnitTest.java
+++
b/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/dns/ZoneManagerUnitTest.java
@@ -54,6 +54,7 @@ import org.xbill.DNS.Zone;
import org.xbill.DNS.NSRecord;
import org.xbill.DNS.CNAMERecord;
+import java.io.File;
import java.net.InetAddress;
import java.util.ArrayList;
import java.util.Arrays;
@@ -93,6 +94,15 @@ public class ZoneManagerUnitTest {
}
+ @Test
+ public void testNegativeCachingTTLGetterAndSetter() throws Exception {
+ final File file = new
File("src/test/resources/publish/CrConfig5.json");
+ final ObjectMapper mapper = new ObjectMapper();
+ final JsonNode jo = mapper.readTree(file);
+ zoneManager.setNegativeCachingTTL(jo);
+ assertThat(zoneManager.getNegativeCachingTTL(), equalTo(1200L));
+ }
+
@Test
public void testGetLocalTRHostnameUsesSingleTRHostname() throws Exception {
JsonNode trs = new ObjectMapper().readTree("{\"tr-01\": {}}");
diff --git a/traffic_router/core/src/test/resources/publish/CrConfig5.json
b/traffic_router/core/src/test/resources/publish/CrConfig5.json
new file mode 100644
index 0000000000..277d643eec
--- /dev/null
+++ b/traffic_router/core/src/test/resources/publish/CrConfig5.json
@@ -0,0 +1,1963 @@
+{
+ "contentServers": {
+ "edge-cache-000": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-001.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.0.100",
+ "ip6": "2001:dead:beef:0:C::10/64",
+ "cacheGroup": "cache-group-0",
+ "locationId": "location-0",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "https-only-test":
["edge-cache-001.https-only-test.thecdn.example.com"],
+ "http-only-test": ["edge-cache-001.http-only-test.thecdn.example.com"],
+ "dns-test": ["edge-cache-001.dns-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-001": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-001.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.0.101",
+ "ip6": "2001:dead:beef:0:C::11/64",
+ "cacheGroup": "cache-group-0",
+ "locationId": "location-0",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "https-only-test":
["edge-cache-001.https-only-test.thecdn.example.com"],
+ "http-only-test": ["edge-cache-001.http-only-test.thecdn.example.com"],
+ "dns-test": ["edge-cache-001.dns-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-002": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-002.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.0.102",
+ "ip6": "2001:dead:beef:0:C::12/64",
+ "cacheGroup": "cache-group-0",
+ "locationId": "location-0",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "https-only-test":
["edge-cache-002.https-only-test.thecdn.example.com"],
+ "http-only-test": ["edge-cache-001.http-only-test.thecdn.example.com"],
+ "dns-test": ["edge-cache-001.dns-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-010": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-010.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.1.100",
+ "ip6": "2001:dead:beef:1:C::1A/64",
+ "cacheGroup": "cache-group-1",
+ "locationId": "location-1",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-010.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-010.steering-target-2.thecdn.example.com"],
+ "steering-target-1": [
+ "edge-cache-010.steering-target-1.thecdn.example.com",
+ "edge-cache-010.steering-target-1-b-b.thecdn.example.com"
+ ]
+ }
+ },
+ "edge-cache-011": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-011.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.1.101",
+ "ip6": "2001:dead:beef:1:C::11/64",
+ "cacheGroup": "cache-group-1",
+ "locationId": "location-1",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-011.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-011.steering-target-2.thecdn.example.com"],
+ "steering-target-1": [
+ "edge-cache-011.steering-target-1.thecdn.example.com",
+ "edge-cache-011.steering-target-1-b-b.thecdn.example.com"
+ ]
+ }
+ },
+ "edge-cache-012": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-012.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.1.102",
+ "ip6": "2001:dead:beef:1:C::12/64",
+ "cacheGroup": "cache-group-1",
+ "locationId": "location-1",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-012.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-012.steering-target-2.thecdn.example.com"],
+ "steering-target-1": [
+ "edge-cache-012.steering-target-1.thecdn.example.com",
+ "edge-cache-012.steering-target-1-b-b.thecdn.example.com"
+ ]
+ }
+ },
+ "edge-cache-020": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-020.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.2.100",
+ "ip6": "2001:dead:beef:2:C::1A/64",
+ "cacheGroup": "cache-group-2",
+ "locationId": "location-2",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-2":
["edge-cache-020.steering-test-2.thecdn.example.com"],
+ "client-steering-target-1":
["edge-cache-020.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-020.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-020.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-020.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-020.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-020.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-021": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-021.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.2.101",
+ "ip6": "2001:dead:beef:2:C::11/64",
+ "cacheGroup": "cache-group-2",
+ "locationId": "location-2",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-2":
["edge-cache-021.steering-test-2.thecdn.example.com"],
+ "client-steering-target-1":
["edge-cache-021.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-021.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-021.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-021.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-021.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-021.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-022": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-022.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.2.102",
+ "ip6": "2001:dead:beef:2:C::12/64",
+ "cacheGroup": "cache-group-2",
+ "locationId": "location-2",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-2":
["edge-cache-022.steering-test-2.thecdn.example.com"],
+ "client-steering-target-1":
["edge-cache-022.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-022.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-022.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-022.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-022.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-022.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-030": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-030.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.3.100",
+ "ip6": "2001:dead:beef:3:C::1A/64",
+ "cacheGroup": "cache-group-3",
+ "locationId": "location-3",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-030.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-030.steering-target-2.thecdn.example.com"],
+ "steering-test-2":
["edge-cache-030.steering-test-2.thecdn.example.com"],
+ "steering-target-1": [
+ "edge-cache-030.steering-target-1.thecdn.example.com",
+ "edge-cache-030.steering-target-1-b-b.thecdn.example.com"
+ ],
+ "client-steering-target-1":
["edge-cache-030.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-030.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-030.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-030.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-030.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-030.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-031": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-031.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.3.101",
+ "ip6": "2001:dead:beef:3:C::11/64",
+ "cacheGroup": "cache-group-3",
+ "locationId": "location-3",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-031.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-031.steering-target-2.thecdn.example.com"],
+ "steering-test-2":
["edge-cache-031.steering-test-2.thecdn.example.com"],
+ "steering-target-1": [
+ "edge-cache-031.steering-target-1.thecdn.example.com",
+ "edge-cache-031.steering-target-1-b-b.thecdn.example.com"
+ ],
+ "client-steering-target-1":
["edge-cache-031.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-031.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-031.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-031.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-031.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-031.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-032": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-032.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.3.102",
+ "ip6": "2001:dead:beef:3:C::12/64",
+ "cacheGroup": "cache-group-3",
+ "locationId": "location-3",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-032.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-032.steering-target-2.thecdn.example.com"],
+ "steering-test-2":
["edge-cache-032.steering-test-2.thecdn.example.com"],
+ "steering-target-1": [
+ "edge-cache-032.steering-target-1.thecdn.example.com",
+ "edge-cache-032.steering-target-1-b-b.thecdn.example.com"
+ ],
+ "client-steering-target-1":
["edge-cache-032.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-032.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-032.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-032.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-032.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-032.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-040": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-040.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.4.100",
+ "ip6": "2001:dead:beef:4:C::1A/64",
+ "cacheGroup": "cache-group-4",
+ "locationId": "location-4",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-040.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-040.steering-target-2.thecdn.example.com"],
+ "steering-test-2":
["edge-cache-040.steering-test-2.thecdn.example.com"],
+ "federation-test": [
+ "edge.federation-test.thecdn.example.com",
+ "edge.dee-ehs-06.thecdn.example.com"
+ ],
+ "steering-target-1": [
+ "edge-cache-040.steering-target-1.thecdn.example.com",
+ "edge-cache-040.steering-target-1-b-b.thecdn.example.com"
+ ],
+ "client-steering-target-1":
["edge-cache-040.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-040.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-040.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-040.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-040.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-040.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-041": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-041.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.4.101",
+ "ip6": "2001:dead:beef:4:C::11/64",
+ "cacheGroup": "cache-group-4",
+ "locationId": "location-4",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-041.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-041.steering-target-2.thecdn.example.com"],
+ "steering-test-2":
["edge-cache-041.steering-test-2.thecdn.example.com"],
+ "federation-test": [
+ "edge.federation-test.thecdn.example.com",
+ "edge.dee-ehs-06.thecdn.example.com"
+ ],
+ "steering-target-1": [
+ "edge-cache-041.steering-target-1.thecdn.example.com",
+ "edge-cache-041.steering-target-1-b-b.thecdn.example.com"
+ ],
+ "client-steering-target-1":
["edge-cache-041.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-041.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-041.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-041.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-041.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-041.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-042": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-042.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.4.102",
+ "ip6": "2001:dead:beef:4:C::12/64",
+ "cacheGroup": "cache-group-4",
+ "locationId": "location-4",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "steering-test-1":
["edge-cache-042.steering-test-1.thecdn.example.com"],
+ "steering-target-2":
["edge-cache-042.steering-target-2.thecdn.example.com"],
+ "steering-test-2":
["edge-cache-042.steering-test-2.thecdn.example.com"],
+ "federation-test": [
+ "edge.federation-test.thecdn.example.com",
+ "edge.dee-ehs-06.thecdn.example.com"
+ ],
+ "steering-target-1": [
+ "edge-cache-042.steering-target-1.thecdn.example.com",
+ "edge-cache-042.steering-target-1-b-b.thecdn.example.com"
+ ],
+ "client-steering-target-1":
["edge-cache-042.client-steering-target-1.thecdn.example.com"],
+ "client-steering-target-2":
["edge-cache-042.client-steering-target-2.thecdn.example.com"],
+ "client-steering-target-3":
["edge-cache-042.client-steering-target-3.thecdn.example.com"],
+ "client-steering-target-4":
["edge-cache-042.client-steering-target-4.thecdn.example.com"],
+ "steering-target-4":
["edge-cache-042.steering-target-4.thecdn.example.com"],
+ "steering-target-3":
["edge-cache-042.steering-target-3.thecdn.example.com"]
+ }
+ },
+ "edge-cache-070": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-070.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.7.100",
+ "ip6": "2001:dead:beef:7:C::1A/64",
+ "cacheGroup": "cache-group-7",
+ "locationId": "location-7",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "http-to-https-test":
["edge-cache-070.http-to-https-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-071": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-071.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.7.101",
+ "ip6": "2001:dead:beef:7:C::11/64",
+ "cacheGroup": "cache-group-7",
+ "locationId": "location-7",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "http-to-https-test":
["edge-cache-071.http-to-https-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-072": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-072.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.7.102",
+ "ip6": "2001:dead:beef:7:C::12/64",
+ "cacheGroup": "cache-group-7",
+ "locationId": "location-7",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "http-to-https-test": [
"edge-cache-072.http-to-https-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-080": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-080.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.8.100",
+ "ip6": "2001:dead:beef:8:C::1A/64",
+ "cacheGroup": "cache-group-8",
+ "locationId": "location-8",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "http-and-https-test":
["edge-cache-080.http-and-https-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-081": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-081.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.8.101",
+ "ip6": "2001:dead:beef:8:C::11/64",
+ "cacheGroup": "cache-group-8",
+ "locationId": "location-8",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "http-and-https-test":
["edge-cache-081.http-and-https-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-082": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-082.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.8.102",
+ "ip6": "2001:dead:beef:8:C::12/64",
+ "cacheGroup": "cache-group-8",
+ "locationId": "location-8",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "http-and-https-test": [
"edge-cache-082.http-and-https-test.thecdn.example.com"]
+ }
+ },
+ "edge-cache-csd-1": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-csd-1.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.8.201",
+ "ip6": "2001:dead:beef:8:C::81/64",
+ "cacheGroup": "cache-group-csd",
+ "locationId": "location-csd",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "csd-target-1": ["edge-cache-csd-1.csd-target-1.thecdn.example.com"],
+ "csd-target-2": ["edge-cache-csd-1.csd-target-2.thecdn.example.com"],
+ "csd-target-3": ["edge-cache-csd-1.csd-target-3.thecdn.example.com"],
+ "csd-target-4": ["edge-cache-csd-1.csd-target-4.thecdn.example.com"],
+ "csd-target-5": ["edge-cache-csd-1.csd-target-5.thecdn.example.com"]
+ }
+ },
+ "edge-cache-csd-2": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-csd-2.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.8.202",
+ "ip6": "2001:dead:beef:8:C::82/64",
+ "cacheGroup": "cache-group-csd",
+ "locationId": "location-csd",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "csd-target-1": ["edge-cache-csd-2.csd-target-1.thecdn.example.com"],
+ "csd-target-2": ["edge-cache-csd-2.csd-target-2.thecdn.example.com"],
+ "csd-target-3": ["edge-cache-csd-2.csd-target-3.thecdn.example.com"],
+ "csd-target-4": ["edge-cache-csd-2.csd-target-4.thecdn.example.com"],
+ "csd-target-5": ["edge-cache-csd-2.csd-target-5.thecdn.example.com"]
+ }
+ },
+ "edge-cache-csd-3": {
+ "type": "EDGE",
+ "profile": "EDGE_STATIC",
+ "status": "REPORTED",
+ "hashId": "[email protected]",
+ "fqdn": "edge-cache-csd-3.thecdn.example.com",
+ "port": "8090",
+ "ip": "12.34.8.203",
+ "ip6": "2001:dead:beef:8:C::83/64",
+ "cacheGroup": "cache-group-csd",
+ "locationId": "location-csd",
+ "hashCount": 1000,
+ "interfaceName": "bond0",
+ "deliveryServices": {
+ "csd-target-1": ["edge-cache-csd-3.csd-target-1.thecdn.example.com"],
+ "csd-target-2": ["edge-cache-csd-3.csd-target-2.thecdn.example.com"],
+ "csd-target-3": ["edge-cache-csd-3.csd-target-3.thecdn.example.com"],
+ "csd-target-4": ["edge-cache-csd-3.csd-target-4.thecdn.example.com"],
+ "csd-target-5": ["edge-cache-csd-3.csd-target-5.thecdn.example.com"]
+ }
+ }
+ },
+ "contentRouters": {
+ "testing-tr-02": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "dc-chicago",
+ "ip6": "2001:dead:beef:123:1::2",
+ "api.port": "3333",
+ "fqdn": "testing-tr-02.cdn.example.com",
+ "ip": "12.34.20.2",
+ "profile": "ROUTER_TEST"
+ },
+ "testing-tr-01": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "dc-chicago",
+ "ip6": "2001:dead:beef:123:1::1",
+ "api.port": "3333",
+ "fqdn": "testing-tr-01.cdn.example.com",
+ "ip": "12.34.20.1",
+ "profile": "ROUTER_TEST"
+ },
+ "edge-testing-tr-08": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-9",
+ "ip6": "2001:dead:beef:124:1::8",
+ "api.port": "3333",
+ "fqdn": "edge-testing-tr-08.cdn.example.com",
+ "ip": "12.34.21.8",
+ "profile": "ROUTER_TEST"
+ },
+
+ "edge-testing-tr-06": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-9",
+ "ip6": "2001:dead:beef:124:1::6",
+ "api.port": "3333",
+ "fqdn": "edge-testing-tr-06.cdn.example.com",
+ "ip": "12.34.21.6",
+ "profile": "ROUTER_TEST"
+ },
+
+ "edge-testing-tr-07": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-9",
+ "ip6": "2001:dead:beef:124:1::7",
+ "api.port": "3333",
+ "fqdn": "edge-testing-tr-07.cdn.example.com",
+ "ip": "12.34.21.7",
+ "profile": "ROUTER_TEST"
+ },
+
+ "edge-testing-tr-01": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-0",
+ "ip6": "2001:dead:beef:124:1::1",
+ "api.port": "3333",
+ "fqdn": "edge-testing-tr-01.cdn.example.com",
+ "ip": "12.34.21.1",
+ "profile": "ROUTER_TEST"
+ },
+
+ "edge-testing-tr-03": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-0",
+ "ip6": "2001:dead:beef:124:1::3",
+ "api.port": "3333",
+ "fqdn": "edge-testing-tr-03.cdn.example.com",
+ "ip": "12.34.21.3",
+ "profile": "ROUTER_TEST"
+ },
+ "edge-testing-tr-04": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-0",
+ "ip6": "2001:dead:beef:124:1::4",
+ "api.port": "3333",
+ "fqdn": "edge-testing-tr-04.cdn.example.com",
+ "ip": "12.34.21.4",
+ "profile": "ROUTER_TEST"
+ },
+ "edge-testing-tr-02": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-0",
+ "ip6": "2001:dead:beef:124:1::2",
+ "api.port": "3333",
+ "fqdn": "edge-testing-tr-02.cdn.example.com",
+ "ip": "12.34.21.2",
+ "profile": "ROUTER_TEST"
+ },
+ "edge-testing-tr-05": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-9",
+ "ip6": "2001:dead:beef:124:1::5",
+ "api.port": "3333",
+ "fqdn": "edge-testing-tr-05.cdn.example.com",
+ "ip": "12.34.21.5",
+ "profile": "ROUTER_TEST"
+ }
+ },
+ "monitors": {
+ "testing-tmonitor-02": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-2",
+ "ip6": "2001:dead:beef:123:1::6/64",
+ "fqdn": "testing-tmonitor-02.cdn.example.com",
+ "ip": "12.34.1.200",
+ "profile": "MONITOR_TEST"
+ },
+ "testing-tmonitor-01": {
+ "port": "80",
+ "status": "ONLINE",
+ "location": "location-4",
+ "ip6": "2001:dead:beef:123:1::5/64",
+ "fqdn": "testing-tmonitor-01.cdn.example.com",
+ "ip": "12.34.1.201",
+ "profile": "MONITOR_TEST"
+ }
+ },
+ "deliveryServices": {
+ "https-only-test": {
+ "sslEnabled": "true",
+ "consistentHashRegex": "/.*?(/.*?/).*?(.m3u8)",
+ "protocol": {
+ "acceptHttp" : "false",
+ "acceptHttps" : "true",
+ "redirectToHttps" : "false"
+ },
+ "domains": ["https-only-test.thecdn.example.com"],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false",
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "regionalGeoBlocking": "false",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.https-only-test\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService"
+ },
+ "client-steering-test-1": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": ["X-MoneyTrace"],
+ "domains": ["client-steering-test-1.thecdn.example.com"],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "ttl": "3600",
+ "ip6RoutingEnabled": "true",
+ "bypassDestination": {"HTTP": {
+ "port": "80",
+ "fqdn": "client-steering-test-1.overflowcdn.net"
+ }},
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "regionalGeoBlocking": "false",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.client-steering-test-1\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "staticDnsEntries": []
+ },
+ "client-steering-test-2": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": ["X-MoneyTrace"],
+ "domains": ["client-steering-test-2.thecdn.example.com"],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "ttl": "3600",
+ "ip6RoutingEnabled": "true",
+ "bypassDestination": {"HTTP": {
+ "port": "80",
+ "fqdn": "client-steering-test-2.overflowcdn.net"
+ }},
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "regionalGeoBlocking": "false",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.client-steering-test-2\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "staticDnsEntries": []
+ },
+ "client-steering-diversity-test": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": ["X-MoneyTrace"],
+ "domains": ["client-steering-diversity-test.thecdn.example.com"],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "ttl": "3600",
+ "ip6RoutingEnabled": "true",
+ "bypassDestination": {"HTTP": {
+ "port": "80",
+ "fqdn": "client-steering-diversity-test.overflowcdn.net"
+ }},
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "coverageZoneOnly": "false",
+ "routingName": "cdn",
+ "regionalGeoBlocking": "false",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.client-steering-diversity-test\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "staticDnsEntries": []
+ },
+ "csd-target-1": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "deepCachingType": "ALWAYS",
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["csd-target-1.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "cdn",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.csd-target-1\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "csd-target-2": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "deepCachingType": "ALWAYS",
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["csd-target-2.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "cdn",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.csd-target-2\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "csd-target-3": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "deepCachingType": "ALWAYS",
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["csd-target-3.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "cdn",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.csd-target-3\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "csd-target-4": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["csd-target-4.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "cdn",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.csd-target-4\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "csd-target-5": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["csd-target-5.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "cdn",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.csd-target-5\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "client-steering-target-1": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["client-steering-target-1.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.client-steering-target-1\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "client-steering-target-2": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["client-steering-target-2.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.client-steering-target-2\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "client-steering-target-3": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["client-steering-target-3.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.client-steering-target-3\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "client-steering-target-4": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["client-steering-target-4.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.client-steering-target-4\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "steering-test-1": {
+ "sslEnabled": "false",
+ "consistentHashRegex": "/.*?(/.*?/).*?(.m3u8)",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": ["X-MoneyTrace"],
+ "domains": ["steering-test-1.thecdn.example.com"],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "ttl": "3600",
+ "ip6RoutingEnabled": "true",
+ "bypassDestination": {"HTTP": {
+ "port": "80",
+ "fqdn": "steering-test-1.overflowcdn.net"
+ }},
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "regionalGeoBlocking": "false",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.steering-test-1\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "staticDnsEntries": [
+ {
+ "name": "mm",
+ "value": "10.20.30.42",
+ "type": "A",
+ "ttl": "7200"
+ },
+ {
+ "name": "mm-cname",
+ "value": "mm.steering-test-1.thecdn.example.com.",
+ "type": "CNAME",
+ "ttl": "7200"
+ }
+ ]
+ },
+ "steering-target-2": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "bypassDestination": {"HTTP": {
+ "port": "80",
+ "fqdn": "steering-target-2.overflowcdn.net"
+ }},
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["steering-target-2.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.steering-target-2\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "steering-test-2": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "dispersion": {
+ "limit": 2,
+ "shuffled": "true"
+ },
+ "domains": ["test.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.test\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "responseHeaders": {
+ "Foo": "bar",
+ "Yes": "indeed"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "true"
+ },
+ "federation-test": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "bypassDestination": {"DNS": {"ttl": "30"}},
+ "domains": ["federation-test.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "edge",
+ "matchsets": [
+ {
+ "protocol": "DNS",
+ "matchlist": [{
+ "regex": ".*\\.federation-test\\..*",
+ "match-type": "HOST"
+ }]
+ },
+ {
+ "protocol": "DNS",
+ "matchlist": [{
+ "regex": ".*\\.dee-ehs-06\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "ttls": {
+ "AAAA": "30",
+ "SOA": "7200",
+ "A": "30",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "30",
+ "staticDnsEntries": [{
+ "name": "mm",
+ "value": "foo.bar.baz.net.",
+ "type": "CNAME",
+ "ttl": "30"
+ }],
+ "maxDnsIpsForLocation": "0",
+ "ip6RoutingEnabled": "true"
+ },
+ "steering-target-1": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "requestHeaders": [
+ "User-Agent",
+ "MyHeader",
+ "Date"
+ ],
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["steering-target-1.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.steering-target-1\\..*",
+ "match-type": "HOST"
+ }]
+ },
+ {
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.steering-target-1-b-b\\..*",
+ "match-type": "HOST"
+ }]
+ }
+ ],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "3 0",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "steering-target-4": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "bypassDestination": {"HTTP": {
+ "port": "80",
+ "fqdn": "steering-target-4.overflowcdn.net"
+ }},
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["steering-target-4.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.steering-target-4\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "steering-target-3": {
+ "sslEnabled": "false",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "bypassDestination": {"HTTP": {
+ "port": "80",
+ "fqdn": "steering-target-3.overflowcdn.net"
+ }},
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "domains": ["steering-target-3.thecdn.example.com"],
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.steering-target-3\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "regionalGeoBlocking": "false",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "geoEnabled": [{"countryCode": "US"}],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false"
+ },
+ "http-and-https-test": {
+ "sslEnabled": "true",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "true",
+ "redirectToHttps" : "false"
+ },
+ "domains": ["http-and-https-test.thecdn.example.com"],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false",
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "regionalGeoBlocking": "false",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.http-and-https-test\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService"
+ },
+ "http-to-https-test": {
+ "sslEnabled": "true",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "true",
+ "redirectToHttps" : "true"
+ },
+ "domains": ["http-to-https-test.thecdn.example.com"],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "ttl": "3600",
+ "ip6RoutingEnabled": "false",
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "regionalGeoBlocking": "false",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.http-to-https-test\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService"
+ },
+ "http-only-test": {
+ "sslEnabled": "true",
+ "protocol": {
+ "acceptHttp" : "true",
+ "acceptHttps" : "false",
+ "redirectToHttps" : "false"
+ },
+ "domains": ["http-only-test.thecdn.example.com"],
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "NS": "3600"
+ },
+ "ttl": "3600",
+ "ip6RoutingEnabled": "true",
+ "dispersion": {
+ "limit": 1,
+ "shuffled": "true"
+ },
+ "coverageZoneOnly": "false",
+ "routingName": "tr",
+ "regionalGeoBlocking": "false",
+ "matchsets": [{
+ "protocol": "HTTP",
+ "matchlist": [{
+ "regex": ".*\\.http-only-test\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService"
+ },
+ "dns-test": {
+ "sslEnabled": "false",
+ "bypassDestination": {
+ "DNS": {
+ "ttl": "30",
+ "cname": "www.example.com"
+ }
+ },
+ "domains": [
+ "dns-test.thecdn.example.com"
+ ],
+ "coverageZoneOnly": "false",
+ "routingName": "edge",
+ "matchsets": [{
+ "protocol": "DNS",
+ "matchlist": [{
+ "regex": ".*\\.dns-test\\..*",
+ "match-type": "HOST"
+ }]
+ }],
+ "ttls": {
+ "AAAA": "30",
+ "SOA": "7200",
+ "A": "30",
+ "NS": "3600"
+ },
+ "missLocation": {
+ "long": "-87.627778",
+ "lat": "41.881944"
+ },
+ "soa": {
+ "expire": "604800",
+ "minimum": "30",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "geolocationProvider": "maxmindGeolocationService",
+ "ttl": "30",
+ "maxDnsIpsForLocation": "2",
+ "ip6RoutingEnabled": "false"
+ }
+ },
+ "stats": {
+ "tm_version": "1.5.0-3027.8d600a8e",
+ "CDN_name": "thecdn",
+ "tm_user": "admin1",
+ "date": 1465084800,
+ "tm_host": "localhost:8889"
+ },
+ "edgeLocations": {
+ "location-0": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -107.480250,
+ "latitude": 40.117800
+ },
+ "location-1": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -121.0,
+ "latitude": 49.0
+ },
+ "location-2": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -111.0,
+ "latitude": 49.0
+ },
+ "location-3": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -101.0,
+ "latitude": 49.0
+ },
+ "location-4": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -91.0,
+ "latitude": 49.0
+ },
+ "location-7": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -66.0,
+ "latitude": 36.0
+ },
+ "location-8": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -76.0,
+ "latitude": 36.0
+ },
+ "location-9": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -86.0,
+ "latitude": 36.0
+ },
+ "location-csd": {
+ "localizationMethods": ["CZ", "DEEP_CZ", "GEO"],
+ "longitude": -87.0,
+ "latitude": 37.0
+ }
+ },
+ "trafficRouterLocations": {
+ "location-0": {
+ "longitude": -84.0,
+ "latitude": 33.0
+ },
+ "location-9": {
+ "longitude": -87.0,
+ "latitude": 41.0
+ }
+ },
+ "config": {
+ "certificate.api.url":
"http://${toHostname}/api/5.0/cdns/name/${cdnName}/sslkeys",
+ "dnschallengemapping.polling.url":
"http://${toHostname}/api/5.0/dnsrecords/",
+ "dnschallengemapping.polling.interval": "600000",
+ "federationmapping.polling.url":
"http://${toHostname}/api/5.0/federations/all",
+ "federationmapping.polling.interval": "600000",
+ "steeringmapping.polling.url": "http://${toHostname}/api/5.0/steering",
+ "steeringmapping.polling.interval": "15000",
+ "weight": "1.0",
+ "requestHeaders": [
+ "Accept",
+ "Date"
+ ],
+ "thecdn.dnssec.inception": "1429649333",
+ "geolocation.polling.url":
"http://localhost:8889/geo/GeoLite2-City.mmdb.gz",
+ "geolocation.polling.interval": "86400000",
+ "ttls": {
+ "AAAA": "3600",
+ "SOA": "7200",
+ "A": "3600",
+ "DS": "60",
+ "NS": "3600"
+ },
+ "coveragezone.polling.interval": "86400000",
+ "regional_geoblock.polling.url.renamed":
"http://testing-tm-01.cdn.example.com/some/path",
+ "keystore.auth.url": "http://localhost:3000/api/5.0/user/login",
+ "neustar.polling.interval": "12800000",
+ "geolocation6.polling.interval": "86400000",
+ "domain_name": "thecdn.example.com",
+ "consistent.dns.routing": "false",
+ "soa": {
+ "expire": "604800",
+ "minimum": "1200",
+ "admin": "[email protected]",
+ "retry": "7200",
+ "refresh": "28800"
+ },
+ "coveragezone.polling.url": "http://localhost:8889/czf.json",
+ "deepcoveragezone.polling.url": "http://localhost:8889/dczmap.json",
+ "api.auth.url": "http://${toHostname}/api/5.0/user/login",
+ "certificates.polling.interval": "10000",
+ "dnssec.enabled": "false",
+ "edge.dns.routing": "true",
+ "edge.http.routing": "true"
+ }
+}