I'm not sure if my approach is the proper way of doing this, so I'm going to describe what I'm trying to do, what my current plan is, and we can go from there.
I'm moving our ISP network over to entirely PPPoE/RADIUS for address assignment. This ties in with our management system (http://www.ispbrain.com), as well as makes my life a lot easier (I don't need to handle static IP addresses anymore, and I can add addresses to a router easily).
I would like to be able to hand out three totally different classes of address: Public IPs (for business clients), private IPs (for residential clients who don't need a public IP), and private IPs (for radios, separate from the residential range). All the devices will be getting their IP via PPPoE, authenticated against a RADIUS server.
The ideal solution would be to have three different profiles in a router, each with their own address pool assigned. The client would authenticate against the RADIUS server, receive the profile, and get assigned an IP out of the pool.
I'm not sure that this is supported, unfortunately. I haven't found a RADIUS attribute that appears to be "PPP Profile to use."
The other option I was thinking of is assigning each user/device a static IP in the RADIUS database, returned as Framed-IP-Address (I believe). This would require some work on the management system, but should work as well. Regardless of the way I hand out IPs, I'll be sending the Rate-Limit reply to set the bandwidth queues.
Any thoughts? Am I somehow missing the RADIUS attribute that selects the PPP profile? Or should I just hand out Framed-IP-Address with the RADIUS replies?