I had this set up for an Android and an OSX client. Ignore the networks part and configure the connections for the end points. I took the npppd assigned IPs out of my DHCP range.
My problems, though: Needed a specific npppd config for each client. Username, assigned IP, whatever else goes along with it. I could only get one device talking at a time. I think this was because npppd had the pppx0 interface hard coded in the config and the second device tried to create pppx1. At that point, I abandoned the setup and planned to rework what I was doing so I never got it 100% functional. Tim.