PPPOE流程分析3---pppoe native程序包

原创 2013年12月03日 19:22:44
1. 相关文件
主要源码目录是, android/external/ppp/pppoe, 其中核心的是4个shell script, 和一个bin
1.1 Android.mk
此编译脚本主要用来指明编译pppoe这个binary时的规则.
1.2 Script/Pppoe-connect
执行pppoe拨号脚本
1.3 Script/Pppoe-disconnect
杀掉pppoe程序掉本
1.3 Ip-up-pppoe
连接成功, 配置route, dns等信息
1.4 Ip-down-pppoe
连接断开, 删除route, dns等信息


2 Ip-up-pppoe
此文件在pppoe拨号成功后会被调用, 是被pppd程序调用, 主要功能是设置dns/local-ip/remote-ip/net-pppoe-reason/net-pppoe-interface/route, 核心脚本代码如下,
/system/bin/setprop "net.$NAME.dns1" "$DNS1"     // $NAME为ppp0, 设置dns1
/system/bin/setprop "net.$NAME.dns2" "$DNS2"    // 设置dns2
/system/bin/setprop "net.$NAME.local-ip" "$IPLOCAL"  // 设置本地IP
/system/bin/setprop "net.$NAME.remote-ip" "$IPREMOTE" // 设置远程服务器IP
/system/bin/setprop "net.pppoe.reason" "running" // 设置当前pppoe状态
/system/bin/setprop "net.pppoe.interface" "$1" // 设置当前pppoe网卡节点, ppp0
/system/bin/setprop "net.dns1" "$DNS1" // 设置默认dns1, 最终net.dns1和net.ppp0.dns1应该相同
/system/bin/setprop "net.dns2" "$DNS2" //  设置辅助dns2
#del the route table
// 下面这里比较重要, 首先要删除已经设置了的default route
while true
do
    i=`/system/bin/busybox route | /system/bin/busybox grep default -c`
    if /system/bin/busybox test $i = 0
    then
        break
    fi
    `/system/bin/busybox route del default`
done
#add the pppoe remote ip to route table
// 删除完成后, 设置pppoe的remote-ip和网卡接口为默认路由
/system/bin/busybox route add -net 0.0.0.0 gw "$IPREMOTE" netmask 0.0.0.0 dev "$NAME"
此脚本的调用我找了很久都没有发现, 后来还是问了下耕哥, 这块本来是他负责开发, 是在pppd程序中被调用, 按照他当时的介绍, vpn/3g dongle都会使用到pppd, pppoe和他们相似, 所以对于vpn会有一个ip-up-vpn, 对于3G dongle会有ip-up, 这些相关的脚本是放在了android/device/softwinner/common/rild目录下, 
1. 在android/device/softwinner/common/sw-common中指定了一些和3G data card 有关的文件, 列表如下, 耕哥说的pppoe中ip-up-pppoe和3G dongle相似, 应该就是这个意思了, 这里也有ip-down, ip-up等, 也都是各种脚本.
 16 #YUNOS BEGIN
 17 # 3G Data Card Configuration Flie
 18 #PRODUCT_COPY_FILES += \
 19 # device/softwinner/common/rild/ip-down:system/etc/ppp/ip-down \
 20 # device/softwinner/common/rild/ip-up:system/etc/ppp/ip-up \
 21 # device/softwinner/common/rild/call-pppd:system/etc/ppp/call-pppd \
 22 # device/softwinner/common/rild/3g_dongle.cfg:system/etc/3g_dongle.cfg \
 23 # device/softwinner/common/rild/usb_modeswitch:system/bin/usb_modeswitch \
 24 # device/softwinner/common/rild/usb_modeswitch.sh:system/bin/usb_modeswitch.sh \
 25 # device/softwinner/common/rild/apns-conf_sdk.xml:system/etc/apns-conf.xml \
 26 # device/softwin


shanxiaoxi@allwinnertech.com: 以前写在有道云笔记中, 在这里分享出来
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

PPPoE拨号流程

转载:http://blog.csdn.net/phunxm/article/details/9384123 PPPoE(Point to Point Protocol ov...

SRUN3K PPPOE 心跳助手

  • 2015-08-25 20:30
  • 3.81MB
  • 下载

SRun3K PPPoE心跳助手

  • 2016-04-15 16:10
  • 4.81MB
  • 下载

移植rp-pppoe到s3c2440(QQ2440v3)实现ADSL拨号上网

一:总的来说可以分四点1:arm linux 内核支持ppp2: install  ppp-2.4.4 (rp-pppoe要ppp的支持才能正常运行)。3: install  rp-pppoe。4:把...

移植rp-pppoe到s3c2440(QQ2440v3)实现ADSL拨号上网

一:总的来说可以分四点 1:arm linux 内核支持ppp 2: install  ppp-2.4.4 (rp-pppoe要ppp的支持才能正常运行)。 3: install  rp-ppp...

PPPOE协议详细分析

  • 2015-11-03 15:49
  • 3.78MB
  • 下载

PPPOE源码分析

一、PPPOE协议简介 1、Discovery阶段   此阶段用来建立连接,当一个用户主机想开始一个PPPoE会话时,首先必须进行发现阶段以识别PPPoE Server的以太网MAC地址,并建立一...
  • wt0427
  • wt0427
  • 2012-07-29 10:18
  • 3100

PPPoE与802.1X在校园网中的应用分析

转自:http://www.autooo.net/classid123-id54221.html PPPoE和802.1X是较常见的两种宽带网络接入认证方式。两种方法的用户使用体验非常类似,但两种协议...

[PPPOE]PPPD源码分析

1.基本/usr/bin/setsid /usr/sbin/pppd pty ‘/usr/sbin/pppoe -p /var/run/pppoe_eth1.pid.pppoe -D /var/run...

Broadcom方案PPPoE实现分析

一、用户程序PPPD初始化 main //如果设置了相关回调,则调用回调告知当前程序运行的阶段进展 new_phase(PHASE_INITIALIZE); phase = p; //如果有new_...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)