[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: hacking tftpd to support logging of "file names transfered" to syslog



tcpdump. ARGH! Why the hell didn't I think of that? Currently I'm
playing around with a couple of pre-built pxe loadable distrobutions -
currently the one in question if ThinBSD (based on FreeBSD,
thinstation is quite complicated, and pxelinux has no documentation
for setup boot over pxe, other ideas on easy setup pxe clients
welcome!).

Getting the NIC to download to get the initial boot loader is not an
issue. It is what happens after that I'm trying to follow.

The following is a snippit of my converstation with the thinbsd
developer (his reply to me):
===================
> this is what my P3 600Mhz client spits out:
>
> FreeBSD/i386 bootstrap loader, Revision 1.1
> (ftigeot_(_at_)_bajor_(_dot_)_zefyris_(_dot_)_com, Wed May 18, 20:40:09 UTC 2005)
> pxe_open: server addr: 172.16.6.5
> pxe_open: server path: /pxeroot
> pxe_open: gatewayip: 0.0.0.0
> start not found
> |
> can't load 'kernel'
>
> Type '?' for a list of commands, 'help' for more help.
> OK _

>From what I see, the ethernet adapter is not the problem yet. The boot
loader is unable to load the kernel.

On Mon, Sep 26, 2005 at 12:54:43PM -0600, Whyzzi wrote:
> The minus -s is in my inetd.conf:
>
> tftp          dgram   udp     wait    root    /usr/libexec/tftpd      tftpd -s /tftpboot
> #tftp         dgram   udp6    wait    root    /usr/libexec/tftpd      tftpd -s /tftpboot
>
> so that cant' be it.
>
> This leads me back to supported ethernet adapters. Does the FreeBSD
> Bootstrap loader as compiled in ThinBSD have a driver for the Intel
> 100/s Pro Desktop adapter? IMHO, This would explain why the script
> can't get back on the tftp server to continue the rest of the startup
> process...

There is no specific ethernet driver in the bootloader and no need for one
to be there. At this stage, the bootloader uses PXE services provided by a
BIOS firmware somewhere on your mainboard or NIC to handle network protocols
such as UDP and TFTP.

Wikipedia is a good start to learn how it works behind the scene:
http://en.wikipedia.org/wiki/Pre-Boot_Execution_Environment

Now, from what I see I still believe your client machine has trouble
transferring some files using tftp.
===================
Supported ethernet adapters are via  vr(4) or xl(4) driven NIC.

My current dhcpd.conf for isc-dhcpd from ports. I initially thought
dynamic dns would be good but the clients don't issue a host name so
nothing really becomes of it.
===================
#       $OpenBSD: DHCPD.CONF v 0.00a 2005/09/16 17:08:33 form Exp $
#	$OpenBSD: dhcpd.conf,v 1.1 1998/08/19 04:25:45 form Exp $
#
# DHCP server options. NetBSD based i386 diskless PXE HOW - TO
# See http://www.netbsd.org/Documentation/network/netboot/dhcpd.html
#

# Based on DDHCPDC.CONF file from akinsdale.sapl.ab.ca. , v 0.02a
#       on DHCP.CONF file from old services.sapl.ab.ca. , v 0.01

# server id & type
server-identifier akinsdale.sapl.ab.ca;
authoritative;

# dynamic dns update type; ad-hoc (depriciated) & interim
ddns-update-style interim;
ddns-updates on;
ddns-domainname "termserv.sapl.ab.ca";

# global dhcpd options for PXE booting
allow bootp;
allow booting;

option thinbsd-lang code 128 = text;
option thinbsd-use-rdp code 129 = boolean;
option thinbsd-rdp-server code 130 = ip-address;

# used as the shared secret update file between dhcpd and dns
include "/etc/ddns.key";

# dns zones to update
zone termserv.sapl.ab.ca
{    primary 127.0.0.1;
     key "ddns-key";
}

zone 6.16.172.in-addr.arpa
{    primary 127.0.0.1;
     key "ddns-key";
}

subnet 172.16.6.0 netmask 255.255.255.0
{
     range 172.16.6.100 172.16.6.199;
     option subnet-mask 255.255.255.0;
     option broadcast-address 172.16.6.255;

     option domain-name "termserv.sapl.ab.ca";
     option domain-name-servers 172.16.6.5;
     option routers 172.16.6.5;

     server-name "dhcp.termserv.sapl.ab.ca";
     server-identifier 172.16.6.5;

     max-lease-time 115200;
     default-lease-time 86400;

     host guinea-pig {
        hardware ethernet		0:d0:b7:5a:d1:91;
        fixed-address			172.16.6.200;
        filename			"boot/pxeboot";

        option thinbsd-lang		"en_US";
        option thinbsd-use-rdp		false;
	option x-display-manager	172.16.6.5;
	option font-servers		172.16.6.5;
     }
}
===================


The current connection is a crossover cable into one of two interfaces
in the back of OpenBSD box.

I appriciate the reply back. Thanks.
--
I know too much and yet not enough