Хочу предложить на суд общественности свою версию решения этой проблемы.
Следующий код помещается в исполняемый файл, который в свою очередь лежит в папке /etc/crton.hourly
#!/bin/bash
iface=ppp0
( ifconfig | grep $iface > /dev/null && exit 0) ||
(echo "***************************" >> /var/log/test_iface.log;
date >> /var/log/test_iface.log;
echo Interface $iface have not been up! >> /var/log/test_iface.log;
/etc/init.d/networking restart;)
Вроде бы пока работает, но может быть как-то можно упростить скрипт.
Да... и еще... как-то хочется не перезагружать всю сеть, а только pppoe. Что для этого надо?