91arm 发表于 2006-10-3 13:58:27

linux拨号问题,大家帮忙分析一下。

linux 拨号问题

hi,大家好。
        我在linux下做GPRS拨号,老存在一个问题,请求大家帮我分析一下是哪里的问题。
我碰到的问题是,拨号老失败,的日志如下:

===================↓拨号失败日志↓=======================
Sep 10 13:39:26 pppd: pppd 2.4.1 started by root, uid 0
Sep 10 13:39:27 chat: timeout set to 3 seconds
Sep 10 13:39:27 chat: abort on (\nBUSY\r)
Sep 10 13:39:27 chat: abort on (\nNO ANSWER\r)
Sep 10 13:39:27 chat: abort on (\nRINGING\r\n\r\nRINGING\r)
Sep 10 13:39:27 chat: send (rAT^M)
Sep 10 13:39:28 chat: expect (OK)
Sep 10 13:39:28 chat: rAT^M^M
Sep 10 13:39:28 chat: OK
Sep 10 13:39:28 chat:-- got it
Sep 10 13:39:28 chat: send (ATH0^M)
Sep 10 13:39:28 chat: timeout set to 30 seconds
Sep 10 13:39:28 chat: expect (OK)
Sep 10 13:39:28 chat: ^M
Sep 10 13:39:28 chat: ATH0^M^M
Sep 10 13:39:28 chat: OK
Sep 10 13:39:28 chat:-- got it
Sep 10 13:39:28 chat: send (ATDT*99***1#^M)
Sep 10 13:39:28 chat: expect (CONNECT)
Sep 10 13:39:28 chat: ^M
Sep 10 13:39:28 chat: ATDT*99***1#^M^M
Sep 10 13:39:28 chat: CONNECT
Sep 10 13:39:28 chat:-- got it
Sep 10 13:39:28 chat: send (^M)
Sep 10 13:39:28 pppd: Serial connection established.
Sep 10 13:39:28 pppd: Using interface ppp0
Sep 10 13:39:28 pppd: Connect: ppp0 <--> /dev/ttyS0
----------------------------------------------------------------------
Sep 10 13:39:29 /etc/hotplug/net.agent: assuming ppp0 is already up
----------------------------------------------------------------------
Sep 10 13:39:29 modprobe: modprobe: Can't locate module ppp-compress-21
-----------------------------------------------------------------------
Sep 10 13:39:29 modprobe: modprobe: Can't locate module ppp-compress-21
Sep 10 13:39:29 pppd: LCP terminated by peer
Sep 10 13:39:32 pppd: Connection terminated.
Sep 10 13:39:32 /etc/hotplug/net.agent: NET unregister event not supported
Sep 10 13:39:33 pppd: Exit.

===================↑拨号失败日志↑=======================
1)
我想主要的问题是:/etc/hotplug/net.agent: assuming ppp0 is already up ,不知道为什么我还没拨号,系统就认为我的PPP已经拨号成功了,我想是不是和我系统的哪里网络

设置有关?
我查看过net.agent文件,里边有如下相关的代码:
    case $INTERFACE in
        # interfaces that are registered after being "up" (?)
        ppp*|ippp*|isdn*|plip*|lo*|irda*|tunl*)
          debug_mesg assuming $INTERFACE is already up
          exit 0
          ;;

似乎是那个网络设置被设置成已经连接成功的了。本人刚使用linux,很多东西不是很熟悉,查了不少资料,没有什么实质性的进展。希望大家能给点指点建议。

2)
modprobe: modprobe: Can't locate module ppp-compress-21,挺奇怪的,PPP里没有21的协议的啊,只有C021,就是LCP,或许它指的就是LCP,但是按照PPP协议,即使PPP已经建

立成功了,收到LCP包,仍然能进行LCP的交互。我想这个问题应该是和我的拨号配置有关


对了,介绍一下,我拨号的过程。
平台是 PC+GPRS MODEM,软件平台是RH9.0.GRPS MODEM接到COM1,GPRS MODEM和SIM卡可能没有问题。不过RED HAT linux是安装在虚拟机vmware 里的。

我使用pppd来实现拨号的,修改了ppp-on里的电话号码,和用户名,密码,去掉ppp-on-dialer里的用户名和密码。

大家能否就我提供的这些信息,给点指导意见?或帮我分析问题的所在?我一直在分析 assuming ppp0 is already up 的原因是什么,查了不少资料,一直没有找到问题的所在,

苦于对linux不熟悉。
        另外,我想找到PPP的源码,为什么在/usr/src/下linux目录里没找到ppp的源码?其他的代码都能找到。包括内核的和TCP/IP的源码。我本来是想拿那个源码来改动整合

到我的程序中去,这样我的程序比较好控制拨号,最终我想在嵌入式设备中使用这个功能。大家能否给什么意见?我想用程序来控制拨号,调用pppd比较方便还是把代码整合到我

的程序中方便?另外,为什么我找不PPP的代码?
        真诚期望得到大家的帮助。

hingwe 发表于 2006-10-18 15:00:07

在 /etc/modules.conf 中加
alias ppp-compress-21 ppp-deflate
就可以了
页: [1]
查看完整版本: linux拨号问题,大家帮忙分析一下。