找回密码
 注册
搜索
查看: 838|回复: 2

问一个PPP拨号的问题

[复制链接]
发表于 2008-6-18 11:05:20 | 显示全部楼层 |阅读模式
用主MCU对modem拨CMWAP时,在LCP,PAP,NCP(IPCP)协商结束时,调用ipcp_up函数失败,看代码跑到ipcp.c的
static void ipcp_up(fsm *f)
{
        u32_t mask;
        ipcp_options *ho = &ipcp_hisoptions[f->unit];
        ipcp_options *go = &ipcp_gotoptions[f->unit];
        ipcp_options *wo = &ipcp_wantoptions[f->unit];
       
        np_up(f->unit, PPP_IP);
        IPCPDEBUG(LOG_INFO, ("ipcp: up\n"));

        if (!ho->neg_addr)                                //得不到服务器IP,选择默认?
                ho->hisaddr = wo->hisaddr;

        if (ho->hisaddr == 0) {                                                         //就在这退出了.ipcp_wantoptions在初始化IP是0
                LWIP_DEBUGF(DBG_ON, ("Could not determine remote IP address\n"));
                ipcp_close(f->unit, "Could not determine remote IP address");
                return;
        }
            .......以下略
}
看数据包,在IPCP中,服务器没有告诉modem它的IP.发了一个包7E,FF,03,80,21,01,00,00,04,DC,ED,7E;
modem回包是7E,FF,03,80,21,02,00,00,04,11,C8,7E;就是请求包内容为空,回应确认OK.
然后modem请求动态IP,服务器给modem分配了一个IP,是对的.这样算协商通过吗?? 所以ipcp_wantoptions应该初始化成移动网关?(在PPP源码是初始化为0).
请哪位知道的指导一下.谢谢
 楼主| 发表于 2008-6-18 15:37:35 | 显示全部楼层
用PC通过手机做modem拨号是,也是这样的空包.一切正常.
是不是设这个ipcp_wantoptions??(默认设的0).  但google没搜索到有人设这个.

哪位移过PPP的啊
点评回复

使用道具 举报

 楼主| 发表于 2008-6-20 18:47:55 | 显示全部楼层
好了.没关系.设一个默认
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-4-25 09:34 , Processed in 0.045601 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表