I believe DHCP is a sensible way to implement an IP assignment into pppd. The scenarios I have used over the years for IP address assignment, all of which are useful, are:
1. dynamic IP addresses via pppd (or dhcp in this case) 2. static IP address via Radius. The key point here is that an Framed-IP-Address attribute from Radius takes preference over pppd/dhcp 3. Named Pools. This is where a session is assigned an address from a known range based, usually, on a users domain name. (3. is usually implemented by returning radius attributes that point the LNS to a particular local pool). 1 & 2 are important - especially the ability to "overide" any local setting from Radius. Point 3. is an useful feature, but not essential in any implementation.
