When tinc starts up, it parses the command-line options and then reads in the configuration file tinc.conf. If it sees one or more ‘ConnectTo’ values pointing to other tinc daemons in that file, it will try to connect to those other daemons. Whether this succeeds or not and whether ‘ConnectTo’ is specified or not, tinc will listen for incoming connection from other daemons. If you did specify a ‘ConnectTo’ value and the other side is not responding, tinc will keep retrying. This means that once started, tinc will stay running until you tell it to stop, and failures to connect to other tinc daemons will not stop your tinc daemon for trying again later. This means you don’t have to intervene if there are temporary network problems.
There is no real distinction between a server and a client in tinc. If you wish, you can view a tinc daemon without a ‘ConnectTo’ value as a server, and one which does specify such a value as a client. It does not matter if two tinc daemons have a ‘ConnectTo’ value pointing to each other however.