请教:coyote linux里面获取PPP0的地址脚本该怎么写?

我用的是WINDOWS版本的COYOTE向导2.03创建的盘。工作正常。
使用IPCHAINS完成NAT和IPMASQ.
我装了TOOLPAK2,可是里面的PPP-UP不好用。PPP-DOWN倒是没有问题。
于是我利用现有的脚本,想自己写一个刷新ADSL ip的脚本,结果执行正常,但是就是不能正确返回IP显示在屏幕上。请大家指教!

我写的脚本:
#!/bin/sh
echo "Rockern# shut down pppoe ......"
ppp-down
echo "Rockern# reconnect pppoe ........."
/etc/rc.d/rc.pppoe
PPPIP=`getifaddr ppp0`
echo "PP IP Address: $PPPIP"

执行之后功能没有问题,但是不能显示出新的IP地址,返回:
Disconnecting ppp0 from ...
Shutting down ppp daemon...
sig = 15
All done...to reconnect to enter ppp-up
Rockern# reconnect pppoe .........
Starting PPPoE ...
PPP IP Address: Error getting address - ioctl() failed

我把脚本里面的语句改为PPPIP=123123,返回就正确了
PPP IP Address:123123

不知道问题出在哪里,请各位前辈教育一下我这个小菜鸟

这是我的第一个脚本,关键的两句PPPIP=...是从这个软盘版LINUx里面的另一个文件里面抄过来的,叫showcfg,其中部分关键语句如下:
if [ "$USEPPPOE" = "YES" ]; then
PPPIP=`getifaddr ppp0`
if [ $? = 0 ]; then
echo "PPOE IP Address: $PPPIP"
else
echo "Unable to obtain IP Address for PPPOE Adapter, it may currently be offline."
fi
它运行正常,返回:
---------------Internet configuration------------
PPPOE IP Address: 61.183.89.46

很奇怪为什么几乎一样的脚本,结果却不同。请各位老大指教!
菜鸟拜谢!!!这个是处男脚本,刚刚起步,请大家多指点了!