TFTP Server

Chapter 5. TFTP Server

5.1. Why using a TFTP server

It provides config files, bootstraps for PXE client.

5.2. How to install a TFTP server ?

In Mandrake Linux 8.1 the package is : tftp-server-0.17-7mdk. By default on Mandrake Linux 8.x, tftp server is launched from the xinetd server :

service xinetd start

The TFTP server sources can be downloaded here [6]

5.3. Xinetd Options

5.3.1. Disable

If you want to enable the server, the disable parameter must be set to no.

5.3.2. User

Specify the user that launch the tftpd server. For security reasons you can set this parameter to nobody.

5.3.3. Server

The path to the daemon, tftpd or in.tftpd.

5.3.4. Server_args

5.3.4.1. Block Size option

By default the tftp server negotiates with the client on the block size. Some tftp client are not able to handle the negotiation process. In this case you must tell the tftp server not to negotiate the block size using the -r blksize option.

5.3.4.2. Size ahead of time option

By default the tftp server negotiates with the client on the size ahead of time. Some tftp client are not able to handle the negotiation process. You can also prevent the tftp server to start the negotation on the timeout using the -r blksize option

5.3.4.3. Timeout option

By default the tftp server negotiates with the client on the timeout. Some tftp clients are not able to handle the negotiation process. You can disable the negotation on the size ahead of time using the -r tsize option.

5.3.4.4. Chrooting option

The -s /tftboot specify that our tftp server is chrooted to the tftpboot directory. So be careful when using the filename option in the file dhcpd.conf. It must be set to :

filename "/PXEClient/pxelinux.0"

and not to :

filename "/tftpboot/PXEClient/pxelinux.0"

5.4. Sample tftpd file

 

	service tftp
{
        disable                 = no
        socket_type             = dgram
        protocol                = udp
        instances               = 2
        wait                    = yes
        user                    = nobody
        server                  = /usr/sbin/in.tftpd
#       server_args             = -r blksize -r tsize -r timeout -v -v -s /tftpboot
        server_args             = -v -v -s /tftpboot
}

posted on 2012-03-13 18:47  Richard.FreeBSD  阅读(657)  评论(0编辑  收藏  举报

导航