Skip to content

关于P版的PPPoE拨号问题

fuyumi edited this page May 23, 2016 · 5 revisions

如果你的P版的话,先进行PPPoE拨号,然后再运行心跳。 有一些同学的可能会出现什么691之类的错误,然后拨不上。请这些同学先用wireshark或者tcpdump把登录过程完整的抓起来(方法请自行搜索),接下来进行分析。

分析步骤如下:

  1. 使用wireshark打开抓包,然后再Filter(过滤器)处填上 pap || chap 并回车或者点击Apply。
  2. 在下面数据包列表面板,你可以找到Response报文中的用户名,然后记下来,密码的话大概没变 :)
  3. 然后就可以拿着账号密码进行测试了。btw,Windows自带的拨号程序是直接把转义字符当成普通字符发出。

HighLight:

#####如果你要在Windows下测试,尝试下我的拨号器 PPPoE-Dialer。 #####如果你要在OpenWRT下测试,请尝试先执行下列脚本,然后才用luci配置账号密码登陆:

#!/bin/sh
cp /lib/netifd/proto/ppp.sh /lib/netifd/proto/ppp.sh_bak
sed -i '/proto_run_command/i username=`echo -e "$username"`' /lib/netifd/proto/ppp.sh
sed -i '/proto_run_command/i password=`echo -e "$password"`' /lib/netifd/proto/ppp.sh

或者通过wget来下载脚本

sh -c "$(wget --no-check-certificate https://raw.githubusercontent.com/drcoms/drcom-generic/master/custom/ppp_esc.sh  -O -)"

#####如果你要在merlin上测试,请尝试以下步骤:(感谢群内 QCfan 贡献经验)

  1. 找到文件 /tmp/ppp/options.wan0 , 寻找并修改 user '\r\n你的帐号',password '你的密码' 。
  2. 执行
killall pppd
/usr/sbin/pppd file /tmp/ppp/options.wan0 >/dev/null 2>&1 &

如果网络通了,继续执行以下操作。

  1. 执行 cp /tmp/ppp/options.wan0 /jffs/options.wan0
  2. 在/jffs/scripts里面新建一个services-start。写入以下内容:
#!/bin/sh
i=30
while [ `ps |grep pppd |grep -v grep |wc -l` -eq 0 ]
do
if [ $i -lt 1 ] ; then
logger "Could not restart pppd"
exit
fi
i=$(($i-1))
sleep 1
done
killall pppd
cp /jffs/options.wan0 /tmp/ppp/options.wan0
/usr/sbin/pppd file /tmp/ppp/options.wan0 &

然后添加执行属性。

  • 当然你可以需要在后面加上执行latest-pppoe.py的命令(大概可以新建个/jffs/scripts/wan-start来执行)。

此页面仅为拨号账号出现\r\n的同学提供帮助,并非本repo的主题。