]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
docs-v4: update troubleshooting with common errors page HIVE 7914
authornolade <nola.aunger@inkbridge.io>
Thu, 19 Feb 2026 21:27:12 +0000 (16:27 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Sat, 21 Feb 2026 16:34:51 +0000 (11:34 -0500)
24 files changed:
doc/antora/modules/troubleshooting/nav.adoc
doc/antora/modules/troubleshooting/pages/network/attribute_0.adoc
doc/antora/modules/troubleshooting/pages/network/attribute_header.adoc
doc/antora/modules/troubleshooting/pages/network/attribute_invalid_length.adoc
doc/antora/modules/troubleshooting/pages/network/attribute_overflow.adoc
doc/antora/modules/troubleshooting/pages/network/bind.adoc
doc/antora/modules/troubleshooting/pages/network/decode_failure.adoc
doc/antora/modules/troubleshooting/pages/network/index.adoc
doc/antora/modules/troubleshooting/pages/network/io_error.adoc
doc/antora/modules/troubleshooting/pages/network/message_authenticator_invalid.adoc
doc/antora/modules/troubleshooting/pages/network/message_authenticator_length.adoc
doc/antora/modules/troubleshooting/pages/network/message_authenticator_missing.adoc
doc/antora/modules/troubleshooting/pages/network/mismatched_length.adoc
doc/antora/modules/troubleshooting/pages/network/no_matching_request.adoc
doc/antora/modules/troubleshooting/pages/network/packet_fails_verification.adoc
doc/antora/modules/troubleshooting/pages/network/packet_too_large.adoc
doc/antora/modules/troubleshooting/pages/network/packet_too_small.adoc
doc/antora/modules/troubleshooting/pages/network/proxy_state_missing.adoc
doc/antora/modules/troubleshooting/pages/network/shared_secret.adoc
doc/antora/modules/troubleshooting/pages/network/too_many_attributes.adoc
doc/antora/modules/troubleshooting/pages/network/unexpected_request_code.adoc
doc/antora/modules/troubleshooting/pages/network/unexpected_response_code.adoc
doc/antora/modules/troubleshooting/pages/network/unknown_packet_code.adoc
doc/antora/modules/troubleshooting/partials/secret_wrong.adoc [new file with mode: 0644]

index f5891d1b961f92e52b9ad7971bdabdcb7c849c66..38ba9c800a87847e160df78e6176f47713e69052 100644 (file)
@@ -5,7 +5,7 @@
 *** Server does not start
 **** xref:network/bind.adoc[Failed binding to socket]
 
-*** Common Errors*
+*** Common Errors
 **** xref:network/shared_secret.adoc[Shared secret is incorrect]
 **** xref:network/packet_fails_verification.adoc[Packet fails verification]
 **** xref:network/message_authenticator_invalid.adoc[Message-Authenticator fail verification]
 **** xref:network/unexpected_request_code.adoc[Unexpected request code]
 **** xref:network/message_authenticator_missing.adoc[Message-Authenticator is missing]
 **** xref:network/proxy_state_missing.adoc[Proxy-State is missing]
-**** xref:network/no_matching_request.adoc[Did not find request which matched response]
+**** xref:network/packet_fails_verification.adoc[Packet fails verification]
+**** xref:network/no_matching_request.adoc[Did not find request which matches response]
 
 *** Other Errors
 **** xref:network/unexpected_response_code.adoc[Unexpected response code]
-**** xref:network/too_many_attributes.adoc[Packet contains too many attributes]
+**** xref:network/too_many_attributes.adoc[Too many attributes]
 **** xref:network/io_error.adoc[IO error]
 
 *** Rare Errors
index 58c294489f26dfd1851af592ab795ad1c2d1b7c4..2be54c6000452b07a4b36adc3db1f7409bfb5fdc 100644 (file)
@@ -1,6 +1,14 @@
 = Attribute 0 is Invalid
 
-Either the client is completely broken, or the packet is not RADIUS.
+This error indicates that a packet can't be processed as expected and means that:
+
+ * the client is completely broken, or
+
+ * the packet doesn't follow the RADIUS standards.
+
+RADIUS packets need to follow a format defined by RADIUS RFCs. These xref:developers:rfc/index.adoc[RFCs] standardise how users are authenticated on a network. If a packet doesn't meet the basic format requirements, it may show a problem with the client or the packet itself. For example, the client could send wrong or incomplete info. The packet might get corrupted during transmission or it could have come from a different protocol.
+
+To fix this issue, check that the client uses the RADIUS protocol. Also, ensure there are no software or hardware problems. Check that the client and server are communicating using the RADIUS protocol. To do this, check the packet capture or network traffic to confirm the packets being sent are properly formatted RADIUS packets.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 027f83f066fd3ada10fa85fe59977ff3b6c31168..8981e93923f8353358676f699e74bfbe53d1068e 100644 (file)
@@ -1,6 +1,8 @@
 = Attribute Header Overflows the Packet
 
-The client is either completely broken, or the packet is not RADIUS.
+The server detected a serious issue with the structure of a received packet. The attribute header extends beyond the end of the packet, which is not valid. This occurs when the client sending the packet is broken or has an incorrect setup.
+
+Another possibility is that the server didn't receive a valid RADIUS packet. The server can't process the packet as a RADIUS message because of this structural error(s). Review your configurations and verify the network's stability and congestion.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index f69d0294af0cab639b41d8f9961931a7b88108a4..bee481e6a034d24b7504e09199cc8a75811147a1 100644 (file)
@@ -1,6 +1,8 @@
 = Attribute has Invalid Length
 
-Either the client is completely broken, or the packet is not RADIUS.
+The server receives a network packet with an attribute that isn't the right length for the RADIUS protocol. The client sending the packet is broken and is sending invalid packets of the wrong size.
+
+Also, the data the server receives may not be a valid RADIUS packet. These packets may be some other network traffic that is unrelated or corrupted. In either case, the server can't process the packet as a valid RADIUS message because the attribute length is incorrect.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 8076abf7038527a26daef7f175eb423bce9415a6..4b88145db90ca3a7e4ed000406642279ddf0d3ef 100644 (file)
@@ -2,5 +2,9 @@
 
 The client is either completely broken, or the packet is not RADIUS.
 
+The server receives a network packet with an attribute that isn't the right length for the RADIUS protocol. The client sending the packet is broken and is sending invalid packets of the wrong size.
+
+Also, the data the server receives may not be a valid RADIUS packet. These packets may be some other network traffic that is unrelated or corrupted. In either case, the server can't process the packet as a valid RADIUS message because the attribute length is incorrect.
+
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 17f4e90d189dccddb3fbdd2c1b5bd259dad7c2b2..eff5ded0ba87d6f231fd4709da3c98bf23f8bb8b 100644 (file)
@@ -1,23 +1,10 @@
 = Failed binding to socket
 
-This error message is produced when the server cannot open a socket on
-the specified port.  There are a few reasons why this can happen, but
-the most common one is that there is already another instance of
-FreeRADIUS running.
+The FreeRADIUS server was unable to open a network socket on the specified port. The most common reason for this is that there's another FreeRADIUS instance running in the background.
 
-**Cause:** You are trying to run the server in
-xref:ROOT:debugging/radiusd_X.adoc[debug mode], without stopping the
-server that is running in the background.
+If you start the server in debug mode without stopping the current  process, it can't bind to the port.  To resolve this issue, stop any running FreeRADIUS server before you start it in debug mode.
 
-**Action:** Stop the server which is running in the background, and
-you can then run it in debug mode.
-
-**Cause:** The server does not have permission to open the given socket/port.
-
-**Action:** Check that the server has the correct UID/GID permissions.
-
-**Action:** Check that something like SeLinux is not preventing the
-server from opening sockets.
+Another possibility is that the server doesn't have the correct permissions (UID/GID) to open the socket. Security mechanisms like SeLinux can also block the server from accessing the port. To fix these issues, ensure the server has the correct permissions. Also, check your security settings to confirm that nothing is blocking socket access.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 20ac72824c7af53739e54fad05c103d724976b7e..2915059f6190cce8c9ab976c8e2601ebd7f0d4c1 100644 (file)
@@ -1,8 +1,13 @@
 = Failure Decoding the Packet
 
-The server is out of memory, or the packet has malformed VSAs, TLV
-nesting is too deep, or any other "packet is malformed in a weird way"
-problem.
+The message "Failure Decoding the Packet"  means that the server can't interpret a received network packet. This failure may be caused by one of the following:
+
+* The server has run out of memory, preventing it from processing the packet.
+* There are malformed Vendor-Specific Attributes (VSAs) within the packet.
+* The Type-Length-Value (TLV) is too deep.
+* Unusual or unexpected packet structures cause packets to be malformed in some weird way.
+
+In all these cases, the server can't process the packet because its format is invalid or corrupt.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 077ef6e05d31801be0d8a30f3323dd12aabeb952..d35848f4fa5d7e66f3fbc668f1ea54420a3186c0 100644 (file)
@@ -1,4 +1,4 @@
-= Errors
+= Network Errors
 
 If the server isn't processing packets, this is due to two common
 problems.  Either it is either not receiving packets, or else it
index 1ac150eb0be9f051dd7fb6dc18d6ffaa98c3830a..e9c1e7abaca4cf53088c9d8332c759ea8a581e81 100644 (file)
@@ -1,6 +1,19 @@
 = IO Error
 
-Some kind of network / OS error.  These are hard to debug.
+Network or OS errors can happen due to hardware failures, network issues, or unexpected system behaviour. These factors make diagnosis and resolution difficult. For example, a company might experience frequent downtime from an unreliable internet provider. Similarly, a website may crash when traffic exceeds the server's capacity.
+
+A small mistake in the network settings can cause many errors which may cause more disruptions including system failure. Also, the lack of standardisation and interoperability between systems makes things difficult. It becomes hard to find and fix the root cause of errors.
+
+Administrators can reduce risks by taking these steps:
+
+* Invest in strong infrastructure.
+* Perform regular maintenance and updates.
+* Develop emergency and/or backup plans.
+
+These actions help minimise downtime and keep operations running smoothly.
+
+To identify the issue, you may need to review logs, check system resources, or talk to network administrators. Fixing network and OS errors requires careful troubleshooting and in-depth knowledge of the FreeRADIUS eco-system.
+
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index f2dcecc83aac48d57e13b61af591350ab89ad64d..adbd34ff664016ef9406f47f4a68e78f1fc2eed5 100644 (file)
@@ -1,6 +1,6 @@
 = Message-Authenticator Fails Verification
 
-The shared secret is wrong.  Fix it.
+include::partial$secret_wrong.adoc[]
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 270a6e7f7e6d52e03b5925f892d0136cb35e3f78..26eca25014f9d06843351019d5d0b735288d7e13 100644 (file)
@@ -1,4 +1,4 @@
-= Message-Authenticator has Invalid Length
+= Message-Authenticator has invalid length
 
 This will pretty much never happen.  If it does, it means that the
 client is completely broken, or that the packet is not RADIUS.
index f4071c3a9ec4589e588b22e61cb3d45394f71cbf..9e5fc84af524ce47b2874a98465d326402771f61 100644 (file)
@@ -1,6 +1,11 @@
-= Message-Authenticator is Missing
+= Message-Authenticator is missing
 
-This is the BlastRADIUS stuff.
+This error happens when the Message-Authenticator attribute is missing from the RADIUS packet. This attribute is used to check the integrity and authenticity of RADIUS messages. The Message-Authenticator stops malicious attacks. Without it, the server faces serious risks, like the BlastRADIUS attack. BlastRADIUS attacks happen when the Message-Authenticator is missing or used incorrectly. Unauthorised users gain access to network resources and services, putting the system's security and integrity at risk.
+
+The Message-Authenticator attribute acts like a digital fingerprint for RADIUS messages. It verifies that the messages are genuine. Sending a packet without it is like not having a tracking number. It's difficult to check who sent it or what's inside. This error indicates a potential security risk when it appears. The packet may not be trustworthy or follow best practices. This highlights the urgency to fix the issue to prevent security breaches.
+
+
+This error can stem from a misconfigured RADIUS server or a faulty client. To resolve it and avoid future problems, understanding the cause is important.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 6da50fcfc4cfa0d5f2462deae912ff5f05d955f1..113630c52d2a700218cb07c3ad9c4f8b48b064ba 100644 (file)
@@ -1,6 +1,8 @@
 = Header 'Length' does not match received packet length
 
-The packet is likely not RADIUS.  Block the source IP address.
+The RADIUS protocol defines a header with a 'Length' value to indicate the packet's size. The packet header's 'Length' field shows a size that does not match the actual packet size.  If this value and the packet's actual size do not match, the packet is likely malformed or not a valid RADIUS packet.
+
+Discrepancies can occur because of network errors, misconfigured clients, or malicious activity. To be safe, we recommend blocking the source IP address to prevent any issues or attacks.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 2e5eef9bda6c527fc3cca187eeaf0338f23e4f0d..2cb13b52edcd4089d1d2ce770224a5b353cc6b7b 100644 (file)
@@ -1,15 +1,20 @@
-= Did not find Request which matches Response
+= Did not find request which matches response
 
-This message is produced by the
-xref:reference:raddb/mods-available/radius.adoc[`radius`] module.  It means that the module:
+The xref:reference:raddb/mods-available/radius.adoc[radius] module shows this error message when it sends packets. The issue may occur when the server:
 
-* sent a request
-* never got a response
-* gave up on the original request
-* finally received a response
+* Sent a request.
+* Never received a response.
+* Timed-out or gave up on the original request.
+* Finally received a response.
 
-This means that packet loss is occurring, or the next hop server is
-taking 30+ seconds to respond.  Fix it so that it responds quickly.
+This often indicates network issues and / or packet loss. Packets may
+be lost or delayed by the next hop server. If the server over 30
+seconds to reply, the original request fails. The late response cannot
+be linked to it.
+
+To resolve this, check the network for reliability and bandwidth
+availibility. Ensure the next hop server responds quickly, with
+minimal packet loss and delays.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index d1d92f70f80a0a62455ef6e3f7a38b6684db1892..7dc698e4dfad59e3c20438920785a0bcf140ec61 100644 (file)
@@ -1,6 +1,11 @@
-= Packet Fails Verification
+= Packet fails verification
 
-The shared secret is wrong.  Fix it.
+include::partial$secret_wrong.adoc[]
+
+If a packet fails verification, the server can't confirm if the packet is authentic, so the authentication process fails. The mismatch can happen during setup or password updates not being the same.
+
+An example is when a network administrator sets up a RADIUS client with a shared secret. But they forget to update the server with the same secret. When the client tries to authenticate, the packet won't be verified, and authentication fails.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
+
index 6d7818ddbea8de74702219394dcff04904a2add4..e0503660c01f6545242e9f271f7d6c2a4146cf80 100644 (file)
@@ -1,8 +1,8 @@
 = Packet Too Large
 
-RADIUS packets (with some caveats) are no more than 4K in size.  This
-error means that the client is sending too much data in one packet.
-It is likely misconfigured.
+The "Packet Too Large" error occurs when a client sends a RADIUS packet with too much data. The RADIUS protocol limits packet size to 4k, ensuring reliable communication and interoperability between network devices. If a packet exceeds this limit, the server can't process it and reports an error.
+
+This error means that the client is broken/misconfigured. Either the client sends too much data or doesn't follow the protocol guidelines. To fix this, check the client's setup and make sure it meets the RADIUS packet size limits.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index fb6a5e4b3dc4442abcfbe0a302cfb02497e3ff4a..b80d5d159942f5d8625998244ff9f9cad20ed7fc 100644 (file)
@@ -1,8 +1,6 @@
-= Packet Too Small
+= Packet too small
 
-RADIUS packets are at least 20 bytes.  If you get this error, then
-something is sending non-RADIUS packets to the RADIUS port.  Update
-any firewall rules to block traffic from that source IP.
+RADIUS packets must be at least 20 bytes in size. If you see this error, it means that non-RADIUS packets are being sent to the RADIUS port. Update your firewall rules to block traffic from that source IP.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 1967c32a68258674d625eeaba40e4caddcc99ff5..3a15f37d4c85ed7a04e9e2df31510668b346202c 100644 (file)
@@ -1,6 +1,12 @@
-= Proxy-State Missing
+= Proxy-State is missing
 
-this is for the BlastRADIUS stuff.
+This error occurs when the Proxy-State attribute is missing from a RADIUS packet. The Proxy-State attribute is vital for servers to track and manage requests. Without it, servers struggle to manage requests, which impacts authentication and performance.
+
+A missing Proxy-State attribute can pose serious security risks, including the BlastRADIUS attack. This attack can cause a denial-of-service or allow unauthorised network access. Without the Proxy-State attribute, the server is more open to attacks.
+
+The Proxy-State attribute also stops replay attacks. An intruder intercepts a real request and then resends it, thereby gaining unauthorized access. By including this attribute in RADIUS packets, servers can process requests securely.
+
+The Proxy-State attribute is critical for maintaining network security. It ensures RADIUS systems remain secure and reliable, but it requires proper configuration and management to function effectively.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index ecc0045718ef172381311e1b004bf9cb3b7abe64..cb5b6ef027fbd770a00dedc045c7863c0770aeb8 100644 (file)
@@ -1,6 +1,8 @@
-= Shared Secret is incorrect.
+= Shared secret is incorrect
+
+include::partial$secret_wrong.adoc[]
+
 
-The shared secret is wrong.  Fix it.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index d8d2c1ea97a2c9cadef4e65b0a3d4a5604691270..64411b1603eee3f98fa3bfad744a0da2aae560d0 100644 (file)
@@ -1,14 +1,10 @@
-= Too Many Attributes
+= Too many attributes
 
-Each `listen` section has a `max_attributes` configuration.  This
-prevents malicious clients from consuming large amounts of memory on
-the server for each request.
+If you see an error about max_attributes, it usually means a client is sending too many attributes. It's probably due to a misconfigured client or a possible attack on the server. Either way, check what the client is doing before changing the configuration.
 
-The value is large enough for nearly all common use-cases.  Take care
-before increasing it.
+The default value for max_attributes is high enough for most common use cases. However, if you do increase this limit, be careful. It might make the server vulnerable to resource exhaustion attacks.
 
-If you see this error, it's likely that a client is either malicious,
-or misconfigured.
+Each `listen` section has a `max_attributes` setting to limit the number of attributes that can be included in a single request. By enforcing this limit, the server protects itself from clients that might try to overload it. For example, malicious clients that consume large amounts of memory on the server for each request.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 30f3596dd0e385806b8814a56eeee13c9d40dba5..5bb2df34aed89403dd0848d1a1a9081f8736f0d0 100644 (file)
@@ -1,13 +1,16 @@
 = Unexpected Request Code
 
-Each `listen` section accepts only a limited number of packet types.
-This means that the client is sending packets that the server doesn't
-expect to receive.
-
-Since there is no negotiation in RADIUS, the client has no way of
-knowing that the server is configured to receive.  Fix either the
-client to not send those packets, or fix the server to accept those
-packets.
+This error occurs when a RADIUS server is set up incorrectly. The listen section specifies which RADIUS packets the server accepts on a port or interface. If a client sends a packet that does not match the configuration, the server rejects it and returns an "Unexpected Request Code" error.
+
+A key aspect of the RADIUS protocol is that it does not have a negotiation phase between the client and server. This is different from other protocols. For example, HTTP allows a client to send an OPTIONS request to check a server's capabilities. In contrast, a RADIUS client cannot discover which packet types a server will accept. This means someone has to manually adjust settings if there’s a mismatch. These issues cause admin problems. Many forum posts show challenges with RADIUS setups. Support requests also highlight these troubles. For instance, in a university, various departments may use different RADIUS clients. Making sure these clients work with the central RADIUS server can be complex.
+
+To fix an Unexpected Request Code error, you have two options. First, change the client to send only the expected packet types. This may involve updating the client’s software or adjusting its configuration files. This ensures the client works within the limits set by the server's listen section.
+
+You can also change the server's listen section to accept the packet types sent by the client. This may mean adding new sections or adjusting existing ones. This flexibility helps network admins configure the RADIUS server to fit their clients' needs. It ensures smooth communication and authentication.
+
+For example, adding a new listen section for a VPN service lets users access the network securely from remote locations. This does not disrupt existing authentication flows. By fixing the Unexpected Request Code issue, admins can build stronger RADIUS configurations. This improves network security and reliability.
+
+
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index d5fa7951bf8d435bbf8a03df18fbdf93d0470d0f..49fb6770628aa6854f990036f008c3ccb71b6c3d 100644 (file)
@@ -1,7 +1,8 @@
-= Unexpected Response Code
+= Unexpected response code
 
-Each request which is sent has a small number of valid responses.  A
-next hop can send a bad / wrong response.
+Each request sent has only a few valid responses that can be processed successfully. The next hop, such as a server or device, can send a bad or wrong response. When sending a request within a network protocol, only a limited set of responses is expected from the recipient. The invalid or incorrect response may be due to misconfiguration, software bugs, or unexpected network behavior.
+
+Receiving a bad or wrong response can disrupt normal operations and may need troubleshooting to find the cause and ensure systems communicate properly.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 9a9e3e54a475fb0f3cdf704eba668bcda08e981a..ba90c864af4b39941abc5b7b5fa936a09c4f89d3 100644 (file)
@@ -1,10 +1,12 @@
 = Unknown Packet Code
 
-The packet code is 0, or is larger than 53.
+This error occurs when the network processes RADIUS packets as part of the user authentication process. Each RADIUS packet has a "code" field that defines its type, like Access-Request or Access-Accept. The Internet Engineering Task Force (IETF) specifies valid codes in their documents. These codes must be between 1 and 53. Any code outside this range, such as 0 or above 53, is invalid and cannot be processed.
 
-The RFCs define a limited number of packet codes.
+When an invalid code appears, it usually means two things. First, the device or client sending the packet may not follow RADIUS rules. This can result in bad packets. It might happen if the manufacturer didn’t implement the protocol correctly or due to a software bug. For instance, a mistake in their RADIUS setup could lead to invalid codes.
 
-This can also mean that something is sending non-RADIUS packets to the RADIUS port.
+Second, the error might show that traffic not meant for RADIUS is sent to the RADIUS port. This often happens because of a misconfigured network or device. A network administrator may have set up a device to send extra traffic to the RADIUS port. This can overwhelm the server with bad packets.
+
+In both cases, the server cannot process the packet. This leads to authentication failures and potential network issues. To fix this, network administrators need to find the source of the problem, whether it's a faulty client or misconfigured settings. They must ensure only valid RADIUS packets reach the server. This may involve updating software, adjusting network settings, or blocking non-RADIUS traffic. By fixing the Unknown Packet Code error, administrators can stabilize the network and prevent future authentication issues.
 
 // Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
diff --git a/doc/antora/modules/troubleshooting/partials/secret_wrong.adoc b/doc/antora/modules/troubleshooting/partials/secret_wrong.adoc
new file mode 100644 (file)
index 0000000..2abcb17
--- /dev/null
@@ -0,0 +1,3 @@
+The shared secret is wrong. Fix it! RADIUS uses a shared secret, a key security feature, to ensure that communications are secure across the network and devices.  This is a password or key known only to the client and server.
+
+If you see this message, it means the shared secret on the client and server don’t match. To resolve this issue, check that the shared secret is identical on both the client and server.