I have a program which acts as a node in a larger system. Those nodes can be connected to form a tree. TLS with mutual authentication is required, which means that each node has it's own certificate. Is it safe to use the same certification for both server authentication (when someone connects to the node) and client authentication plus authorization (when node connects to someone else)?
Also all my nodes require unique IDs within the system. This ID is similar to URI, but in "reverse notation" (so top most element is at the beginning). Should I put this value into subjAltName (and if so, as what value?) and put node's domain name into CN in DN, or should I put this ID into CN in DN and node's domain name into subjAltName?