EDIT 3: All good now, the DNS has done its thing and defed.xyz is fully operational! Once again, thank you all for having checked out my tool, it means a lot to me.

Deploy problems, read more

EDIT 2: I’ve managed to fix it as well as add some optimization measures. Now it shouldn’t ramp up bandwith nearly as fast. The DNS records are still propagating for https://defed.xyz so that might not work, in the meantime you can use the free Netlify domain of https://sunny-quokka-c7bc18.netlify.app

EDIT 1: You guys played too much with my site and ended up consuming this entire month’s 100GB limit of free quota, so the site is currently blocked.

This is probably my most succesful project ever, thank you all for checking it out. It will take me some time to find another suitable host and move the project there.

ORIGINAL POST: I couldn’t find any tools to check this, so I built one myself.

This is a little site I built: the Defederation Investigator defed.xyz. With it, you can get a comprehensive view of which instances have blocked yours, as well as which ones you are federated with.

The tool is open source and available on GitHub. Hopefully someone will find it useful, enjoy.

    • Nerd02@lemmy.basedcount.comOP
      link
      fedilink
      English
      arrow-up
      9
      ·
      1 year ago

      Oh didn’t know about that. It doesn’t look too accurate though. My instance was defederated by some guy and it isn’t showing. Anyway thank you, glad you like it!

      • iso@lemy.lol
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 year ago

        Does defed.xyz checking other softwares like Akkoma? For my instance, defed.xyz shows only dubvee.org is defederated, which is correct.

        But in the other hand, federation-checker shows only matrix.rocks defederated, which is a Akkoma instance. I’m not sure is it correct since IDK where is Akkoma’s defederated list but both sites showing different sites.

        • Nerd02@lemmy.basedcount.comOP
          link
          fedilink
          English
          arrow-up
          8
          ·
          1 year ago

          To be fair this is the first time I hear about Akkoma, I wasn’t even aware of its existence.

          Right now the Investigator queries all instances in the awesome-lemmy-instancecs repo, which means it only queries instances running the Lemmy software. I didn’t really consider this, but evidently this also cuts off Kbin, Mastodon and so on.

          To expand on this I would need a list of all fediverse / threadiverse instances, or at least the onest that federate with Lemmy. I don’t know if such a list exists out there.

          • iso@lemy.lol
            link
            fedilink
            English
            arrow-up
            4
            arrow-down
            1
            ·
            1 year ago

            Alright I don’t really care other than Lemmy anyways. Maybe kbin. IDK your tool is the best among the other ones, so well done 🙏

      • can@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        It also shows pawb.social defederated from sh.itjust.works but I swear I’ve seen comments by them.

  • TheGreenGolem@lemm.ee
    link
    fedilink
    English
    arrow-up
    15
    ·
    edit-2
    1 year ago

    Umm, I think you used up your quota at Vercel.

    402: DEPLOYMENT_DISABLED

    This deployment has been disabled, as the fair use policy guidelines have been exceeded.

        • Nerd02@lemmy.basedcount.comOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          That might be a solution, but I think I might get there just by optimizing what’s already there. I started this yesterday and it was to be a one afternoon project, mostly for personal use. I never built anything this quickly and some aspects where definitely rushed.

          More importantly, I wasn’t aware Vercel had bandwith limits. I guess I’ve fucked around and found out.

  • cwagner@lemmy.cwagner.me
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    baraza.africa is not checked despite being in the awesome lemmy list.

    It’s my defed-checker testcase, because they recently went whitelist only and defederated me that way. So the way I understand it, your tool should work there, it’s just not checking this instance for some other reason

    • Nerd02@lemmy.basedcount.comOP
      link
      fedilink
      English
      arrow-up
      12
      ·
      1 year ago

      Oh interesting. Now that you pointed it out I think I’m only checking instances’ blocklists, not whether they are white list only. But I should fix that, thank you for reporting it.

    • Nerd02@lemmy.basedcount.comOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 year ago

      Update: I’ve written the code to do that, but I think it would require some overhaul of the UI. For instance, my instance has been blocked only by awful.systems, but by grouping together under “defederated” both those instances that have blocked me, as well as those that are on allow list only, I end up with over 70 instances in the “defederated” block.

      I think this makes for a very confusing UI, as I can’t know for sure who of these people hates my guts and who simply hasn’t heard of me. I think I’ll add an additional accordion box for the instances that haven’t included you in their whitelist.

      • cwagner@lemmy.cwagner.me
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        Yeah, here the use cases differ ;)

        I only care about instances that won’t send me updates, I don’t care much about the reason they don’t, so I’d be perfectly fine with seeing 70 instances in the defederated block. But I guess this one is pretty simple to solve by making a new block “whitelisted, and you are not in it” ;)

          • cwagner@lemmy.cwagner.me
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            Nice, works great!

            FYI, I needed to add @sveltejs/adapter-cloudflare to the devDependencies to get it to run locally.

            • Nerd02@lemmy.basedcount.comOP
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              Yeah I added it to the dependencies minutes ago. I am trying to move it from Vercel (where I just got suspended) to Cloudflare, so that’s why it’s there.

  • Disgustoid@startrek.website
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    This tool is great! Thanks for creating it and making it public.

    Also, is this the first Lemmy Hug of Death? If so, congrats, I think?

    • Nerd02@lemmy.basedcount.comOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      Not sure if it’s the first but it’s definitely a first for me. In retrospect I could have written it way better, the logic was a bit rushed, but it should be fixed now.

      I love the amount of support I’ve been getting from this and other threads, thank you for using my site.

    • Nerd02@lemmy.basedcount.comOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      Yeah sorry about that, I couldn’t find a list of instances that also included kbin ones. The best I could find was the awesome-lemmy-instances repo, which as the name suggests is strictly Lemmy.

      If you have a list that includes kbin I’ll be happy to add support for it.

        • Nerd02@lemmy.basedcount.comOP
          link
          fedilink
          English
          arrow-up
          5
          ·
          edit-2
          1 year ago

          Thank you. Actually that list is a bit hard to interact with, but I’ve found this API and it works great. I’ll be adding kbin support in the next couple days.

        • Nerd02@lemmy.basedcount.comOP
          link
          fedilink
          English
          arrow-up
          4
          ·
          1 year ago

          Update: apparently kbin doesn’t support this kind of operation. In other words there’s no way of knowing what instances a kbin instance is federated with. I’m sorry but this really isn’t my fault. I’ll see if I can add it later on, once the kbin devs finish working on this feature.

    • Nollij@sopuli.xyz
      link
      fedilink
      English
      arrow-up
      5
      ·
      1 year ago

      In my experience, the data on there is significantly outdated/incorrect. The easy way to check is the domain reverse lookup- pick any instance (e.g. sopuli.xyz) and enter it into the reverse lookup. Then compare that to the official published list at sopuli.xyz/instances.

      As of right now, FBA lists 9, while the official list is 15. The lists are significantly different as well, with each having multiple entries that are not on the other.

      • chuso@kbin.social
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        I have no idea how it works under the hood, but I guess there is some caching given how fast results are retrieved.

    • naught@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 year ago

      This appears to be related to kiwi farms? It also has a slur immediately on the page you linked

      • chuso@kbin.social
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        This appears to be related to kiwi farms?

        It was originally developed by Kiwi Farms when they were running their own Mastodon instance.
        They built this tool because they were being massively defederated (for obvious reasons) but eventually gave up and closed their Mastodon instance.
        Since then, other instances apparently not related to Kiwi Farms (but usually still that kind of “free speech” ones) have reinstantiated the service.

        It also has a slur immediately on the page you linked

        Oh, yes, I haven’t seen that.

    • Nerd02@lemmy.basedcount.comOP
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      1 year ago

      Good to know. Feel free to use that if you prefer it, the only reason why I made this was because I wasn’t aware of the existence any other similar tool.

  • Dalë@feddit.uk
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    Great app.

    Might be nice to also have a section for instances that the searched instance has defederated from.

    I know this can be seen elsewhere but would be nice to have all the information in one place.

    • Nerd02@lemmy.basedcount.comOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      Sure, I could do that. The only reason why I didn’t was because that info is just one click away, it’s really easy to see that from an instance’s web page (while it isn’t so easy to see the rest of the data I am displaying).

  • Cryxtalix@programming.dev
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    What does returning errors mean? I had a main account that I tried migrating away from lemmy.world, only to have it return errors from lemmy.world. I can’t see two thirds of the comments I can from this programming.dev account.

    • Nerd02@lemmy.basedcount.comOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      For some reason when I query programming.dev, as well as a couple other instances from my Vercel deployement I get 403s “Forbidden” errors. Not really sure why, it works when I run it from localhost? Maybe them or their provider have somehow blocked request from Vercel because they are afraid of bots? It’s anyone’s guess really.

      This site is built on top of the lemmy-js-client, which is maintained by the Lemmy developers, unfortunately there isn’t any API documentation to look at, so for those times when the JS client doesn’t work it’s very hard for me to debug it and troubleshoot it.

      BTW you can look at these errors yourself in your browser’s “network” tab, all errors return 500s. In the request body you can see the queried URL, in the response you can see the error message. Sometimes it’s “Forbidden”, some other time it’s a timeout (possibly due to the instance being offline or severely overloaded).