IP="$(ifconfig ppp0 |grep "inet addr:" |sed 's/addr://g'| awk '{print $2}')"
IP_YANDEX="$(grep . ~/ip-yandex)"
if [[ "$IP_YANDEX" != "$IP" ]]
then
echo $IP > ~/ip-yandex
TOKEN=#здесь наш токен
DOMAIN=#здесь домен
SUB=#это хост
RECID=#и тут тоже что-то
TTL=1800
curl -k https://pddimp.yandex.ru/nsapi/edit_a_record.xml?token=$TOKEN\&domain=$DOMAIN\&subdomain=$SUB\&record_id=$RECID\&content=$IP\&ttl=$TTL
fi
Здесь приложение pppd вписывает IP-адрес в log и ещё даже время не синхронизировалось.
pppd запрашивает IP, у провайдера во время запуска и всё. Потом запросов уже не происходит. И если нет исходящих интернет-сессий, то у роутера нет свежего IP. Адрес обновляется пассивно, вместе с пакетами входящего трафика, а когда трафика нет, то может так случиться, что и доступа извне может не стать. Как и гипотеза Анатолия, так и это — гипотеза, и если есть у кого что добавить, относительно работы утилиты ifconfig и приложения pppd, то поправьте меня.