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

news/2025/2/1 12:51:50/

一:总的来说可以分四点

1arm linux 内核支持ppp

2: install  ppp-2.4.4 (rp-pppoeppp的支持才能正常运行)

3: install  rp-pppoe

4:把步骤(2)(3)中生成的相应文件下载到目标板,根据相应提示适当修改就行了。

二:需要的包

移植需要rp-pppoeppp。我用的是rp-pppoe3.10ppp-2.4.4的组合。

三:具体过程

1: 配置编译内核

 在内核原代码主目录下 make menuconfig

-> Device Drivers -> Network device support  -> PPP (point-to-point protocol)  中,选中所有ppp选项。退出,保存配置,重新执行make zImage.
arch/arm/boot/下的zImage下载到开发板上重启系统。

2:  install ppp-2.4.4

下载的是ppp-2.4.4.tar(http://www.sfr-fresh.com/linux/misc/ppp-2.4.4.tar.gz/)解压。进入源码目录。执行./configure
完成后。执行make,这里要进行交叉编译。因此,我在这里指定CCarm gcc,整个命令为
make CC=arm-linux-gcc

(NOTE: 这里为你自己机子上的交叉编译器,根据具体名字而定)
编译完成后,进入pppd目录,将生成的pppd可执行文件拷贝到目标板文件系统/usr/sbin下。

3:install rp-pppoe3.10
下载rp-pppoe3.10(http://www.roaringpenguin.com/products/pppoe)后,解压源码。进入源码目录。再进入src目录。
然后,要进行交叉编译。根据经验,使用./confiugre --host=arm-linux命令进行配置,但不能通过,confiuge执行后,报
checking for Linux 2.6.X kernel-mode PPPoE support... cross-compiling, default:
no
checking packing order of bit fields... no defaults for cross-compiling
的错误,然后退出了confiugre程序。
configure
程序其实是一sh脚本,用编辑器打开,仔细查看后,原来此脚本根本没对cross_compiling提供支持,当检测到你要进行交叉编译后,就自动退出了。解决方法一是自已在脚本中加入相关代码,一是用./configure生成非交叉编译的makefile,然后再手工修改其中的gccarm-linux-gcc

第二种方法。执行./configure后,程序报生成两个makefile文件,一是在src 下的,一是在libevent下的。直接替换这两个makefile文件中的
编译完成后,src目录下会产生pppoepppoe-serverpppoe-sniffpppoe-relay。把这些程序下载到目标机/usr/sbin目录下。
复制配置文件
rp-pppoe-3.10/configs
目录下是rp-pppoe所需的配置文件,把这些文件全部复制到目标机的/etc/ppp目录下(没有就自己建一个)
拨号
相关的脚本程序共有6个,在rp-pppoe-3.10/scripts中。
pppoe-setup
:配置程序,把输入的帐号密码等信息存入配置文件。
pppoe-start
:拨号程序,连接网络。
pppoe-stop
:断开。
pppoe-status
:查看连接状态。
pppoe-connect
:连接网络,被pppoe-start所调用。
pppoe-init
:初始化,被其他程序调用。
把这些脚本也放到/usr/sbin目录下。

4: 在目标板上测试运行
试运行一下pppd,假如出现如下提示
pppd: pppd is unable to open the /dev/ppp device.
You need to create the /dev/ppp device node by
executing the following command as root:
mknod /dev/ppp c 108 0
那么就应该按照提示执行命令mknod /dev/ppp c 108 0,再运行一次pppd,假如有乱码出现就说明安装pppd成功了。
如果出现下面的信息。则说明你内核可能还不支持pppFix this according to the above
./pppd: This system lacks kernel support for PPP.  This could be because
the PPP kernel module could not be loaded, or because PPP was not
included in the kernel configuration.  If PPP was included as a
module, try `/sbin/modprobe -v ppp'.  If that fails, check that
ppp.o exists in /lib/modules/`uname -r`/net.
See README.linux file in the ppp distribution for more details

如果内核运行再执行pppd,等一会,出现乱码,说明pppd工作正常了。

修改角本:pppoe-setup 将其中的将PPPD改为PPPD=/usr/sbin/pppd(就是你放pppd可执行程序的位置)不然会报错说找不到pppd,没有装.
执行pppoe-setup,根据提示输入拨号所需的参数(ISP提供的用记名和密码)。要确定rp- pppoe的配置文件所在的目录即/etc/ppp是可写的。否则,参数不能保存。

./pppoe-setup(下面是一些说明供参考)

>> Enter your PPPoE user name: ——此处输入拨号帐号的用户名 
>> Enter the Ethernet interface connected to the ADSL modem For Solaris, this is likely to be something like /dev/hme0. For Linux, it will be ethn, where n is a number. (default eth0): ——
eth0(视情况而定
>> Enter the demand value (default no): ——
no 
>> Enter the DNS information here: ——
IP(eg:69.45.45.34)(视当地运营商的DNS服务器IP而定)
>> Please enter your PPPoE password: ——
输网通用户口令 
>> Choose a type of firewall (0-2): ——
0 (0为不要防火墙)
>> Accept these settings and adjust configuration files (y/n)? ——
y

执行pppoe-start后。出现connected!的提示,说明ADSL已拨号成功,可以ping google看通不。

Ping www.google.com


http://www.ppmy.cn/news/143483.html

相关文章

ADSL拨号上网和宽带上网有什么区别?

ADSL拨号上网和宽带上网有什么区别? 区别如下: ADSL拨号上网是宽带连接的一种常用方式。ADSL实际上是电话线拨号上网,通过调制解调器进行数据处理后,再链接到英特网上去。 宽带的范畴比ADSL的大,宽带的连接方法不单单只有ADSL…

电信ADSL+路由器自动拨号设置详细步骤

1. ADSL通过电话线接到电话线插孔上(电话线) 2. 路由器通过它自己的WLAN端口连接到ADSL上(网线) 3. 用网线将路由器和电脑连接好(网线) 4. 修改路由器的WLAN设置: 4.1. 设置好拨号账号和密码 4.…

2.6.1 ADSL技术

ADSL技术 即 非对称数字用户线技术 利用 数字技术 对 现有的 模拟电话用户线 进行改造,使其能够承载宽带数字业务 标准模拟电话信号的 频带 被限制在 300 ~ 3400 Hz 的范围内,无法承载宽带数字业务。但 用户线本身 可通过的 信号频率 却超过 1 MHz。 ADS…

一图看懂ADSL拨号服务器

基本原理就是: 拨号主机(多台)负责切换ip 固定主机(一台)负责收集ip 爬虫主机(多台)负责使用ip 参考 使用TornadoRedis维护ADSL拨号服务器代理池

如何在路由器上设置PPPoE(ADSL虚拟拨号)上网,即(宽带拨号)?

如何在路由器上设置PPPoE(ADSL虚拟拨号)上网,即(宽带拨号)? 参考链接: 1、https://service.tp-link.com.cn/detail_article_341.html 2、https://service.tp-link.com.cn/detail_article_2953.h…

PPPOE拨号之一:Cisco 路由器adsl拨号配置

拓扑 在工作中,很有可能遇到的外网接入方式就是ADSL拨号了,虽然看着简单,但是这里讲讲Cisco路由器上面的一些注意事项与配置。 1、接口下调用PPPOE-client Router-pppoe_client(config)#interface e0/0 //接外网接口 Router-pppoe_client(c…

ADSL 拨号代理的搭建

From:崔庆才 - 轻松获得海量稳定代理!ADSL拨号代理的搭建 我们尝试维护过一个代理池。代理池可以挑选出许多可用代理,但是常常其稳定性不高、响应速度慢,而且这些代理通常是公共代理,可能不止一人同时使用,…

ADSL拨号密码如何修改?

登录进入中国电信网上营业厅,进入【业务办理-业务功能设置与变更-宽带-修改拨号密码】,直接填写两次新密码,确认即可。