A bit of theory first, mainly to set the terminology.

Jumpstart services can be split into few categories:
- Boot services (RARP, TFTP and BOOTPARAMS, or DHCP)
- Diskless client (i.e. the image of it's root filesystem)
- Product (directory with Solaris packages SUNW* and friends)
- Config (sysid, rules, profiles, begin/finish scripts)
- Naming services (NIS, NIS+, files, DNS etc.)

These categories are independant and can be put on at least 5 different machines. Main restriction is that the very first category of services (booting protocols) must be on the same subnet as the install client, unless the routers provide forwarding of RARP, TFTP and BOOTPARAMD broadcast requests and responces. The DHCP boot method is not covered here.

Preparing a new client for the installation may be split into two phases: Setting up a boot server (in case this is a very first boot client ever on the subnet) and configuring the client itself.

Sun suggests to use the setup_boot_server script for the first phase, and add_boot_client for the second. However, both these scripts make too many assumptions and are not flexible enough to adopt to the site-specific requirements. The procedures described here, are more flexible, though presumes some more understanding of what is happening on the network during the installation.