下面我们针对ppp的脚本内容进行一下讲解。希望大家能够通过文章内容的分享,了解配置和编写过程。

PPP拨号设置,在很多平台上都有相关的操作。那么这里我们则重点讲解一下平台: L350和N300平台上测试均通过的PPP脚本内容。那么现在就让我们看下具体内容吧。希望对大家有所应用。

ppp脚本源码分享  ppp 脚本 第1张

  1. /apps/etc/ppp>:uname-a
  2. Linuxnetaccess2.6.22.1#17ThuJan718:03:30EST2010armv5tejlunknown

pppd会从/etc/ppp下读取相关配置文件,由于调试时会经常修改这些配置文件,所以建立了一个符号链接到我们的Nandflash分区上:

  1. /apps/etc/ppp>:ls-l/etc/ppp
  2. lrwxrwxrwx1rootroot13Nov202009/etc/ppp->/apps/etc/ppp

当使用pppd作ppp server时,主要有以下配置文件。在下面的文档中,将详细介绍他们:

  1. /apps/etc/ppp>:ls
  2. chap-secretsgprs-start-chatoptionsoptions.ttyS1pap-secrets

pppd运行参数文件/etc/ppp/options

该文件指定pppd运行的参数,若运行pppd时通过命令行指定的参数同时出现在该配置文件里时,pppd将使用/etc/ppp/options中的配置。关于pppd支持的一些参数,可以在我们PC的linux上使用man命令查询(man pppd)

[guowenxue@localhost ~]$ man 8 pppd
PPPD(8) PPPD(8)

NAME
pppd - Point-to-Point Protocol Daemon

SYNOPSIS
pppd [ options ]

/apps/etc/ppp >: cat options
#tty Options
/dev/ttyS1 #例如,这里可以将/dev/ttyS1注释,然后使用命令行#pppd /dev/ttyS1 运行来指定;
115200
#lock
modem
nocrtscts #无硬件流控

#login
nodetach #若指定updetach则拨号成功后放入后台运行,若为nodetach,则在前台执行

debug

#Auth options
auth #使能Authentication
+pap #使用pap认证
-chap #不要支持chap认证

# 源码ppp-2.4.3/pppd/tty.c中的函数connect_tty()将会执行这个脚本。主要是对客户端的拨号的应答。
connect "/usr/sbin/chat -v -E -V -f /etc/ppp/gprs-start-chat"

#lcp options
#passive
asyncmap 0
lcp-echo-failure 3
lcp-echo-interval 5
ipcp-accept-local
ipcp-accept-remote


#proxyarp
netmask 255.255.255.0
ms-dns 10.78.28.10
ms-dns 10.78.28.11
nodefaultroute

gprs-start-chat chat脚本

关于chat的用法,可以在Linux PC上使用man命令查询:$ man 8 chat

  1. /apps/etc/ppp>:catgprs-start-chat
  2. ABORT'BUSY'
  3. ABORT'NOCARRIER'
  4. ABORT'NODIALTONE'
  5. ABORT'ERROR'
  6. TIMEOUT0
  7. '''ATZ'//首先发送ATZ重置modem
  8. 'OK''ATE0'//收到OK后,使用ATE0消除回显
  9. 'RING''ATA'//等待客户端拨号,若客户端开始拨号,Modem收到RING后,发送应答信号ATA
  10. 'CONNECT'''//收到CONNECT信号后,将进入下一阶段LCP的过程。

#p#options.ttyS1 IP地址分配

配置PPP服务器端(本地)IP地址和客户端(远端)的IP地址

  1. /apps/etc/ppp>:catoptions.ttyS1
  2. #Server_IP_address:Client_IP_address
  3. 10.78.28.194:10.78.28.224
  4. chap和pap认证的帐号文件:
  5. /apps/etc/ppp>:catpap-secrets
  6. #SecretsforauthenticationusingPAP
  7. #UserServerSecretIPAddress
  8. na_admin*123*
  9. /apps/etc/ppp>:catchap-secrets
  10. #SecretsforauthenticationusingCHAP
  11. #UserServerSecretIPAddress
  12. na_admin*123*


