# Booting over PXE doesn't work - No TFTP download [SOLVED]

## schentuu

Problem Solved !!!!!

"next-server" line in /etc/dhcp/dhcpd.conf was missing

-------------------------------------------------------------------

Hi everybodey!

I want to install gentoo on an Sub-Notebook without any drives.

So I decidet to use PXE Network booting.

I've set up the Server as described in chapter 5 of this HowTo:

http://www.gentoo.de/doc/de/altinstall.xml (german)

The english version of this HowTo can be found under

http://www.gentoo.org/doc/en/altinstall.xml

dhcp, in.tftpd and nfs are started in runlevel default

The DHCP-Funktion of my DSL-Router is deactivated so that my gentoo-Server is the only DHCP-Server in the network.

Now, when i boot the PXE-client (my Notebook) I'll geht this output:

```

Intel UNDI, PXE-2.0 (build 074)

Copyright (C) 1997,1998,1999  Intel Corporation

CLIENT MAC ADDR: 00 00 0E D2 9D 2B  GUID: 8E2834ED-3C53-11D4-8B14-00000ED29D2B

CLIENT IP: 192.168.1.224  MASK: 255.255.255.0  DHCP IP: 192.168.1.222

Found Intel EtherExpressPro100 at 0x1440, ROM adress 0x0000

Probing...[Intel EtherExpressPro100]Ethernet addr: 00:00:0E:D2:9D:2B

Address: 192.168.1.224

Netmask: 255.255.255.0

Server: 0.0.0.0

Gateway: 0.0.0.0

_
```

The boot process stops at this point.

Is it correct, that the server-adress is 0.0.0.0 ?

Shouldn't it load GRUB from the server now?

I Have no idea what could be wrong.

If you need more information to help me with my problem, please ask!

greetingsLast edited by schentuu on Mon Oct 09, 2006 10:12 pm; edited 1 time in total

----------

## schentuu

Some of my config files:

```
schentuu ~ # cat /etc/dhcp/dhcpd.conf

option domain-name "domain";

default-lease-time 600;

max-lease-time 7200;

ddns-update-style ad-hoc;

subnet 192.168.1.0 netmask 255.255.255.0 {

    range 192.168.1.220 192.168.1.250;

}

option option-150 code 150 = text ;

host biblo {

    hardware ethernet 00:00:0E:D2:9D:2B;

    fixed-address 192.168.1.224;

    option option-150 "/biblo/boot/grub.lst";

    filename "/biblo/boot/pxegrub";

}
```

```
schentuu ~ # cat /etc/conf.d/dhcp.conf

option option-150 code 150 = text ;

ddns-update-style none ;

host biblo {

hardware ethernet 00:00:0E:D2:9D:2B;

fixed-address 192.168.1.224;

option option-150 "/biblo/boot/grub.lst";

filename "/biblo/boot/pxegrub";

}
```

```
schentuu ~ # cat /etc/conf.d/in.tftpd

# /etc/init.d/in.tftpd

# Path to server files from

#INTFTPD_PATH="/tftproot"

# For more options, see tftpd(8)

#INTFTPD_OPTS="-s ${INTFTPD_PATH}"

INTFTPD_PATH="/diskless"

INTFTPD_USER="nobody"

INTFTPD_OPTS="-u ${INTFTPD_USER} -l -vvvvvv -p -c -s ${INTFTPD_PATH}"
```

```
schentuu ~ # cat /diskless/biblo/boot/grub.lst

default 0

timeout 30

title=Diskless Gentoo

root (nd)

kernel /biblo/bzImage ip=dhcp root=/dev/nfs nfsroot=192.168.1.222:/diskless/biblo
```

if you need more, please ask!

----------

## vad3r

It seems the next-server parameter in your dhcp server config is missing. PXE doesn't know wtaht to do. As far as i see the documentation is missing this parameter. next-server specifies the tftp server to download the stuff from. I havent read it to the end but i'm pretty sure it's neccessary.

----------

## schentuu

 *vad3r wrote:*   

> It seems the next-server parameter in your dhcp server config is missing. 

 

could you please tell me the correct syntax of this parameter!

----------

## vad3r

```
next-server IP_OF_YOUR_TFTP_SERVER;
```

It's also very important that your paths for bootloader etc. are relative to yout tftp-root.

----------

## schentuu

i've addet the line

```
next-server 192.168.1.222
```

to my /etc/conf.d/dhcp.conf

but this changed nothing.

The problem remains the same.

The GRUB-files are located at /diskless/biblo/boot

The Kernel is located at /diskless/biblo/

```
schentuu ~ # ls -l /diskless/biblo/ | grep bzImage

-rw-r--r--  1 root root   1800063 Oct  9 12:26 bzImage

schentuu ~ # ls -l /diskless/biblo/boot | grep grub

-rw-r--r-- 1 root root    136 Oct  8 23:19 grub.lst

-rw-r--r-- 1 root root 115808 Oct  8 03:57 pxegrub

```

----------

## vad3r

Try this:

- Connect to your tftp server with a tftp client

- try to download the bootloader and kernel with exactly the path you specified in your dhcp config.

----------

## schentuu

Thank you Vad3r!

The Problem is solved now.

Adding the "next-server" Line was right!

But not to /etc/conf.d/dhcp.conf !

The Line has to be added to /etc/dhcp/dhcpd.conf  :Smile: 

(sorry my mistake!)

The correct /etc/dhcp/dhcpd.conf looks like this:

```

option domain-name "domain";

default-lease-time 600;

max-lease-time 7200;

ddns-update-style ad-hoc;

subnet 192.168.1.0 netmask 255.255.255.0 {

    range 192.168.1.220 192.168.1.250;

}

option option-150 code 150 = text ;

host biblo {

    hardware ethernet 00:00:0E:D2:9D:2B;

    fixed-address 192.168.1.224;

    option option-150 "/biblo/boot/grub.lst";

    filename "/biblo/boot/pxegrub";

    next-server 192.168.1.222;

}
```

And don't forget the ; behind the IP as i did in my first try!   :Wink: 

----------

