This section has some example configurations that are useful for various setups.
Suppose you want to make a lab full of X terminals that all connect to one server machine. So let's call one X terminal xterminal and let's call the server machine appserver. You install GDM on both.
On appserver you enable XDMCP, so you have
[xdmcp] Enable=true
On the xterminal you disable XDMCP (you don't want anyone to connect to the xterminal really). You will add a server type perhaps called Terminal as follows:
[server-Terminal] name=Terminal server command=/path/to/X -terminate flexible=false handled=false
[servers] 0=Terminal -query appserver
Suppose you want to make a lab full of X terminals that all connect to some choice of servers. For now let's make it appserverone and appservertwo. Again we'll call our example X terminal server xterminal. The setup on both servers is the same as with the case of one server in the previous section. You do not need to explicitly enable indirect queries on the server since we'll run the choosers locally on the X terminals.
So on the xterminal you again disable XDMCP. You will add a server type perhaps called Chooser as follows:
[server-Chooser] name=Chooser server command=/path/to/X flexible=false chooser=true
[servers] 0=Chooser
The XDMCP chooser on the X terminal will normally give a broadcast query to see which servers exist on the network. If the two servers are not reachable by a broadcast query, you must add them by hand to the configuration file. So in the [chooser] section you would have:
Hosts=appserverone,appservertwo
Sometimes you may want to run the chooser on the server side however. Then what you want to do is to run a configuration similar to the previous section about the one server configuration with XDMCP indirect queries enabled on appserver and on the X terminals you'd have
[servers] 0=Terminal -indirect appserver