Forum Discussion
Dec 16, 2015
You can use the
session
command to build and lookup a separated table.
Depending on which party provides the framed IP one of the following rules will be applied to your RADIUS virtual:
Client provides framed IP:
rule for radius in case client provides the framed IP
when LB_SELECTED {
log local0. "session table entry added: "
session add uie "persist:[RADIUS::avp 8]" [LB::server addr]
}
Server provides framed IP:
rule for radius in case server provides the framed IP
when SERVER_DATA {
log local0. "session table entry added: "
session add uie "persist:[RADIUS::avp 8]" [IP::remote_addr]
}
The following one will be bound to your virtual server for HTTP (may be used in context of CLIENT_ACCEPTED as well):
rule for webservice
when HTTP_REQUEST {
log local0. "session table lookup result: [session lookup uie "persist:[IP::client_addr]"]"
if {[session lookup uie "persist:[IP::client_addr]"] ne ""} {
log local0. "lookup match: [session lookup uie "persist:[IP::client_addr]"]"
node [session lookup uie "persist:[IP::client_addr]"]
}
}
I don´t have a RADIUS up and running for testing but replicated it with another service in v11.5.1.
Perhaps you need to adjust the RADIUS part. Thanks, Stephan