Forum Discussion
RADIUS LB and port translation
I just discovered a concerning problem in the way that the LTM is handling some of our RADIUS traffic. I can see through a network trace that there are times when the LTM translates the source port of a RADIUS request on the internal VLAN. And on the internal side, everything looks fine. But when the response leaves the external VLAN, the LTM is not translating the source IP or source port. So when the RADIUS response packet arrives back at the client, it response with ICMP Port Unreachable and the RADIUS auth request fails.
To give you a visual idea of what's happening, here's what I see in the trace:
RADIUS Request (ext): client:32770->vip:1812
RADIUS Request (int): client:3046->PM:1812
RADIUS Response (int): PM:1812->client:3046
RADIUS Response (ext): PM:1812->client:3046 (wrong, should be vip:1812->client:32770)
Source Port translation on the VIP is set to "Preserve", and I have a UDP profile applied to the VIP which has datagram-load-balancing enabled (as discussed in a DevCentral load-balancing Cisco ISE thread).
This sequence happens only a very small percentage of the time, though the only time I see ICMP Port Unreachable packets is during this specific sequence of events. The first question I'm asking myself is why is the LTM translating the port at all? I thought it would only do this when the connection table is exhausted. But when I look for connections to the VIP in the connection table, it is always zero.
Any thoughts on why I am seeing this behavior?
4 Replies
- amolari
Cirrostratus
4th line of tcpdump is a typo? should be on the ext interface, not the int. - pete_71470
Cirrostratus
When using Preserve, the ephemeral can be changed by LTM if it is already in use. Using "Preserve Strict" will keep the ephemeral even if in use (possibly causing future chaos with the connection).
- smp_86112
Cirrostratus
Yes, I understand this, generally speaking. What I can't explain is why the LTM is changing the source port, when I see /zero/ connections to the VIP in the connection table. If there was a conflict with an ephemeral, I should see at least /some/ connections - not zero.
- smp_86112
Cirrostratus
*sigh* Yes, typo. I just fixed it. Thanks for letting me know.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com