1 files changed, 4 insertions, 1 deletions
diff --git a/synapse/http/federation/srv_resolver.py b/synapse/http/federation/srv_resolver.py
index de0e882b33..285baddeb7 100644
--- a/synapse/http/federation/srv_resolver.py
+++ b/synapse/http/federation/srv_resolver.py
@@ -22,7 +22,7 @@ import attr
from twisted.internet.error import ConnectError
from twisted.names import client, dns
-from twisted.names.error import DNSNameError, DomainError
+from twisted.names.error import DNSNameError, DNSNotImplementedError, DomainError
from synapse.logging.context import make_deferred_yieldable
@@ -145,6 +145,9 @@ class SrvResolver:
# TODO: cache this. We can get the SOA out of the exception, and use
# the negative-TTL value.
return []
+ except DNSNotImplementedError:
+ # For .onion homeservers this is unavailable, just fallback to host:8448
+ return []
except DomainError as e:
# We failed to resolve the name (other than a NameError)
# Try something in the cache, else rereaise
|