Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Info

This page is under development

Table of Contents
maxLevel1

...

Xfinity DNS (XDNS) is a feature that classifies DNS requests from connected user devices. The XDNS server will apply policy such as URL filtering based on the request classification. XBC-39 describes the Product requirements and RDKB-7792 is the corresponding RDKB ticket.

XDNS contains two functional components:

...

To create a token in the DNS response to identify this is a response of XDNS, we will create a CNAME RR for each blocked FQDN. For example: For each FQDN that is categorized for ", we will create a CNAME "redirect.xdns.xfinity.net." Hostname "redirect" represents the "action". Sub-domain "xdns.xfinity.net" is the sub-string that classifies the query is blocked. Here is the design overview:

Code Flow

XDNS Server Requirements

Thread Intel Server must provision a CNAME for each blocked FQDN. The CNAME RR is just a simple CNAME RR. DNS server will process it just like any CNAME. It doesn't understand the context.

...

This will leverage the Crystalball Batch Process architecture. The following is the high-level architecture diagram:

draw.io Diagram
diagramNameXDNS REPORT ENGINE REQUIREMENTS DIAG.drawio
revision1
Image Removed


DNS Cluster will mirror or packet capture all the DNS request and responses to the Kafka Cluster. For XDNS, the Producer process will filter DNS response that contains CNAME with "xdns.xfinity.net". This will help to reduce the number of messages to the Crystalball infrastructure.

...