<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
 
I'm finally trying my two-subnet setup and have run into an issue. The
story goes like this: Client initiates on subnet 192.168.1.0/24 to
server's eth1 of 192.168.1.254 and is ACK'd 192.168.1.251 -- Client
boots kernel. Client requests 192.168.0.253 on subnet 192.168.1.0/24 to
server's eth1 of 192.168.1.254 and is ACK'd 192.168.0.253. Then, client
attempts to mount the root partition of 192.168.0.254:/opt/ltsp/i386,
and it hangs.<br>
<br>
I've gone through my dhcpd.conf file (attached for edification) and
don't notice anything jumping out at me. The logs are pasted below.
Does anyone have any suggestions? Is my DHCP handing out incorrect
addresses, not limiting them by subnet? Is this caused by an invalid
configuration?<br>
<br>
Jan 23 15:02:09 mail dhcpd: DHCPDISCOVER from 00:10:5a:19:b3:fa via eth1<br>
Jan 23 15:02:09 mail dhcpd: DHCPOFFER on 192.168.1.251 to
00:10:5a:19:b3:fa via eth1<br>
Jan 23 15:02:10 mail dhcpd: DHCPREQUEST for 192.168.1.251
(192.168.1.254) from 00:10:5a:19:b3:fa via eth1<br>
Jan 23 15:02:10 mail dhcpd: DHCPACK on 192.168.1.251 to
00:10:5a:19:b3:fa via eth1<br>
Jan 23 15:02:15 mail dhcpd: DHCPDISCOVER from 00:10:5a:19:b3:fa via eth1<br>
Jan 23 15:02:16 mail dhcpd: DHCPOFFER on 192.168.0.253 to
00:10:5a:19:b3:fa via eth1<br>
Jan 23 15:02:16 mail dhcpd: DHCPREQUEST for 192.168.0.253
(192.168.1.254) from 00:10:5a:19:b3:fa via eth1<br>
Jan 23 15:02:16 mail dhcpd: DHCPACK on 192.168.0.253 to
00:10:5a:19:b3:fa via eth1<br>
<br>
(this is the point at which the client hangs attempt to mount root)<br>
<br>
Kindest regards,<br>
 Michael<br>
<br>
Terrell Prudé Jr. wrote:
<blockquote cite="mid45A6273D.3040209@cmosnetworks.com" type="cite">
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
This is how I used to do x86, PPC, and UltraSPARC clients off of one
server.  It's certainly doable, but there are several things that you
get to modify:<br>
  <br>
/etc/dhcpd.conf<br>
/etc/hosts<br>
Some stuff under /opt/ltsp/<br>
  <br>
For /etc/dhcpd.conf, just copy 'n' paste your existing 192.168.0.0/24
scope, thus creating two scopes.  Wherever you see 192.168.0, replace
it with 192.168.1.  dhcpd is smart enough to know to hand out
192.168.1.0/24 addresses only on the interface in that subnet (I'm
assuming you'll use 192.168.1.254 for your server's new NIC).  Also,
make sure that you have a "next-server" setting in each of your DHCP
scopes that points to the appropriate NIC (192.168.0.254 for the
original scope, and 192.168.1.254 for the second, new scope).  That's
how your clients will know where to TFTP-boot from.<br>
  <br>
For /etc/hosts, you get to essentially replicate everything in there,
in a way that you avoid name/address resolution conflicts.  You know
all those entries that look like this?<br>
  <br>
192.168.0.9     ws009.ltsp      ws009<br>
  <br>
Well, you'll need to make 254 more entries to account for the clients
on the new (192.168.1.x) NIC.  But you can't have two "ws009.ltsp"
entries pointing to different addresses?  What do do?<br>
  <br>
My solution was to tweak the names so that my /etc/hosts has entries
like this:<br>
  <br>
192.168.0.009     ws0009.ltsp      ws0009<br>
  <br>
192.168.1.009     ws1009.ltsp      ws1009<br>
  <br>
192.168.2.009     ws2009.ltsp      ws2009<br>
  <br>
In my case, I simply added a digit to the hostname, specifically, the
third octet of the IP address.  A simple little script will generate
this for you:<br>
  <br>
****** CUT HERE ******<br>
rm mynewetchosts.txt<br>
for octet3 in `seq 0 2`<br>
do <br>
  for octet4 in `seq -w 1 254`<br>
  do <br>
    echo '192.168.'$a.$b'   ws'$a$b'.ltsp   ws'$a$b >>
mynewetchosts.txt<br>
  done<br>
done<br>
****** CUT HERE ******<br>
  <br>
Then, after backing up your original /etc/hosts (/etc/hosts.bak,
perhaps?), just copy this mynewetchosts.txt over to /etc/hosts.<br>
  <br>
Finally, we deal with /opt/ltsp/.  In my case, since my clients are
different CPU architectures, I needed /opt/ltsp/i386 (comes with
K12LTSP), /opt/ltsp/ppc, and /opt/ltsp/sparc.  Each of these
subdirectories served a different subnet.  Well, since all of your
clients are x86, then you get to have more than one "i386" directory
tree.  Why?  Yes, the binaries are the same, but you need to tell your
clients which IP address to talk to.  Just copy your entire
/opt/ltsp/i386 directory over to, say, /opt/ltsp/i386-1.  Head on into
this new /opt/ltsp/i386-1, and tweak lts.conf such that wherever you
see "192.168.0", you replace it with "192.168.1".  There should be only
a couple of spots, and, IIRC, the critical one is the "SERVER" variable.<br>
  <br>
Note that, in your second DHCP scope in /etc/dhcpd.conf, you will need
to tweak "option root-path" to point to /opt/ltsp/i386-1.  In my
/etc/dhcpd, I've got three scopes, one pointing to /opt/ltsp/i386, one
pointing to /opt/ltsp/ppc, and one pointing to /opt/ltsp/sparc.  The
reason you have to do that is because this is the directory that your
LTSP clients use to do the pivot-root.  In your case, each of your
/opt/ltsp/i386 and /opt/ltsp/i386-1 will be pointing to a different IP
address (NIC) on your LTSP server.<br>
  <br>
Once you're done, you should be able to turn up your second NIC, bounce
dhcpd, and have clients netbooting on your other subnet.<br>
  <br>
HTH,<br>
  <br>
--TP</blockquote>
<br>
<div class="moz-signature">-- <br>
<p>If this is my day of harvest, in what fields have I sowed the seed,
and in what unremembered seasons?<br>
- Kahlil Gibran</p>
<br>
<p>CONFIDENTIALITY NOTICE: This message, and any attachments that may
accompany it, contain information that is intended for the use of the
individual or entity to which it is addressed and may contain
information that is privileged, confidential, or otherwise exempt from
disclosure under applicable law. If the recipient of this message is
not the intended recipient, any disclosure, copying, or other use of
this communication or any of the information, which it contains is
unauthorized and prohibited. If you have received this message in
error, please notify the original sender by return mail and delete this
message, along with any attachments, from your computer. Thank you.</p>
</div>
</body>
</html>