You can use nested expansions / alternation...
%{%{%{remote-id}:-%{circuit-id}}:-%{mac-address}}
See the debug output for the actual names of the attributes.
Use that for the key, and then whatever is there will just work.
ok, I'll dig into that.
It appears that all DHCP servers work under the assumption that if you want to do something like this you'll radius back it against a database w/ CRM etc. I don't really care about the database part of this initially.
Thoughts? is this something freeradius can be configured to handle without adding a database backend?
It's difficult to do DHCP assignment without a database. You generally need some way to track the IP address assignments.
Alan DeKok.
I don't really want to track IPs in a database, I want them in my routers so I'd prefer freeradius as just the radius backend, not using it's DHCP capabilities. Ideally, I want to use Mikrotik's DHCP server hitting freeradius because I don't really want to track the IPs so much as just offer a very long lease and I'd prefer the visibility of that right in the router itself. I might be missing something here though. DHCP request comes in w/ option 82 extra data, forwards to radius, freeradius replies with a client ID based on what I've used to filter yes? ie, request comes in with remote id of '00:11:22' so I want freeradius to reply with client id of 00:11:22' and 'dhcp pool = users' and 'accept'. Then my router will hand out an address from pool 'users' and the lease will show that client id. If another dhcp request comes in with a different MAC but the same option 82 remote ID, radius will do the same thing, reply back with the client id and the lease get's updated/replaced. Does this makes sense?