Described heavily in depth in RFC 4173, the root path string used to boot from SAN can range from relatively simple, to a very explicit, information packed line. According to the RFC, the root path string is formatted as follows:
iscsi:<servername>:[protocol]:[port]:[LUN]:<targetname>
“servername” is required, and can be the domain name or IPv4 (or IPv6, which is not supported by gPXE) address of your iSCSI target server.
“protocol” is optional, and is generally left blank, assuming a default value of “6” for TCP.
“port” is optional, and if left blank will assume a default value of 3260.
“LUN” is optional, and if left blank will assume a default value of 0.
“targetname” is required, and should be the iSCSI target IQN you wish to boot from.
For most non-complex deployments, such as the samples in above sections, your root path will look like:
iscsi:my.target.dns.name::::iqn.2007-08.name.dns.target.my:iscsiboot
That root path string omits the protocol, port, and LUN used by the iSCSI target server, defaulting to TCP, port 3260, and LUN 0, but is functionally equivalent to:
iscsi:my.target.dns.name:6:3260:0:iqn.2007-08.name.dns.target.my:iscsiboot
Furthermore, the LUN ID itself has a rather sophisticated set of rules for how it can be defined, but that goes beyond the scope of this article.