Bug 55789
Summary: | tftpd over IPv4 does not work with IPv6 enabled | ||
---|---|---|---|
Product: | [Retired] Red Hat Raw Hide | Reporter: | Joerg Dorchain <joerg> |
Component: | tftp | Assignee: | Elliot Lee <sopwith> |
Status: | CLOSED RAWHIDE | QA Contact: | David Lawrence <dkl> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 1.0 | CC: | hpa, pekkas, tomek |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i386 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2002-06-17 21:58:18 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Joerg Dorchain
2001-11-06 18:09:26 UTC
tftp doesn't support IPv6, period. Please talk to the author (hpa+rhbugs) about getting this implemented. No, the problem here is (confirmed by me) that tftp over IPv4 does not work if xinetd is v6-enabled. It works over localhost (source and destination are the same), but not otherwise; e.g.: 11:24:41.635054 nalle.1896 > netcore.fi.tftp: 20 WRQ "nalle-confg" 11:24:41.641243 netcore.fi.4726 > netcore.fi.1896: udp 4 (DF) 11:24:41.641382 netcore.fi > netcore.fi: icmp: netcore.fi udp port 1896 unreachable [tos 0xc0] 11:24:45.637429 nalle.1896 > netcore.fi.tftp: 20 WRQ "nalle-confg" 11:24:45.643871 netcore.fi.4726 > netcore.fi.1896: udp 4 (DF) 11:24:45.644004 netcore.fi > netcore.fi: icmp: netcore.fi udp port 1896 unreachable [tos 0xc0] note netcore.fi.1896 in the second line instead of nalle.1896! It would appear that this affects UDP services only probably due to differences how socket interface works. So, is there a 'possible' fix for this, is this more a kernel problem or just something that won't work? Read ya, Phil There seem to be about four possible courses of action I see: 1) rewrite parts of xinetd so that you can specify which services you want to enable IPv6 for and which not. A huge task, I fear. 2) rewrite parts of tftpd so that it recognizes the IPv6 socket structures fed to it from xinetd and works from that. Some patches already exist in OpenBSD tree (http://www.openbsd.org/cgi-bin/cvsweb/src/libexec/tftpd/tftpd.c , R1.21), but they'd require some adaptation for Linux as it works a bit differently. 3) don't start xinetd in IPv6 mode if UDP services are running unless explicitly requested, or in some way make the problem smaller. 4) ignore the problem now, possibly adding documentation in a README somewhere or the like -- IPv6 people are still rather marginal. tftp-hpa is so bloated and diverged from OpenBSD now so I wouldn't want to bother to try to fix it. Instead I ported NetBSD tftp and tftpd (both work with IPv4 and IPv6) to Linux.. If that's any consolation :-) They're available (incl. src.rpm) at http://www.netcore.fi/pekkas/linux/ipv6/ For tftp that's the best solution. For your xinetd proposal, IMHO there should be a possibility to get an IPv4-only socket from xinetd-ipv6, i.e. your proposal 1) (Can't be that difficult, e.g by having protocol = udp4) For the applications, like tftp, proposal 2) is best. 3) adds more problems than it solves (e.g. violates the least-surprise-priciple) 4) won't make the distro progress (And, BTW, I absolutely don't feel marginal ;-) This concrete bug could be considered solve by your tftp rpm. But then I have the same problems with comsat(biff)... For your xinetd proposal, IMHO there should be a possibility to get an IPv4-only socket from xinetd-ipv6, i.e. your proposal 1) (Can't be that difficult, e.g by having protocol = udp4) ==> have a look at xinetd source... It won't be pretty :-) This would be a preferred approach anyway, but lots of work.. Going to try Cc'ing the author on this bug... added 'flags = IPv4' to tftp-xinetd. I think that should solve it |