Simon Vallet
2006-Feb-15 17:03 UTC
[syslinux] [tftp-hpa] [BUG] Bad src address on replies from aliased interfaces
Hi, we're running tftp-hpa on a machine which will have to accept packets on an aliased IP (for service redundancy and fallback). The server is reachable using the alias, but replies using the primary IP of the interface, which provokes a timeout on the client. The workaround is to run tftp stand-alone and to explicitly specify the alias IP on the command-line -- however this is not very satisfactory, as it needs human intervention. Is there a bugzilla out there to report this ? Simon -- Simon Vallet Ing?nieur Syst?mes/R?seaux G?noscope / CNRG T?l. : 01 60 87 36 06 E-mail : svallet at genoscope.cns.fr
H. Peter Anvin
2006-Feb-16 01:42 UTC
[syslinux] [tftp-hpa] [BUG] Bad src address on replies from aliased interfaces
Simon Vallet wrote:> Hi, > > we're running tftp-hpa on a machine which will have to accept packets on > an aliased IP (for service redundancy and fallback). The server is > reachable using the alias, but replies using the primary IP of the > interface, which provokes a timeout on the client. > > The workaround is to run tftp stand-alone and to explicitly specify the > alias IP on the command-line -- however this is not very satisfactory, > as it needs human intervention. > > Is there a bugzilla out there to report this ? >No, there is not. What version of tftp-hpa are you running, and could you provide an strace of the session where this happens? tftp-hpa *is* supposed to report back using the same IP number that it received, so something is screwed up. -hpa
Simon Vallet
2006-Feb-16 16:08 UTC
[syslinux] [tftp-hpa] [Patch] Bad src address on replies from aliased interfaces
On Wed, 15 Feb 2006 17:42:32 -0800 "H. Peter Anvin" <hpa at zytor.com> wrote:> tftp-hpa *is* supposed to report back using the same IP number that it > received, so something is screwed up.I had some time to dig a bit into the problem, and it appears that there is a typo in recvfrom.c -- this prevented myrecvfrom() to retrieve the correct IP from the initial request, and it therefore returned a zeroed myaddr back to main. The patch fixes this, and the child does get the correct address when replying to the initial request. But the client still gets a timeout *on the first connection to the alias* -- subsequent ones are fine. This is very weird. Attached is the minimal patch to correct the typo, and a tcpdump output showing the first tftp request to the alias -- only the alias (.132) is replying (no more replies from the .129 address), however all it sends out are ICMP unreachables. Any ideas ? -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: tftp.patch URL: <http://www.zytor.com/pipermail/syslinux/attachments/20060216/5862b7a4/attachment.ksh> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: dump URL: <http://www.zytor.com/pipermail/syslinux/attachments/20060216/5862b7a4/attachment-0001.ksh>