{
  "id": "networking/tftp-timeout-no-response",
  "signature": "TFTP: timeout waiting for data packet from 192.168.1.100:69",
  "signature_zh": "TFTP：等待来自192.168.1.100:69的数据包超时",
  "regex": "TFTP.*timeout waiting for data packet|tftp: timeout",
  "domain": "networking",
  "category": "network_error",
  "subcategory": null,
  "root_cause": "A TFTP client sent a read/write request to the server but received no data packet within the timeout period, typically due to firewall blocking UDP port 69, incorrect file path, or server overload.",
  "root_cause_type": "generic",
  "root_cause_zh": "TFTP客户端向服务器发送了读/写请求，但在超时时间内未收到数据包，通常由防火墙阻止UDP 69端口、文件路径错误或服务器过载引起。",
  "versions": [
    {
      "version": "tftp-hpa 5.2",
      "introduced": null,
      "deprecated": null,
      "removed": null,
      "behavior_change": null,
      "status": "active"
    },
    {
      "version": "Cisco IOS 15.9",
      "introduced": null,
      "deprecated": null,
      "removed": null,
      "behavior_change": null,
      "status": "active"
    },
    {
      "version": "Linux tftp client 0.17",
      "introduced": null,
      "deprecated": null,
      "removed": null,
      "behavior_change": null,
      "status": "active"
    }
  ],
  "os_specific": {},
  "dead_ends": [
    {
      "action": "",
      "why_fails": "If the firewall is blocking the port or the file does not exist, no amount of waiting will help; the request will still fail after the extended timeout.",
      "fail_rate": 0.75,
      "condition": "",
      "sources": []
    },
    {
      "action": "",
      "why_fails": "The client implementation is rarely the issue; the problem is almost always server-side or network-layer.",
      "fail_rate": 0.6,
      "condition": "",
      "sources": []
    },
    {
      "action": "",
      "why_fails": "This is a security risk and may not solve the problem if the server's firewall is the blocker; also, it does not verify the server is running.",
      "fail_rate": 0.5,
      "condition": "",
      "sources": []
    }
  ],
  "workarounds": [
    {
      "action": "Check server connectivity with `tftp 192.168.1.100 -c get /path/to/file` and verify the server is running: `systemctl status tftpd-hpa`",
      "success_rate": 0.85,
      "how": "Check server connectivity with `tftp 192.168.1.100 -c get /path/to/file` and verify the server is running: `systemctl status tftpd-hpa`",
      "condition": "",
      "sources": []
    },
    {
      "action": "Allow TFTP traffic through the firewall: `iptables -A INPUT -p udp --dport 69 -j ACCEPT` and ensure the TFTP server is not bound to localhost only.",
      "success_rate": 0.9,
      "how": "Allow TFTP traffic through the firewall: `iptables -A INPUT -p udp --dport 69 -j ACCEPT` and ensure the TFTP server is not bound to localhost only.",
      "condition": "",
      "sources": []
    },
    {
      "action": "Test with a known good file in the server's root directory (e.g., /srv/tftp) to rule out permission issues: `chmod 644 /srv/tftp/test.txt`",
      "success_rate": 0.8,
      "how": "Test with a known good file in the server's root directory (e.g., /srv/tftp) to rule out permission issues: `chmod 644 /srv/tftp/test.txt`",
      "condition": "",
      "sources": []
    }
  ],
  "workarounds_zh": [
    "Check server connectivity with `tftp 192.168.1.100 -c get /path/to/file` and verify the server is running: `systemctl status tftpd-hpa`",
    "Allow TFTP traffic through the firewall: `iptables -A INPUT -p udp --dport 69 -j ACCEPT` and ensure the TFTP server is not bound to localhost only.",
    "Test with a known good file in the server's root directory (e.g., /srv/tftp) to rule out permission issues: `chmod 644 /srv/tftp/test.txt`"
  ],
  "transition_graph": {
    "leads_to": [],
    "preceded_by": [],
    "frequently_confused_with": []
  },
  "official_doc_url": "https://linux.die.net/man/1/tftp",
  "official_doc_section": null,
  "error_code": "ETIMEDOUT",
  "verification_tier": "ai_generated",
  "confidence": 0.82,
  "fix_success_rate": 0.78,
  "resolvable": "true",
  "first_seen": "2023-07-22",
  "last_confirmed": "2024-06-01",
  "last_updated": "2024-06-01",
  "evidence_count": 1,
  "tags": [],
  "locale": "en",
  "aliases": []
}