[syslinux] syslinux.efi pxeboot across multiple subnets

Jason Matthews jason.david.matthews at gmail.com
Mon Nov 4 13:30:51 PST 2013


Hello,

I am attempting to setup a PXE setup for a network using multiple subnets.
The current layout has dhcp on one subnet (10.16.215.8/30), tftp on another
(10.16.194.0/23), and the system to be installed on yet another subnet (
10.16.233.0/24 [there's actually about 30 different subnets the system to
be installed could be on]).

When I have the system to be installed on the same subnet as the tftp
server, everything works fine. The system loads the adapter's pxe, connects
to dhcp, pulls an IP, downloads syslinux.efi from tftp server, starts
sending requests for the config file, downloads pxelinux.cfg/default, loads
the config, and starts installing (it's setup with timeout -1 and kickstart
to automate complete install).

When I put the system to be installed on a separate subnet as the tftp
server, the request for the config file is never received. The system loads
adapter's pxe, connects to dhcp, pulls an IP, downloads syslinux.efi from
tftp server, then hangs. The tcpdump from the tftp server taken from server
boot to hang plus waiting 5 minutes is posted at the bottom of this
message.

At first, I was thinking something in the routing structure was blocking
tftp downloads from across the subnets, but if I use grub.efi, I see the
requests and it downloads the efidefault file for grub. Using pxelinux.0
for legacy also works.

Any ideas what could be blocking the tftp request for the config when using
the different subnet? Any ideas on what I can try next to try and narrow
down the communication issue?

Thanks.

Different subnet as tftp server:

[root at orange test]# tcpdump -i bond0 port 69 -vv
tcpdump: listening on bond0, link-type EN10MB (Ethernet), capture size
65535 bytes
12:19:58.575731 IP (tos 0x0, ttl 63, id 34438, offset 0, flags [none],
proto UDP (17), length 78)
    10.16.233.15.winpoplanmess > 10.16.195.178.tftp: [udp sum ok]  50 RRQ
"sles113/syslinux.efi" octet tsize 0 blksize 1468
12:19:58.582689 IP (tos 0x0, ttl 63, id 34441, offset 0, flags [none],
proto UDP (17), length 70)
    10.16.233.15.c1222-acse > 10.16.195.178.tftp: [udp sum ok]  42 RRQ
"sles113/syslinux.efi" octet blksize 1468
12:20:00.729468 IP (tos 0x0, ttl 63, id 34766, offset 0, flags [none],
proto UDP (17), length 70)
    10.16.233.15.resacommunity > 10.16.195.178.tftp: [udp sum ok]  42 RRQ
"sles113/syslinux.efi" octet blksize 1468
^C
3 packets captured
3 packets received by filter
0 packets dropped by kernel
[root at orange test]#

Same subnet as tftp server:

[root at orange test]# tcpdump -i bond0 port 69 -vv
tcpdump: listening on bond0, link-type EN10MB (Ethernet), capture size
65535 bytes
12:02:47.397890 IP (tos 0x0, ttl 64, id 15902, offset 0, flags [none],
proto UDP (17), length 78)
    10.16.195.136.sesi-lm > 10.16.195.178.tftp: [udp sum ok]  50 RRQ
"sles113/syslinux.efi" octet tsize 0 blksize 1468
12:02:47.403277 IP (tos 0x0, ttl 64, id 15904, offset 0, flags [none],
proto UDP (17), length 70)
    10.16.195.136.houdini-lm > 10.16.195.178.tftp: [udp sum ok]  42 RRQ
"sles113/syslinux.efi" octet blksize 1468
12:02:48.546291 IP (tos 0x0, ttl 64, id 16229, offset 0, flags [none],
proto UDP (17), length 70)
    10.16.195.136.xmsg > 10.16.195.178.tftp: [udp sum ok]  42 RRQ
"sles113/syslinux.efi" octet blksize 1468
12:02:49.783532 IP (tos 0x0, ttl 64, id 16554, offset 0, flags [none],
proto UDP (17), length 77)
    10.16.195.136.fj-hdnet > 10.16.195.178.tftp: [udp sum ok]  49 RRQ
