Ok so I am now at the point where I have multiple ILP nodes running in the same subnet. I can make as many as I want .
My next step is to make them aware of each other. I would take this moment to opt in my perspective that I vote to programatically hit admin api endpoints to configure such peers / add them vs auto-discovery or discovery service by default. Still needed, but not default.
To make them aware of each other I will attempt to add a peer account to the /accounts endpoint on one of the nodes. That account information will be of class peer relationship and point to the other node we want to ‘peer’ with.
So , I did try to drop in a peer account and saw some ILP action immediately being attempted in the logs - could this be “peering”. This led me to contemplate “What does is mean to PEER?” .
The spec really defines a peer as one that has made an ILP connection. I need to look deeper into what is transmitted but it looks like routes. The spec also states that the resulting connection will end up bilateral so that means a btp websocket to me and thus the direction of the peering is irrelevant to a degree because the goal is to share routes.
Ok stepping back does that mean one must simply have an account with the other? and decide amongst the trusted parties who will configure what, is that correct? Really peering is a client connecting to a server and sharing route data from what I understand.
Putting it into practice.
On to my setup, I have two nodes, on the same subnet both listening on 7770 and 7768 :
ilp-node-1_1 - 192.168.176.4 hostname ilpnode1.local
ilp-node-2_1 - 192.168.176.2 hostname ilpnode2.local
My attempt to make them peer is to first POST a peer account to ilpnode1.local. You can see the POST below.
As soon as I POST that account creation on ilpnode1 you can see “Sending Route Updates” to that new peer account in the log. It also states outgoing ILP packet over http to ilpnode2 - proof that it is trying.
I ended up with a 404 you can see, but I am not complete. On that ilpnode2 that I am trying to peer with, do I need to create a regular account and pass a btp_outgoing_token as the token of the new target peer node account? That part I left out because I am at that step and thought it would be good to ask the gurus here.