Skip to content

Feat: DNS record gossip #104

@RangerMauve

Description

@RangerMauve

We should have a way to exchange DNS records (like hyper://agregore.mauve.moe) with peers on the local network even if DNS is unavailable (e.g. local mesh networks / wifi hotspots).

  • Expose muxer inside corestore when replicating inhyper-sdk
  • Define protocol for doing an ASK for a hostname and a RESPONSE with either a public key for the hostname or empty buffer if they don't have the hostname
  • When getting ASK, fetch the hostname from the DNS cache. Respond with the public key or empty buffer
  • When failing to perform a DNS lookup (and not having a cached value), broadcast an ASK to all known peers and use either the first returned record or fail after a second.

This has the security risk that peers you're connected to can lie about the DNS key. We might want to wait for a quorum of peers to respond before choosing a key, or having some sort trusted set of peers. This should also have an opt out flag since it introduces a leak of which domains a peer might have visited before which could be used for fingerprinting or extracting info.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions