Getting Started Concepts The Things Stack Cloud The Things Stack Enterprise Integrations API Hardware
Get The Things Stack

Concepts

    Overview
  • Architecture
  • Features
  • Networking
  • Migrate to The Things Stack
  • Packet Broker
  • Server Addresses
  • Advanced Topics
  • Troubleshooting
  • The Things Stack Sandbox

Networking

The Things Stack uses a port per protocol, with a TLS counterpart when applicable. Ports can be shared by multiple services using the same protocol, i.e. gRPC services sharing management, data and events services.

Port Allocations

The following table lists the default ports used.

Purpose Protocol Authentication Port Port (TLS)
Gateway data Semtech Packet Forwarder None 1700 (UDP) N/A
Gateway data MQTT (legacy) API key, token 1881 8881
Gateway data MQTT API key, token 1882 8882
Application data, events MQTT API key, token 1883 8883
Management, data, events gRPC API key, token 1884 8884
Management HTTP API key, token 1885 8885
Backend Interfaces HTTP Custom 1886 8886
LoRa Basics™ Station LNS Web Sockets Auth Token, Custom 1887 8887
Tabs Hubs LNS Web Sockets Auth Token, Custom 1888 8888
The Things Industries Gateway Web Sockets mTLS NA 8889
LBS CUPS mTLS HTTP mTLS NA 8987

Service Discovery

The Things Stack supports discovering services using DNS SRV records. This is useful when dialing a cluster only by host name; the supported services and target host name and port are discovered using DNS.

To support service discovery for your The Things Stack cluster, configure DNS SRV records with the following services and protocols:

Protocol SRV Service SRV Protocol SRV Target
gRPC ttn-v3-is-grpc tcp Identity Server
gRPC ttn-v3-gs-grpc tcp Gateway Server
Semtech Packet Forwarder ttn-v3-gs-udp udp Gateway Server
MQTT (V2) ttn-v3-gs-mqttv2 tcp Gateway Server
MQTT ttn-v3-gs-mqtt tcp Gateway Server
Basic Station LNS ttn-v3-gs-basicstationlns tcp Gateway Server
gRPC ttn-v3-ns-grpc tcp Network Server
gRPC ttn-v3-as-grpc tcp Application Server
MQTT ttn-v3-as-mqtt tcp Application Server
gRPC ttn-v3-js-grpc tcp Join Server
gRPC ttn-v3-dtc-grpc tcp Device Template Converter
gRPC ttn-v3-dcs-grpc tcp Device Claiming Server
gRPC ttn-v3-gcs-grpc tcp Gateway Configuration Server
gRPC ttn-v3-qrg-grpc tcp QR Code Generator

For port, use the ports as defined above, or any custom port that you configured for your The Things Stack cluster.

Example: Link External Application Server

If you want to link an Application Server outside your cluster on the Network Server, you can configure the DNS SRV record for the Network Server as follows:

_ttn-v3-ns-grpc._tcp.example.com. 86400 IN SRV 0 5 8884 ns.example.com.

When you configure the application link with example.com as Network Server address and enable TLS, the Application Server will discover the Network Server on ns.example.com and port 8884.

← Network Operations Center Migrate to The Things Stack →

On this page

  • Port Allocations
  • Service Discovery

Sections

Getting Started

Concepts

The Things Stack Cloud

The Things Stack Enterprise

Integrations

API

Hardware

Sitemap

View our Sitemap

Contributing

GitHub

About Us

The Things Industries