element-hq / element-hq/synapse

Multi-domain support

Open
#8,885 2 comments 32 reactions 0 assignees View on GitHub
A-Email-Push T-Enhancement
Dominant language
Python
Stars
4.6k
Forks
600
Avg merge
5d 22h
Merged PRs (30d)
51

Description

This issue has been migrated from [#8885](https://github.com/matrix-org/synapse/issues/8885).

---

**Description:**
As a mail server can be configured to be the MTA for multiple email domains, so should Synapse be able to support being the homeserver for multiple domains.

I currently run two synapse servers on two separate domains in docker containers, but on the same host (using separate docker container stacks). This leads to excessive configuration regarding additional networking, database storage with duplicate datasets, and federation across two synapse servers sitting directly next to each other. Ideally, synapse should be aware that the server handles homeserver duties for multiple domains, and skip excessive federation or data storage for things that would otherwise be federated across the network.

Additionally, it would be nice to have the ability (like in mail servers) to have "alias" functionality for vanity user accounts or domains (e.g. a publicly published matrix ID of `@mycoolusername:myworkdomain.net` would actually just send messages to and from the `@user:personaldomain.com` matrix ID).

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points; start by mapping Synapse's homeserver identity, federation, storage, and alias-related areas. Clarify the supported multi-domain and vanity-ID behavior with maintainers, then define tests showing which local traffic and data should avoid federation or duplication.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, python
Domain
backend, databases, distributed-systems, networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.