[syslinux] memdisk and iso, speed up

upen upendra.gandhi at gmail.com
Mon Jun 10 07:48:20 PDT 2013


On Sat, Jun 8, 2013 at 7:16 AM, upen <upendra.gandhi at gmail.com> wrote:

>
>
>
> On Sat, Jun 8, 2013 at 1:44 AM, Geert Stappers <stappers at stappers.nl>wrote:
>
>> Op 2013-06-07 om 12:20 schreef upen:
>> > On Fri, Jun 7, 2013 at 9:29 AM, Geert Stappers <stappers at stappers.nl>
>> wrote:
>> > > Op 2013-06-07 om 06:18 schreef upen:
>> > > > [ ... dhcp server configuration ... ]
>> > > > Everything has been always like this on tftp/dhcp server.
>> > >
>> > > That dhcpd config "works", what is missing is "shift to HTTP".
>> > >
>> > > The (speed) advantage of HTTP over TFTP is that HTTP "streams",
>> > > where TFTP does "go, stop, go, stop, go, stop".
>> > >
>> > > What is needed is 'dhcp option 209'
>> > >
>> > > See
>> > >
>> http://www.syslinux.org/wiki/index.php/PXELINUX#Can_I_send_information_to_PXELINUX_via_special_options_in_the_DHCP_response.3F
>> > > for a clue. Yes, this terse answer is the best I can offer now.
>> > >
>> > >
>> > How does this look?
>>
>> What I see is that we are also there.
>> There is some magic missing. ( pun intented :-) )
>>
>> >
>> > #ddns-update-style ad-hoc;
>> > ddns-update-style none;
>> > log-facility local7;
>> > deny unknown-clients;
>> > non-authoritative;
>> > #option domain-name "example.com";
>> > #option domain-name-servers ns1.example.com;
>>
>
> Ok. I will make the arrangement on the server to serve the linux-install
> via web and add the above magic line into my dhcpd.conf as suitable to my
> environment. Thanks!
>

>
>
>> > option subnet-mask 255.255.255.0;
>> > default-lease-time 600;
>> > max-lease-time 7200;
>> > #allow bootp;
>> > #allow booting;
>> > option ip-forwarding    false;  # No IP forwarding
>> > option mask-supplier    false;  # Don't respond to ICMP Mask req
>> > server-name "dhcp209l";
>> > next-server 192.168.0.100;
>> > option space pxelinux;
>> > option pxelinux.magic      code 208 = string;
>> > option pxelinux.configfile code 209 = text;
>> > option pxelinux.pathprefix code 210 = text;
>> > option pxelinux.reboottime code 211 = unsigned integer 32;
>> >
>> > subnet 192.168.0.0 netmask 255.255.255.0 {
>> >   range 192.168.0.1 192.168.0.88;
>> >   option routers 192.168.0.100;
>> > }
>> >
>> > host rhelclient {
>> >   next-server 192.168.0.100;
>> >   filename "linux-install/lpxelinux.0";
>>     option pxelinux.magic f1:00:74:7e;
>> >   option pxelinux.configfile "linux-install/pxelinux.cfg/default";
>>     option pxelinux.pathprefix "
>> http://a.web.server/path/to/linux-install/";
>> >   hardware ethernet 08:00:27:E7:34:E9;
>> >   fixed-address 192.168.0.88;
>>     option host-name "dhcp209l" ;
>> >
>> > I was able to stop and start dhcpd fine,
>> > with above configuration in dhcpd.conf.
>>
>> Okay, that means "the _syntax_ in configuration file is valid."
>>
>> Edit the dhcpd config again, proces my changes from above.
>> Start-Stop[1] dhcpd to get the changes active[2].
>>
>
> Will do.
>
My dhcpd.conf now looks like this:
host rhelclient {
site-option-space "pxelinux";
  next-server 192.168.0.100;
  option pxelinux.magic f1:00:74:7e;
  option pxelinux.configfile "linux-install/pxelinux.cfg/default";
  option pxelinux.pathprefix "http://192.168.0.100/linux-install/";
  filename "linux-install/lpxelinux.0";
  server-name "dhcp209l";
  hardware ethernet 08:00:27:E7:34:E9;
  fixed-address 192.168.0.88;
}

stop/started DHCPd . Copied my /tftpboot/linux-install/* to
/var/www/html/linux-install/* Changed tftp service configuration to use
/var/www/html/linux-install as base directory and restarted xinetd service.

After booting the PXE client, I have not seen the com32/vesamenu.c32
message again, and it boots straight into graphical menu with the picture I
set as background. It looks fine till this.


Now I choose the option for ISO. Here's where I found things are still not
consistent. It's 3-4 attempts for this option to get working. Most of times
it says file not found and resturn me to the original menu option.

When it works, it shows,
Loading memdisk ...ok
Loading http://192.168.0.100/hiren.iso...This finally lands me into the CD
menu, as expected. On the TFTP server I ran netstat to see if the client is
connected to port 80 on server, and sure it was. So the Xfer of file took
place via http.

The issue that it takes me 3-4 attempts on that menu option to get this
working is surprising but it sure looks like lost packets.

DHCP version: dhcp-3.0.5-33.el5_9
Xinetd version: xinetd-2.3.14-16.el5

/etc/xinetd.d/tftp
service tftp
{
    socket_type        = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server            = /usr/sbin/in.tftpd
    #server_args        = -s /tftpboot
    server_args        = -s /var/www/html
    disable            = no
    per_source        = 11
    cps            = 100 2
    flags            = IPv4
    bind            = 192.168.0.100





>
>
>>
>> > I changed server-name to dhcp209l and updated /etc/hosts with new host
>> > entry of this name with ip of eth1.
>>
>> Ack[3].
>>
>>
>> Now netboot the client again.
>> It should shift from TFTP to HTTP.
>>
>> Please report your milage.
>>
>
> Okay.
>
>>
>>
>> > upen,
>> > emerge -uD life (Upgrade Life with dependencies)
>>
>>
>> Groeten
>> Geert Stappers
>> Enjoying life with "apt" and other Debian goodies
>>
>
> I am still upgrading..Lol..
>
>
>> [1] IIRC has ISC-dhcpd no reload option
>> [2] it is also a syntax validation check
>> [3] Seen the remark on update of /etc/hosts and something with eth1
>> --
>> Leven en laten leven
>>
>
> Thank you all.
> Upen
>



-- 
upen,
emerge -uD life (Upgrade Life with dependencies)


More information about the Syslinux mailing list