3

For some reason, tftpboot does not work with a colon in filename parameter:

group {
  filename "node7:linux/pxelinux.0";

  host machine_7a  {
    hardware ethernet 02:01:02:02:01:11;
    fixed-address 192.168.10.8;
  }

  host machine_7b {
    hardware ethernet 02:01:02:02:01:12;
    fixed-address 192.168.10.9;
  }
}

If I change the colon to a dash -, the remote machines can tftpboot fine. Do you know why a colon in the filename parameter doesn't work?

UPDATE:

Output from /var/log/message when I set the filename to "node7-linux/pxelinux.0"

Jan 22 22:52:48 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 22:52:48 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 22:52:49 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 22:52:49 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 22:52:51 linux-yp1y dhcpd: DHCPREQUEST for 192.168.10.7 (192.168.10.1) from 02:01:02:02:01:11 via br0
Jan 22 22:52:51 linux-yp1y dhcpd: DHCPACK on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 22:52:51 linux-yp1y atftpd[12967]: Serving node7-linux/pxelinux.0 to 192.168.10.7:1024
Jan 22 22:52:51 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 22:52:51 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 22:52:52 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 22:52:52 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 22:52:54 linux-yp1y dhcpd: DHCPREQUEST for 192.168.10.7 (192.168.10.1) from 02:01:02:02:01:11 via br0
Jan 22 22:52:54 linux-yp1y dhcpd: DHCPACK on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 22:52:54 linux-yp1y atftpd[12967]: Serving node7-linux/pxelinux.cfg/default to 192.168.10.7:1024
Jan 22 22:52:54 linux-yp1y atftpd[12967]: Serving node7-linux/vmlinuz to 192.168.10.7:1025
Jan 22 22:52:55 linux-yp1y atftpd[12967]: Serving node7-linux/initrd to 192.168.10.7:1026
Jan 22 22:53:14 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 22:53:14 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 22:53:14 linux-yp1y dhcpd: DHCPREQUEST for 192.168.10.7 (192.168.10.1) from 02:01:02:02:01:11 via br0
Jan 22 22:53:14 linux-yp1y dhcpd: DHCPACK on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 22:53:15 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:12 via br0
Jan 22 22:53:15 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.8 to 02:01:02:02:01:12 via br0
Jan 22 22:53:15 linux-yp1y dhcpd: DHCPREQUEST for 192.168.10.8 (192.168.10.1) from 02:01:02:02:01:12 via br0
Jan 22 22:53:15 linux-yp1y dhcpd: DHCPACK on 192.168.10.8 to 02:01:02:02:01:12 via br0

Output from /var/log/message when I set the filename to "node7:linux/pxelinux.0":

