How do those nodes connect to me (or me to them) without me knowing their ip address?
Since those IP are private IP address (as defined by rfc1918[1]), it's possible those nodes actively scan the local network.
After establishing that part, each node in the network do also share each other information and the node may keep the information in their own known-node local databases, so other or you can connect to each other. For a further detailed explanation, you can refer to:
https://developer.bitcoin.org/devguide/p2p_network.htmlSo when I'm connected to a not publicly routeable node, does that mean I'm connected to it through another node?
No. It means it can't be accessed through outside local network since the node has private IP address[2]. Bitcoin Core
getpeerinfo only show directly connected node.
[1]
https://www.rfc-editor.org/rfc/rfc1918[2]
https://networkengineering.stackexchange.com/a/40336Super, this is really informative, thanks for sharing those links, OP try and take a look at the second link as well, very informative and well detailed