• While the Server and ConnectionData fields may seem redundant, the ConnectionData field may contain and IPV4 or IPV6 address

    shouldn't it read: While the Server and ConnectionData fields may seem redundant, the ConnectionData field may contain an (not and) IPV4 or IPV6 address?

    BTW: I like your article and I am totally on your side of avoiding GUID