ctlu2ct2t 发表于 2009-8-31 16:32:43

ppp协议NCP报文错误,很是郁闷不知道什么原因!

在设计程序连接数据链路层,GPRS用联通卡取得GPRS服务,通过ppp协议建立链路的时候,到了NCP协议处时,开始收到0Xco,0c23,0c02,0x00,0x00,0x05,0x00,pap的验证通过,后收到0x80,0x21,0x01,0x00,0x00,0x04,的ppp报文,很是奇怪,没有给任何ip方面的信息,收到报文后,回馈一个请求ip地址的报文,马上就收到了链路终止报文0xff,0x03,0xc0,0x21,0x05,0x00,0x00,0x04,很是郁闷不知道问题出在那,请大侠指导!
不回复请求报文的话就会重复收到0x80,0x21,0x01,0x00,0x00,0x04报文,标示域会每次加1。
下面是链路建立过程
0xff,0x03,0xc0,0x21,0x01,0x00,0x00,0x12,0x02,0x06,0x00,0x0a,0x00,0x00,0x03,0x04,0xc0,0x23,0x07,0x02,0x08,0x02开始接收到得报文,发送确认报文为
0xff,0x03,0xc0,0x21,0x02,0x00,0x00,0x12,0x02,0x06,0x00,0x0a,0x00,0x00,0x03,0x04,0xc0,0x23,0x07,0x02,0x08,0x02
在发送自己的请求报文,和联通给我的报文一致,接受到得报文和我发给联通的报文一致,
接着发送了PAP报文,就收到了上面的接受报文0Xco,0c23,0c02,0x00,0x00,0x05,0x00,马上又收到了NCP报文了
不过没有任何信息,及0x80,0x21,0x01,0x00,0x00,0x04,很是郁闷痛苦了!

sdtean 发表于 2009-8-31 16:47:10

换个移动的卡试试,毕竟移动的网络成熟。
现在很少有人做这个PPP了,毕竟带协议的模块都很便宜了。
记得坛子里有个兄弟贴出了源码的
http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=3243548&bbs_page_no=1&search_mode=4&search_text=sdtean&bbs_id=9999
还有一个办法,用windows建立一个拨号连接,用串口监控软件看看windows是如何做的。

ctlu2ct2t 发表于 2009-8-31 17:04:22

移动的也用了一样的结果!很是奇怪!IPCP收不到IP得信息报文,报文的信息域ISP只给了4位!没有IP的信息!
GPRS不用PPP协议了?!用的PPPOE?!看连接过程应该是PPP协议呀!
谢谢你的回复!

sdtean 发表于 2009-8-31 17:07:02

呵呵,PPPOE是PPP over Ethernet。
我说的是集成PPP协议的模块已经是主流了,没有必要自己做PPP协议了。

ctlu2ct2t 发表于 2009-8-31 17:31:11

既然写了就要写下去吧!学习在与实践!有了代码经验了总是一件好事情!现在就是很郁闷!收不到NCP得IP信息!一回馈就收到断开链路报文!哭笑不得!

sdtean 发表于 2009-9-1 08:15:32

用windows建立一个拨号连接,用串口监控软件看看windows是如何做的。

ctlu2ct2t 发表于 2009-9-4 10:50:52

看了拨号过程了!收到0x80,0x21,0x01,0x00,0x00,0x04得报文时正常的!现在的问题是我发给ISP请求IP的报文!ISP马上就发给我拆线的请求报文了不知道是什么问题!极度郁闷呢!

camstone 发表于 2010-4-19 18:42:34

你要再发一下请求就可以了.
其实是没有问题的。ISP不给发他的IP地址,我们可以不理会,继续往下操作就行了。如建立UDP TCP连接等。
修改一下LWIP里面的代码就可以了。

hejiang177 发表于 2011-3-17 09:43:29

回复【楼主位】ctlu2ct2t
在设计程序连接数据链路层,gprs用联通卡取得gprs服务,通过ppp协议建立链路的时候,到了ncp协议处时,开始收到0xco,0c23,0c02,0x00,0x00,0x05,0x00,pap的验证通过,后收到0x80,0x21,0x01,0x00,0x00,0x04,的ppp报文,很是奇怪,没有给任何ip方面的信息,收到报文后,回馈一个请求ip地址的报文,马上就收到了链路终止报文0xff,0x03,0xc0,0x21,0x05,0x00,0x00,0x04,很是郁闷不知道问题出在那,请大侠指导!   
不回复请求报文的话就会重复收到0x80,0x21,0x01,0x00,0x00,0x04报文,标示域会每次加1。
下面是链路建立过程
0xff,0x03,0xc0,0x21,0x01,0x00,0x00,0x12,0x02,0x06,0x00,0x0a,0x00,0x00,0x03,......
-----------------------------------------------------------------------

和楼主类拟的问题,用WINDOWS拔号时,到了NCP协议处就不对了,不知怎么回事,也郁闷中,我用的是SIM300
页: [1]
查看完整版本: ppp协议NCP报文错误,很是郁闷不知道什么原因!