What's the purpose of this line?

What’s the purpose for doing this?
Fetch finished loading: GET "https://dns.google/resolve?name=_dnsaddr.bootstrap.libp2p.io&type=TXT"

and

Looks like you’re using js-ipfs with the default bootstrap nodes. The DNSLink is being looked up being Google’s DNS API be the looks of it. Trying to fetch a TXT record, I’m assuming to grab the CID the domain points to.

1 Like

Yes, it should be bootstrap nodes, because I even have no idea about the concept of ‘node’, before reading your post.

Is it possible, strip off the bootstrap node, still have the confusion of node .
I only want my end user to upload their pic files to IPFS, directly, using js-ipfs.

With IPFS you don’t really “upload” to it, unless you’re using a pinning service, like Pinata. It’s a fully peer-to-peer network, operated by nodes. So when you’re starting up that IPFS object you’re creating in js-ipfs, you’re actually starting a browser node. This node wants to know where other nodes are, so it can connect to them and find more peers, this is why it connects to the bootstrap nodes. If you don’t want to use the default nodes, you have to host your own, or find other nodes to bootstrap with, or your browsers won’t find any peers, and won’t be able to share data.

You can change the default bootstrap nodes with a different create option: Ipfs.create({config:{Bootstrap: [ /* your own bootstrap nodes here */ ]}});