>И еще вопрос, как можно посмотреть/изменить значения mtu/mru для ng интерфейса
>используя ngctl ? Для интерфейса вообще ifconfig. Но тебе больше интересно вероятно mru ноды ng_ppp, который вообще корректно рулятся самой mpd.
>mpd: [pptp0] EAP-RADIUS: send REQUEST Type TLS #3 len:1496
>mpd: [pptp0] error writing len 1500 frame to bypass: Message too long
На сколько я понял из RFC, ввиду того, что EAP-TLS может обмениваться весьма большими блоками протокол предусматривает фрагментацию пакетов. В данном случае случае, так как mpd является просто EAP proxy эту фрагментацию должен выполнять RADIUS. По хорошему тебе стоит объяниться с ним на предмет MTU под который он режет пакеты, ибо для PPPoE пакеты в 1500 байт, как предполагает твой RADIUS недопустимы по определению.
То, что соединение устанавливается в первый раз объясняется тем, что mpd не чистит параметры линка после использования. Вставь в bundle.c после строки
b->pppConfig.links[l->bundleIndex].enableLink = 0;
строку
b->pppConfig.links[l->bundleIndex].mru = LCP_DEFAULT_MRU;
и думаю для pptp оно заработает.