Jack writes: > We're working on the iSCSI initiator in Solaris, it utilizes TCP/IP > protocol in kernel (so*) to enumerate block devices on the local host. > Users may need to access these block devices in an early booting up > time, e.g., by mount points in /etc/vfstab, or use them as shared DID or > quorum device in Cluster environment.
The problem sounds similar to booting via NFS. I'd suggest that you work with the NFS folks to make sure that the same solution that works there works for boot via iSCSI. (Robert Thurlow is probably a good contact.) In general, we rely on the booter to set up whatever routes it needs, particularly so if it must run before normal system services have started running. > I'm curious about if there is a service which is configurable, say, > online until a specified IP is routable. If so we can add a dependency > on it. No, that's just impossible. It's in the nature of TCP/IP. Other than simply sending packets to a given IP address and waiting for a reply, there's no way to know whether the routes in the kernel's forwarding table are sufficient to reach that given destination. Using RTM_GET on a routing socket will tell you whether a route to a destination exists, and you can listen to routes as they're being installed and removed, but it won't tell you whether any matched route is really the right one. Even if you do have the right one, it's impossible to tell whether any of the intermediate nodes will forward your packet for you -- without sending the packet. I think the best answer is the simple one: send and retransmit as necessary. -- James Carlson, Solaris Networking <[EMAIL PROTECTED]> Sun Microsystems / 35 Network Drive 71.232W Vox +1 781 442 2084 MS UBUR02-212 / Burlington MA 01803-2757 42.496N Fax +1 781 442 1677 _______________________________________________ networking-discuss mailing list [email protected]
