I go into a little more detail about the idea in the note below. But I would change what I said about relays signing all the content they send to clients. Instead, once per WSS connection, some sort of proof could be sent by the relay to the client to show it's the relay belonging to the public key that the client is using to track it.
Daniel A Cummings's avatar Daniel A Cummings
Hi, @fiatjaf. I have an idea for using Nostr's existing network architecture to allow for optionally DNS-free relays. It would ideally be applied to Nostr & Blossom. Relays could have their own Nostr pubkey which they would use to 1. Send a new, IP address location event type to Nostr relays containing their current IPv6 or IPv4 address & port number, & 2. Sign the data they send to clients so that clients can verify that they're receiving the data from the expected relays. With this setup, for a client to find their DNS-free relays, they would 1. Attempt to connect to their last known IP locations 2. If this fails, they would query all relays they know the location of for the most recent location broadcasts they have 3. Reattempt to connect using the new location data This way, a relay could run without a domain name of any kind on a non-static IP address that could change at any time. As soon as the relay detects that its IP address has changed, it could broadcast its new location so it could be quickly connected to again. What are your thoughts?
View quoted note →

Replies (2)

It's great that that option is available for more technical users. But even for them, it's only worth using with static IPs. That setup doesn't scale & isn't worth using with a relay run by the average Nostr user who wants to quickly set up a node on their laptop running at home which likely uses a dynamic IP. Nostr adoption would be hugely helped if anyone with a standard internet connection with a dynamic IP could download a relay app, run it on their laptop, then give people an npub which their clients could use to stay connected to that relay even with IP changes. No purchasing a static IP (which is also easier to censor) or domain is required, & it would make Nostr way harder to censor.