Only one satellite sends me data

Hi all,

I have one node that receives data only from the stefan-benten-satellite - all others don’t send data. Might it be because my node is available only via IPv6?

Kind regards,


Yes, you have to be reachable via IPv4, but this should also apply to the stefan-benten satellite.

Ok, so I’ve changed the “contact.external-address” to be my v4-address. Let’s see if it changes something.

Try the open port check tool:

I’ve got data from another satellite! That’s great.
But I wonder why IPv6 is not “supported”.

The short answer is GCP. Apparently they don’t support IPv6. Stefan-benten isn’t hosted on GCP, so it does support IPv6. But that means the uplink on the other end needs to support it as well. As it currently stands, you kind of need IPv4 to make it work reliably.

GCP is Google Cloud Platform? And they do not support IPv6? Hm.
But in my opinion v6 should definitely be supported. I’m using a community build network for this that only has one public v4 but every participant has his own v6 - like it should be. So in order to provide a v4 for storj I need to run an extra service that just routes that traffic to my node. Not ideal, either.

Yes, GCP is Google Cloud Platform. Sorry about the abbreviation, I get so used to them, but they may not be apparent to everyone. All satellites except for stefan-benten are hosted on GCP I believe.

The complexity with IPv6 only is that the uplinks connect directly to the nodes. So that means only uplinks with IPv6 could connect to those nodes. So even if the satellites support it, the nodes would still only get uploads from IPv6 supporting uplinks. Currently I’m not even sure that the satellite filters IPv6 only nodes in node selection. So it’s possible that uploads to IPv6 only nodes would simply fail if an IPv4 only uplink attempts it. Luckily the long tail overhead should catch most of these cases. But I think you can see why this gets complicated.
The internet still runs mostly on IPv4 and you can be pretty sure that almost everything supports it. So for now it’s the safest bet. You can run a dual stack node btw, by using a domain name and having both an A and an AAAA record for it. Though I believe the satellite currently prioritizes the A record in those cases.

1 Like

If the IPv4 gateway host has ssh login capability, you can setup a reverse ssh tunnel for the Storj node port…

It’s not precisely clear what architecture you are implementing in your community network.

Are all LAN nodes using IPv6 link local connections to one another and have all WAN traffic routed through an IPv4 router?

Do all LAN nodes have Internet addressable IPv6 addresses?

Is Internet IPv6 traffic tunneled through the IPv4 gateway?

I’m not exactly sure how it works. But every participant has his own v6-subnet and is directly connected “to the internet”. IPv4, though, runs through one router that is NATing - so we all share one common IPv4 but have our own v6.
As I’m hosting some small websites on a server at home, I need to have them accessable via v4, too, as many users still cannot access v6-only-host as @BrightSilence already mentioned. So I’ve rented a small cloud server that just provides it’s v4 and translates it to v6 - basically NATting. And I can use that one for the storj node, too. That is just at least one hop more, but that’s ok I guess.

@BrightSilence: thanks for the hint with the domain name. That would help support both v4 and v6 where the latte would be reouted directly without using the v4-NAT-cloud-server.

Thank you all!

Storj pays $20/TB in only one direction of that cloud server… so if your rented server has a bandwidth limit or some included bandwidth with overage costs, you may run into a situation where the cloud server gateway cost is greater than the Storj income.

The v4-NAT-server ist necessary anyways, so I have it with storj or not. And they have 20TB outgoing traffic for free - that should be enough here. :slight_smile: Incoming traffic is free.