Jan 22 23:16:57 linux-yp1y kernel: [343021.700191] br0: port 6(vnet6) entering forwarding state
Jan 22 23:16:57 linux-yp1y kernel: [343021.700296] device vnet6 left promiscuous mode
Jan 22 23:16:57 linux-yp1y kernel: [343021.700302] br0: port 6(vnet6) entering disabled state
Jan 22 23:16:57 linux-yp1y kernel: [343021.721423] br0: port 7(vnet7) entering forwarding state
Jan 22 23:16:57 linux-yp1y kernel: [343021.721467] device vnet7 left promiscuous mode
Jan 22 23:16:57 linux-yp1y kernel: [343021.721470] br0: port 7(vnet7) entering disabled state
Jan 22 23:16:58 linux-yp1y kernel: [343021.742969] br2: port 4(vnet8) entering forwarding state
Jan 22 23:16:58 linux-yp1y kernel: [343021.743040] device vnet8 left promiscuous mode
Jan 22 23:16:58 linux-yp1y kernel: [343021.743042] br2: port 4(vnet8) entering disabled state
Jan 22 23:16:58 linux-yp1y ifdown:     vnet6     
Jan 22 23:16:58 linux-yp1y ifdown: Interface not available and no configuration found.
Jan 22 23:16:58 linux-yp1y ifdown:     vnet7     
Jan 22 23:16:58 linux-yp1y ifdown: Interface not available and no configuration found.
Jan 22 23:16:58 linux-yp1y ifdown:     vnet8     
Jan 22 23:16:58 linux-yp1y ifdown: Interface not available and no configuration found.
Jan 22 23:17:01 linux-yp1y kernel: [343025.377050] device vnet6 entered promiscuous mode
Jan 22 23:17:01 linux-yp1y kernel: [343025.393810] br0: port 6(vnet6) entering forwarding state
Jan 22 23:17:01 linux-yp1y kernel: [343025.393814] br0: port 6(vnet6) entering forwarding state
Jan 22 23:17:01 linux-yp1y kernel: [343025.449562] device vnet7 entered promiscuous mode
Jan 22 23:17:01 linux-yp1y kernel: [343025.466276] br0: port 7(vnet7) entering forwarding state
Jan 22 23:17:01 linux-yp1y kernel: [343025.466280] br0: port 7(vnet7) entering forwarding state
Jan 22 23:17:01 linux-yp1y kernel: [343025.557549] device vnet8 entered promiscuous mode
Jan 22 23:17:01 linux-yp1y kernel: [343025.574265] br2: port 4(vnet8) entering forwarding state
Jan 22 23:17:01 linux-yp1y kernel: [343025.574270] br2: port 4(vnet8) entering forwarding state
Jan 22 23:17:03 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 23:17:03 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 23:17:04 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 23:17:04 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 23:17:05 linux-yp1y kernel: [343029.580829] br2: port 4(vnet8) entering forwarding state
Jan 22 23:17:06 linux-yp1y dhcpd: DHCPREQUEST for 192.168.10.7 (192.168.10.1) from 02:01:02:02:01:11 via br0
Jan 22 23:17:06 linux-yp1y dhcpd: DHCPACK on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 23:17:06 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:12 via br0
Jan 22 23:17:06 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.8 to 02:01:02:02:01:12 via br0
Jan 22 23:17:07 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:12 via br0
Jan 22 23:17:07 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.8 to 02:01:02:02:01:12 via br0
Jan 22 23:17:09 linux-yp1y dhcpd: DHCPREQUEST for 192.168.10.8 (192.168.10.1) from 02:01:02:02:01:12 via br0
Jan 22 23:17:09 linux-yp1y dhcpd: DHCPACK on 192.168.10.8 to 02:01:02:02:01:12 via br0
Jan 22 23:17:12 linux-yp1y kernel: [343035.804008] vnet8: no IPv6 routers present
Jan 22 23:17:12 linux-yp1y kernel: [343036.148005] vnet7: no IPv6 routers present
Jan 22 23:17:12 linux-yp1y kernel: [343036.397004] vnet6: no IPv6 routers present
Jan 22 23:17:24 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 23:17:24 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 23:17:25 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:11 via br0
Jan 22 23:17:25 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 23:17:27 linux-yp1y dhcpd: DHCPREQUEST for 192.168.10.7 (192.168.10.1) from 02:01:02:02:01:11 via br0
Jan 22 23:17:27 linux-yp1y dhcpd: DHCPACK on 192.168.10.7 to 02:01:02:02:01:11 via br0
Jan 22 23:17:27 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:12 via br0
Jan 22 23:17:27 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.8 to 02:01:02:02:01:12 via br0
Jan 22 23:17:28 linux-yp1y dhcpd: DHCPDISCOVER from 02:01:02:02:01:12 via br0
Jan 22 23:17:28 linux-yp1y dhcpd: DHCPOFFER on 192.168.10.8 to 02:01:02:02:01:12 via br0
Jan 22 23:17:30 linux-yp1y dhcpd: DHCPREQUEST for 192.168.10.8 (192.168.10.1) from 02:01:02:02:01:12 via br0
Jan 22 23:17:30 linux-yp1y dhcpd: DHCPACK on 192.168.10.8 to 02:01:02:02:01:12 via br0
Gilles 'SO- stop being evil'
  • 807,993
  • 194
  • 1,674
  • 2,175
Amumu
  • 553
  • 2
  • 6
  • 17

1 Answers1

3

PXELINUX supports the following special pathname conventions:

::filename Suppress the common filename prefix, i.e. passes the string "filename" unmodified to the server.

IP address::filename (e.g. node7::filename) Suppress the common filename prefix, and send a request to an alternate TFTP server. Instead of an IP address, a DNS name can be used. It will be assumed to be fully qualified if it contains dots; otherwise the local domain as reported by the DHCP server (option 15) will be added.

The double colon symbol ("::") was chosen because it is unlikely to conflict with operating system usage.

Attribution: Here

Ruban Savvy
  • 8,409
  • 8
  • 29
  • 43
  • Thanks for the info. So, if I use the syntax **::filename**, do I have to put in absolute path? I currently setup my `atftpd`'s default directory at `/tftpboot`. – Amumu Oct 20 '14 at 10:08