element-hq / element-hq/synapse
Multi-domain support
- 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
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