Freeradius Framed-MTU
Nick Porter
nick at portercomputing.co.uk
Mon Mar 2 17:54:03 UTC 2026
On 02/03/2026 03:36, Kat via Freeradius-Users wrote:
> Based on your email, I took another look and I found reference to
> Framed-MTU in the etc/raddb/users file, so I uncommented that in and
> tried to set it to 1024. I saved the changes and restarted the server
> in -x. And then reconnected to check the logs. A subset of logs are
> provided below the email.
>
> Framed-MTU is being set to 1002 or 994, not 1024.
>
> eg:
> (24) Framed-MTU += 994
> (24) Framed-MTU = 1002
> (24) &session-state:Framed-MTU = 994
I've put comments into the logs below to show what these mean.
It's important to remember you have different lists of attributes at
play here, and the different operators (=, :=, += etc) are important and
have different behaviour.
> Google Gemini tells me it is because of this line:
> (24) [files] = noop
>
> and that the default setting of Framed-MTU that I brought back in is
> being disregarded because the supplicant has an identity.
A "noop" return from the files module means it did nothing.
> So do I need to put that identity in the users file and set the
> Framed-MTU there specifically?
You're getting lost in the weeds of AI unhelpfulness. I would strongly
recommend not using Gemini for this - it is getting more wrong that right.
There is no one correct way to set a reply attribute - it all depends on
your requirements.
The files module provides a text database which can be used to map
attributes in the request to setting attributes in the reply (that's a
very over simplified description)
>
>> If you are running into issues with fragmentation on the packets from
>> client to server, then usually the key is getting path MTU discovery to
>> work correctly.? Failing that, it is a matter of ensuring that fragments
>> are not getting dropped by firewalls.
>
> I would like to set the Framed-MTU because I have been asked to do so.
> I don't know if it will help them or not but I want to do it because I
> have been asked to do so.
Sometimes you have to do something you know will not work to prove that
it won't work - this sounds like one of those cases.
> Why they want to set Framed-MTU is because Freeradius is returning
> many debug lines that look like this:
>
> (458002) Cleaning up request packet ID 112 with timestamp +945036 due
> to cleanup_delay was reached
That is a perfectly normal message from FreeRADIUS.
When FreeRADIUS sends a reply, it caches that reply for a period,
determined by cleanup_delay. This is so that if it receives a
retransmit of the original packet, it can send the reply without
re-processing the packet.
So - no amount of setting reply attributes will get rid of those debug
messages - they are perfectly normal.
> Example logs:
> (24) Received Access-Request Id 193 from 172.17.0.1:52424 to
> 172.17.0.2:1812 length 243
> (24) Framed-MTU = 1002
This instance of Framed-MTU is in the packet received from the client -
all the attributes presented indented under the "Recevice..." line are
the incoming packet.
> (24) Restoring &session-state
> (24) &session-state:Framed-MTU = 994
Here a value of Framed-MTU in the session-state list is being restored -
so that has been set at some point in a previous packet exchange which
formed part of the exchange
>
> (24) post-auth {
> ...
> (24) update {
> (24) &reply::Framed-MTU += &session-state:Framed-MTU[*] -> 994
Here the an instance of Framed-MTU in the reply is being set from the
session-state instance.
>
> (24) Sent Access-Accept Id 193 from 172.17.0.2:1812 to
> 172.17.0.1:52424 length 173
> (24) MS-MPPE-Recv-Key =
> 0x9e7d6bc3e620c918df655f5b6f3df6354afb8a122a23d067e577eeceef5d41dd
> (24) MS-MPPE-Send-Key =
> 0x30c4a64e47a5fadfdbe66e814dda937c5a16d504439fdb0c7e21602acbc3664b
> (24) EAP-Message = 0x03f50004
> (24) Message-Authenticator = 0x00000000000000000000000000000000
> (24) User-Name = "redacted"
> (24) Framed-MTU += 994
> (24) Finished request
So the reply contains the value set from the session-state data.
You have two choices:
1) Look through the full debug for the client - there will be several
Access-Request -> Access-Challenge exchanges before this one - and
somewhere in that Framed-MTU is being added to session-state. Fix that
to be what you want it to be.
2) In post-auth, after the policy which is copying session-state to
reply, add an update section to override the value of Framed-MTU in the
reply. Make sure you use := as the operator to override any existing
values.
Nick
--
Nick Porter
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 665 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20260302/a21514ae/attachment.sig>
More information about the Freeradius-Users
mailing list