- Setting up a remote node requires access to a full node that has the entire blockchain downloaded right?
- So does this mean my remote node can do everything as if it had the full blockchain downloaded?
- What are some cons about this setup?
- Can I make a send transaction using a remote node setup? Currently the remote node is setup to node.moneroworld.com port 18089
Yes, you can.
First of all, a "remote node" simply means a full node which is not running on the same machine as your wallet software. Any remote node is a full node. Maybe you control it, maybe you don't. If you connect to some node on node.moneroworld.com then those will belong to other people who're running a full node and have opened them to remote wallets.
In the diagram above, we can say the following:
- Network 2 is probably the most common set-up. One machine, one node, one wallet. Node N5 is a localhost node to wallet W4 because they're on the same computer as the node. The node N5 is not accepting wallet connections from outside, so it can not be used as a remote node. This is the default set-up for people running a full node. Of course, the user can add more wallets easily, they will all connect to N5 automatically.
Node N1 is a localhost node to wallets W1 and W2 because they're on the same machine as the node.
The node is also accepting wallet connections from local network and because of that N1 is a remote node to wallet W3 since N1 and W3 are running on different machines. Since N1 is not accepting wallet connections from the internet but just from local network, we could say it's a private remote node.
Machine PC4 runs only the wallet W5 and no node. It must connect to some remote node to be able to refresh the wallet and send transactions. It's connected to a public remote node N2. If owner of machine PC4 wants to sync another wallet, he must connect it to a remote node as well. Since every new wallet refresh requires sending some data between the wallet and the node, it's not efficient to use remote nodes for many wallets. Would be better to download the whole blockchain by running a node and then you're much faster to sync each wallet.
Setting up a remote node requires access to a full node that has the entire blockchain downloaded right?
"Setting up a remote node" just means that you run your node with a few extra parameters, and that you allow your firewall to accept incoming connections, as explained on the same site you linked. So, a remote node is a full node and it also has the full blockchain downloaded - just like any node.
How To Include Your Node On Moneroworld
If you would like to offer your node up for inclusion in the Moneroworld Network of Open Nodes, you can simply add the code bellow to the launch of your daemon (and open your firewall), and the MoneroWorld script will sniff you out and add your node to the random list.
--rpc-bind-ip YOUR.EXTERNAL_IP.GOES.HERE --rpc-bind-port 18089 --restricted-rpc --confirm-external-bind
So does this mean my remote node can do everything as if it had the full blockchain downloaded?
"as if it had the full blockchain downloaded" doesn't make sense. Any node has the full blockchain downloaded by definition. If you mean whether your wallet connected to a remote node can do everything then yes, it mostly can. You can refresh and send, but can't mine or control the node in other ways.
What are some cons about this setup?
- It's slower and wasteful if you need to sync multiple wallets
- It's putting extra load on people who volunteer to run their remote nodes
- It doesn't help the network
- It allows your TX-es and IP to be linked by the node
- Maybe some other privacy loss (because the node provides you with the decoy outputs as well but I'm not sure if the wallet or the node decides the block heights)
Can I make a send transaction using a remote node setup? Currently the remote node is setup to node.moneroworld.com port 18089