Bug 1023645
Summary: | tftpd launched by systemd tftp.socket does not respond from secondary IP addresses | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Andrew J. Schorr <aschorr> |
Component: | tftp | Assignee: | Jan Synacek <jsynacek> |
Status: | CLOSED CANTFIX | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | 19 | CC: | jsynacek, pertusus, squinney, tschneider |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2014-02-19 08:01:46 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Andrew J. Schorr
2013-10-26 12:57:43 UTC
The problem seems to be related to the IPv4 to IPv6 mapping. With this patch to tftp.socket, everything works properly on my network (which is using IPv4): --- usr/lib/systemd/system/tftp.socket.orig 2013-04-23 03:43:43.000000000 -0400 +++ usr/lib/systemd/system/tftp.socket 2013-10-28 13:59:28.125950493 -0400 @@ -2,7 +2,7 @@ Description=Tftp Server Activation Socket [Socket] -ListenDatagram=69 +ListenDatagram=0.0.0.0:69 [Install] WantedBy=sockets.target I don't know how to fix this in the general case. It would be nice if systemd had a setting BindIPv4Only. Perhaps the tftpd code can be patched to handle this case properly, but I do not know exactly what is going wrong with the v4 to v6 mapping. I don't think this patch would work for ipv6 connections. Try adding ListenDatagram=[::]:69 BindIPv6Only=both or any combination of the two (BindIPv6Only should default to "both", but just to be sure...) to the tftp.socket file if that helps. This bugzilla has gone without response for about 3 months now. Closing. I do not have IPv6 infrastructure, so I cannot test that aspect. I can only tell you for sure that the tftp.socket file does not work as shipped. I do not see why you closed the bug. A fix is required. (In reply to Andrew J. Schorr from comment #4) > I do not have IPv6 infrastructure, so I cannot test that aspect. I can only > tell you for sure that the tftp.socket file does not work as shipped. I do > not see why you closed the bug. A fix is required. I am still seeing this problem with 5.2-12.el7 on EL7.2 I've tried BindIPv6Only=both with various formats for the value of the ListenDatagram option but the only way to get IPv4 support to work is to specify 0.0.0.0:69 which seems to contradict the details given in the systemd.socket manual page. Stephen Quinney I am also seeing this issue [root@localhost ~]# cat /etc/centos-release CentOS Linux release 7.2.1511 (Core) I discovered this issue while PXE booting. My PXE server has multiple NICs and hosted a tftp and dhcp server. On the first boot, when a client had no dhcp lease, the client would successfully negotiate the dhcp information tftp files. If a dhcp client were to PXE boot a second time, the tftp server would not respond. In the /var/log/messages I could see the incoming requests etc but when I used tshark to sniff the traffic I saw no outbound messages from the server. This issue was fixed with Andrew J. Schorr's suggestion and a little research. I have changed by configurations to be as follows: ListenDatagram=0.0.0.0:69 I think this issue should be reopened. At the very least I think the default configurations should be changed. |