Modern XMPP project discussion - 2025-04-22


  1. luna

    Is it even a lot of stuff?

  2. luna

    The three things are pretty straightforward but yeah

  3. erebion

    What three things?

  4. MattJ

    In Link Mauve's messages above. Numbered: 1) Some just forget to publish AAAA records, 2) some do but forget to make their server listen on INET6, 3) Some forget to configure their firewall to allow IPv6 traffic to those ports

  5. erebion

    I've tried deleting my default route for IPv4 for a couple minutes and suddenly the same amount of connections was there for IPv6 as it has been before in total:

  6. erebion

    https://share.erebion.eu:5281/file_share/SWlA09iq_JWP8nkWN9uXaxUv/b83a0c0e-6a1f-4606-a599-ef559a24b797.png

  7. erebion

    This is before deleting the default route:

  8. erebion

    https://share.erebion.eu:5281/file_share/p6gSSjaWGQ4wc9tTL8bNDgHo/cedf15c4-0994-4dcc-a8a8-66b0cfc882d6.png

  9. erebion

    So it seems Prosody sometimes connects via IPv4 while it could use IPv6 delivery failed

  10. erebion

    So it seems Prosody sometimes connects via IPv4 while it could use IPv6

  11. MattJ

    It could happen if your IPv6 routes have more latency

  12. MattJ

    Hmm, or maybe we're missing the recommended AAAA delay, I can't see it in the code right now

  13. Zash

    it's in net.connect, 250ms

  14. MattJ

    Hmm, are you sure that's the one?

  15. MattJ

    The RFC says 50ms

  16. Zash

    The new one?

  17. MattJ

    Mmm, yeah, I was reading the new one

  18. Zash

    Wait "resolution delay" ?

  19. MattJ

    But AFAICT the delay in net.connect is between "basic" targets

  20. Zash

    the "Connection Attempt Delay" I guess

  21. MattJ

    I don't see anything that gives AAAA a headstart

  22. MattJ

    net.resolvers.basic seems to fire the DNS queries in probably a random order

  23. erebion

    Oh no

  24. erebion

    Maybe the state of IPv6 in XMPP isn't as depressing as we thought

  25. Zash

    AFAIK we do A and AAAA (and TLSA) queries at the same time, wait for all to finish, sort them in some way that puts an AAAA first, try to connect to that and then 250ms later try the next

  26. erebion

    Maybe it's just because Prosody doesn't prefer IPv6 per whatever the Happy Eyeballs RFC is xD

  27. MattJ

    Ah yeah, just noticed merge_targets()

  28. erebion

    Huh, but why does it use IPv4 while it can use IPv6?

  29. erebion

    When I deleted the default route and added it back, it started using more IPv6

  30. Zash

    Networks work in mysterious ways.

    💯 1
  31. erebion

    Could it be that my DNS just had issues exactly at the time when I looked at the data yesterday?

  32. erebion

    Also, found those hosts without AAAA records: conference.debian.org: conference.debian.org has no AAAA record conversations.im: conversations.im has no AAAA record disroot.org: disroot.org has no AAAA record muc.xmpp.org: muc.xmpp.org has no AAAA record

  33. erebion

    Those are all the servers in my log that don't allow IPv6.

  34. erebion

    Does anyone here have contact to one of the admins and could ask them to that pls? :)

  35. Zash

    xmpp-server xmpp.xmpp.org. 9269 Priority: 1 Weight: 1 IP: 2604:a880:800:c1::2a:a001 IP: 104.248.10.4

  36. erebion

    Yes, but not muc.xmpp.org

  37. MattJ

    muc.xmpp.org has a SRV record which points to xmpp.xmpp.org

  38. erebion

    Oh right, forgot to look for that

  39. erebion

    Guess that means time to sleep

  40. Zash

    that was the output from `xmpp-dns muc.xmpp.org`

  41. MattJ

    Sounds like a good idea. Good night! o/

  42. erebion

    TIL: xmpp-dns

  43. Zash

    of course, things may fail to look up the SRV record for some reason and fall back to A/AAAA lookup with the default port

  44. Nigel

    > Networks work in mysterious ways. 💯

  45. erebion

    Just a thought... What if instead of having a profile pic that is either always available or only available to contacts we had separate pics for always and contacts, so that one could have pic visible in every chat, but also one with, for example a face, visible to contacts?

  46. erebion

    *Just had a thought

  47. erebion

    Like this in a client: Profile picture Contacts: 123.jpg Everyone else: 456.jpg