"sles113/ldlinux.e64" octet tsize 0 blksize 1408
12:02:50.907721 IP (tos 0x0, ttl 64, id 16821, offset 0, flags [none],
proto UDP (17), length 115)
    10.16.195.136.h323gatedisc > 10.16.195.178.tftp: [udp sum ok]  87 RRQ
"sles113/pxelinux.cfg/343ae9bc-e31f-e111-a358-b5532cb45845" octet tsize 0
blksize 1408
12:02:50.908895 IP (tos 0x0, ttl 64, id 16822, offset 0, flags [none],
proto UDP (17), length 99)
    10.16.195.136.h323gatestat > 10.16.195.178.tftp: [udp sum ok]  71 RRQ
"sles113/pxelinux.cfg/01-5c-f3-fc-6e-42-a0" octet tsize 0 blksize 1408
12:02:50.910003 IP (tos 0x0, ttl 64, id 16823, offset 0, flags [none],
proto UDP (17), length 87)
    10.16.195.136.h323hostcall > 10.16.195.178.tftp: [udp sum ok]  59 RRQ
"sles113/pxelinux.cfg/0A10C388" octet tsize 0 blksize 1408
12:02:50.911074 IP (tos 0x0, ttl 64, id 16824, offset 0, flags [none],
proto UDP (17), length 86)
    10.16.195.136.caicci > 10.16.195.178.tftp: [udp sum ok]  58 RRQ
"sles113/pxelinux.cfg/0A10C38" octet tsize 0 blksize 1408
12:02:50.912134 IP (tos 0x0, ttl 64, id 16825, offset 0, flags [none],
proto UDP (17), length 85)
    10.16.195.136.hks-lm > 10.16.195.178.tftp: [udp sum ok]  57 RRQ
"sles113/pxelinux.cfg/0A10C3" octet tsize 0 blksize 1408
12:02:50.913186 IP (tos 0x0, ttl 64, id 16826, offset 0, flags [none],
proto UDP (17), length 84)
    10.16.195.136.pptp > 10.16.195.178.tftp: [udp sum ok]  56 RRQ
"sles113/pxelinux.cfg/0A10C" octet tsize 0 blksize 1408
12:02:50.914248 IP (tos 0x0, ttl 64, id 16827, offset 0, flags [none],
proto UDP (17), length 83)
    10.16.195.136.csbphonemaster > 10.16.195.178.tftp: [udp sum ok]  55 RRQ
"sles113/pxelinux.cfg/0A10" octet tsize 0 blksize 1408
12:02:50.915312 IP (tos 0x0, ttl 64, id 16828, offset 0, flags [none],
proto UDP (17), length 82)
    10.16.195.136.iden-ralp > 10.16.195.178.tftp: [udp sum ok]  54 RRQ
"sles113/pxelinux.cfg/0A1" octet tsize 0 blksize 1408
12:02:50.916381 IP (tos 0x0, ttl 64, id 16829, offset 0, flags [none],
proto UDP (17), length 81)
    10.16.195.136.iberiagames > 10.16.195.178.tftp: [udp sum ok]  53 RRQ
"sles113/pxelinux.cfg/0A" octet tsize 0 blksize 1408
12:02:50.917464 IP (tos 0x0, ttl 64, id 16830, offset 0, flags [none],
proto UDP (17), length 80)
    10.16.195.136.winddx > 10.16.195.178.tftp: [udp sum ok]  52 RRQ
"sles113/pxelinux.cfg/0" octet tsize 0 blksize 1408
12:02:50.918591 IP (tos 0x0, ttl 64, id 16831, offset 0, flags [none],
proto UDP (17), length 86)
    10.16.195.136.telindus > 10.16.195.178.tftp: [udp sum ok]  58 RRQ
"sles113/pxelinux.cfg/default" octet tsize 0 blksize 1408
^C
15 packets captured
15 packets received by filter
0 packets dropped by kernel
[root at orange test]#


More information about the Syslinux mailing list