How can I identify and assign clients?

By: Richard Glaser - Revised: 2006-09-20 richard


config File

To identify and assign client managed file systems (i.e. command files). You want to modify the text file, config, on the radmind server, which is located at:

/var/radmind/config

To edit this file simply use your favorite text editor, either command line or GUI. This file contains a list of know clients that can connect to the radmind server. Each line can contain certificate (CN), domain name (radmind.client.edu), or IP address of a client or group of clients, and the managed file system (i.e. command files). Note, a client is only given access to the command files and listed transcripts if they are listed in the config file.

For example...

client-cn            command-file.K
client.radmind.edu   command-file.K
169.1.1.1            command-file.K

So, for the example below, client-a.radmind.edu only has access to comand-file-a.K and cannot access command-file-b.K,
 
client-a.radmind.edu     command-file-a.K
client-b.radmind.edu     command-file-b.K

but each client might have access to the same transcripts as defined by each clients command file, like base_os_pos.T, office_2004.T, and bas_os_neg.T, listed below.

command-file-a.K
p    base_os_pos.T
p    scanner.T
p    office_2004.T
n    bas_os_neg.T

command-file-b.K
p    base_os_pos.T
p    office_2004.T
n    bas_os_neg.T

Ignoring Lines

Lines that are blank or begin with '#' are ignored. So, you can add comments to your config file to designate clients or sections of the config file.

For example...

# Lab A
client-a.radmind.edu command-file-a.K

# Lab B
client-b.radmind.edu command-file-b.K

# Lab C
client-c.radmind.edu command-file-c.K


Wildcards

The  '*' character is a wildcard and will match any string.

For example...
client-*.radmind.edu   clients-command-file.K
client.radmind.edu     command-file.K
*.lab.radmind.edu      lab-command-file.K
169.1.1.*              subnets-command-file.K

Number Ranges

A number range can be given by "<min-max>" where min is the lower bound and max is the upper bound.

For example...
client-<1-20>.radmind.edu     clients-command-file.K
169.1.1.<1-20>                clients-command-file.K

Ordering Tricks

The Radmind server will read the config file from top to bottom until it finds a client match and then use the corresponding command file. This feature along with wildcards & number ranges allows for much customization in client identification & command file assignment.

For example, say I had two clients that I wanted to use individual command files, but the rest use another.

client-5     client-5-command-file.K
client-9     client-9-command-file.K
client-*     client-others-command-file.K

In this example, clients with certificates "client-5" & "client-9" get command files "client-5-command-file.K" & "client-9-command-file.K" and other clients with certificate "client-" get the command file "client-others-command-file.K".

Bonjour (aka Rendezvous)

About Bonjour
Bonjour, formerly Rendezvous, is Apple's trade name for its implementation of the Zeroconf specification framework, a computer network technology used in Apple's Mac OS X from version 10.2 onwards. It uses standard DNS packets in a new way. Thus it is a new service, but it is using a technology that is relatively old—DNS over IP.

Bonjour is a general method to discover services on a local area network. This technology is widely used throughout Mac OS X and allows users to set up a network without any configuration. Currently it is used by Mac OS X and on other operating systems to find printers and file sharing servers. It is also used by iTunes to find shared music, iPhoto to find shared photos, and iChat, and many other programs.

What about radmind?
There is limited support for Bonjour (aka Rendezvous), mostly intended for client's to discover the radmind server. It is possible to use Bonjour it to manage the clients, but probably better to use the options noted above for identifying clients.

If you are interested in having full Bonjour support with radmind, submit a feature request. Better yet, if you can code, submit a patch for Bonjour.