Expanding on Hudson Jameson's answer: "The hexadecimal node ID is encoded in the username portion of the URL" The username portion is a 512-bit public key that is used to verify communication came from a particular node on the network. More about the RLPx protocol used can [be found here][1]. Main parts of that: > Node discovery and network formation are implemented via a > kademlia-like UDP. Major differences from Kademlia: > > * packets are signed > * node ids are public keys > * DHT-related features are excluded. FIND_VALUE and STORE packets are not implemented. > * xor distance metric is based on sha3(nodeid) [1]: https://github.com/ethereum/devp2p/blob/master/rlpx.md#network-formation