pppd启动拨号过程:

  1. /apps/etc/ppp>:pppd/dev/ttyS1
  2. OK
  3. ATE0//chat脚本的调试输出
  4. OK
  5. RING
  6. CONNECTSerialconnectionestablished.
  7. usingchannel1
  8. Usinginterfaceppp0
  9. Connect:ppp0<-->/dev/ttyS1
  10. rcvd[LCPConfReqid=0x0<asyncmap0x0><magic0x58452c14><pcomp><accomp><callbackCBCP>]
  11. Warning-secretfile/etc/ppp/pap-secretshasworldand/orgroupaccess
  12. sent[LCPConfReqid=0x1<asyncmap0x0><authpap><magic0xb701c04a><pcomp><accomp>]
  13. sent[LCPConfRejid=0x0<callbackCBCP>]
  14. rcvd[LCPConfAckid=0x1<asyncmap0x0><authpap><magic0xb701c04a><pcomp><accomp>]
  15. rcvd[LCPConfReqid=0x1<asyncmap0x0><magic0x58452c14><pcomp><accomp>]
  16. sent[LCPConfAckid=0x1<asyncmap0x0><magic0x58452c14><pcomp><accomp>]
  17. sent[LCPEchoReqid=0x0magic=0xb701c04a]
  18. rcvd[LCPcode=0xcid=0x258452c144d5352415356352e3130]
  19. sent[LCPCodeRejid=0x20c02001258452c144d5352415356352e3130]
  20. rcvd[LCPcode=0xcid=0x358452c144d535241532d302d4d454951494e50433031]
  21. sent[LCPCodeRejid=0x30c03001a58452c144d535241532d302d4d454951494e50433031]
  22. rcvd[PAPAuthReqid=0xcuser="na_admin"password=<hidden>]
  23. Warning-secretfile/etc/ppp/pap-secretshasworldand/orgroupaccess
  24. sent[PAPAuthAckid=0xc"Loginok"]
  25. PAPpeerauthenticationsucceededforna_admin
  26. sent[CCPConfReqid=0x1<deflate15><deflate(old#)15><bsdv115>]
  27. sent[IPCPConfReqid=0x1<compressVJ0f01><addr10.78.28.194>]
  28. rcvd[LCPEchoRepid=0x0magic=0x58452c14]
  29. rcvd[CCPConfReqid=0x4<120600000001>]
  30. sent[CCPConfRejid=0x4<120600000001>]
  31. rcvd[IPCPConfReqid=0x5<compressVJ0f01><addr0.0.0.0><ms-dns10.0.0.0><ms-wins0.0.0.0><ms-
  32. dns30.0.0.0><ms-wins0.0.0.0>]
  33. sent[IPCPConfRejid=0x5<ms-wins0.0.0.0><ms-wins0.0.0.0>]
  34. rcvd[CCPConfRejid=0x1<deflate15><deflate(old#)15><bsdv115>]
  35. sent[CCPConfReqid=0x2]
  36. rcvd[IPCPConfAckid=0x1<compressVJ0f01><addr10.78.28.194>]
  37. rcvd[CCPTermReqid=0x6"XE,\024\000<\315t\000\000\002\334"]
  38. sent[CCPTermAckid=0x6]
  39. rcvd[IPCPConfReqid=0x7<compressVJ0f01><addr0.0.0.0><ms-dns10.0.0.0><ms-dns30.0.0.0>]
  40. sent[IPCPConfNakid=0x7<addr10.78.28.224><ms-dns110.78.28.10><ms-dns310.78.28.11>]
  41. rcvd[IPCPConfReqid=0x8<compressVJ0f01><addr10.78.28.224><ms-dns110.78.28.10><ms-dns3
  42. 10.78.28.11>]
  43. sent[IPCPConfAckid=0x8<compressVJ0f01><addr10.78.28.224><ms-dns110.78.28.10><ms-dns3
  44. 10.78.28.11>]
  45. localIPaddress10.78.28.194
  46. remoteIPaddress10.78.28.224

测试

/apps/etc/ppp >: ping 10.78.28.224
PING 10.78.28.224 (10.78.28.224): 56 data bytes
64 bytes from 10.78.28.224: seq=0 ttl=64 time=194.570 ms
64 bytes from 10.78.28.224: seq=1 ttl=64 time=190.331 ms

转载请说明出处
知优网 » ppp脚本源码分享

发表评论

您需要后才能发表评论