Есть xl2tpd (пробовал и на accel-pppd). Нужно раздать клиентам фиксированные и разные local и remote адреса. Стандартный вариант через chap-secrets позволяет указать только local адрес, remote при этом все получают одинаковый согласно опции local ip в xl2tp или gw-ip-address в accel-ppp.
Если динамически раздавать адреса из пула, то все работает - пары адресов выдаются всем индивидуальные. Но нужна статика. Radius не хочется.