Create a block from scratch

Maybe it doesn’t let you use a private IP in the DHCP range unless it’s attached to a specific MAC address, which would be a reasonable thing to require.

There are multiple ways to fix this, but I don’t know your specific router and it’s hard to guide you without seeing what the UI is doing. I could try to explain the concepts, but it’s getting to be a little more advanced :stuck_out_tongue:

Do you have any kind of video conferencing software we could use where you could share your screen, so I can guide you through the steps? Like Zoom or Teams, etc?

If not, I’ll explain what you need to do, but it’ll be in generic terms that you’ll have to translate to your specific router.

my IP is 156.146… not 223.16.253.161
What should I do?

k, let’s take a look at what we can see. Type the following in the terminal, and post the results here:
tracert 8.8.8.8

without any Port Forwarding, the IPFS check results as follows (with a bit of progress)

:x: Could not connect to multiaddr: context deadline exceeded
:heavy_check_mark: Found multiaddrs advertised in the DHT:
/ip4/127.0.0.1/tcp/4001
/ip4/127.0.0.1/udp/4001/quic
/ip4/192.168.11.10/tcp/4001
/ip4/192.168.11.10/udp/4001/quic
/ip4/192.168.11.4/tcp/4001
/ip4/192.168.11.4/udp/4001/quic
/ip4/223.16.253.161/tcp/1024
/ip4/223.16.253.161/tcp/4001
/ip4/223.16.253.161/udp/1024/quic
/ip4/223.16.253.161/udp/4001/quic
/ip6/::1/tcp/4001
/ip6/::1/udp/4001/quic
:heavy_check_mark: Found multihash adverised in the dht
:x: There was an error downloading the CID from the peer: could not connect to peer

I have Zoom installed but a newbie to it

One more thing, i’m behind a VPN

C:\Users\User>tracert 8.8.8.8

Tracing route to dns.google [8.8.8.8]
over a maximum of 30 hops:

1 1 ms 1 ms 1 ms 192.168.11.1
2 5 ms 13 ms 12 ms 1-240-16-223-on-nets.com [223.16.240.1]
3 3 ms 2 ms 2 ms 10.30.25.1
4 3 ms 3 ms 2 ms core.hgc.com.hk [210.0.248.56]
5 * * * Request timed out.
6 * * * Request timed out.
7 3 ms 2 ms 2 ms 108.170.241.65
8 3 ms 4 ms 3 ms 66.249.94.223
9 3 ms 3 ms 3 ms dns.google [8.8.8.8]

Trace complete.

LOL, now you tell me, that can never work :smiley:

OK, we have to use a completely different approach then, forget about port mapping.

Edit the config file, in the Swarm.ConnMgr, there’s a RelayClient setting. Make it look like this, then restart the daemon:

		"RelayClient": {
			"Enabled": true
		},

my IP address is SAME as what’s listed in the IPFS list (223.16.253.161) after i’ve disconnected from the VPN

Or use the following command:
ipfs config --json Swarm.RelayClient.Enabled true

and it’s getting interesting (after RelayClient enabled, VPN back on), results:
:heavy_check_mark: Successfully connected to multiaddr
:heavy_check_mark: Found multiaddrs advertised in the DHT:
/ip4/127.0.0.1/tcp/4001
/ip4/127.0.0.1/udp/4001/quic
/ip4/147.75.70.221/tcp/4001/p2p/Qme8g49gm3q4Acp7xWBKg3nAa9fxZ1YmyDJdyGgoG6LsXh/p2p-circuit
/ip4/147.75.70.221/udp/4001/quic/p2p/Qme8g49gm3q4Acp7xWBKg3nAa9fxZ1YmyDJdyGgoG6LsXh/p2p-circuit
/ip4/192.168.11.4/tcp/4001
/ip4/192.168.11.4/udp/4001/quic
/ip4/223.16.253.161/tcp/4001
/ip4/223.16.253.161/udp/4001/quic
/ip6/::1/tcp/4001
/ip6/::1/udp/4001/quic
:x: Could not find the multihash in the dht

:heavy_check_mark: The peer responded that it has the CID

Victory!

Now, with this setup, you can use your node while connected to your VPN.

Let the node settle for a while, and the advertised addresses should trim.

P.S. you can remove the port forwarding rules from the router, they are not used now.

Oh, and if you want to live on the bleeding edge, type the following command and restart your daemon one last time:

ipfs config --json Swarm.EnableHolePunching true

This will attempt to direct connect through the NAT when it can (when the calling node also has this feature on).

Thank you soooooo much!

Wish i could buy you a cuppa, or even better, a beer!!! Cheers

This would have gone a lot faster had you mentioned the VPN from the get go :smiley:

You’re welcome :slight_smile:

indeed, always forgot about that…really sorry for taking up so much of your time

That’s OK, I enjoy the puzzles :slight_smile:

back to the basic issue:

i put a block of data using ipfs block put from the desktop, and tried to read it from my laptop using ipfs block get , it returns
Error: blockservice: key not found

Are those raw block data sent to the IPFS available for nodes?

The problem is that the block needs to be “provided” to the dht. This is redone every 12 hours.

So, what happened is, with all the turmoil you just went through, the block isn’t in the dht right now. If you wait until after the next reprovide, it will become available.

You can try with a new block, that should be provided within a minute, and then should become discoverable.

i see, again, thank you very much!!!

Do realize, however, that the block is only available while your node is up and reachable. If you shut down your node on a regular basis, you need to re-pin your content somewhere else, so it’s available at all times. There are services that do that, such as Piñata and web3.storage