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