[原创]FreeBSD的PPPoE拨号所需要的内核模块_VMware, Unix及操作系统讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  VMware, Unix及操作系统讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3709 | 回复: 0   主题: [原创]FreeBSD的PPPoE拨号所需要的内核模块        下一篇 
wulcan
版主
等级:中校
经验:1795
发帖:124
精华:0
注册:2014-3-19
状态:离线
发送短消息息给wulcan 加好友    发送短消息息给wulcan 发消息
发表于: IP:您无权察看 2014-6-28 16:56:17 | [全部帖] [楼主帖] 楼主

做了一个精减的FreeBSD,放在U盘,算上php和nginx仅30M多一点。

但是运行一段时间突然发现拨号不能用,在拨号的网卡上抓包,仅发现DNS解析PPPoE.的数据包:

06:24:45.772633 IP 192.168.128.115.10066 > 114.114.114.114.53: 62728+ A? PPPoE. (23)


很是奇怪,正常应该至少出现PPPoE的发现包。

把配置文件修改了N遍,情况依旧,最后把配置文件放到一台普通的FB上,运行正常,由此推测,是精减的时候出现失误,过度精减了。

找了半天,终于找到是内核模块不足,把所有的/boot/kernel/*.ko复制过来,顺利拨号!

显示一下加载的内核模块:

#kldstat
Id Refs Address Size Name
1 12 0xffffffff80200000 b76038 kernel
2 1 0xffffffff80d77000 2f28 splash_bmp.ko
3 4 0xffffffff81012000 87c4 netgraph.ko
4 1 0xffffffff8101b000 15a8 ng_ether.ko
5 1 0xffffffff8101d000 3270 ng_pppoe.ko
6 1 0xffffffff81021000 1c40 ng_socket.ko


PPPoE需要netgraph模块,这个其实早就知道,没想到竟然在这地方出现失误。

摘录man ppp中的一段:

#man ppp
……
Supports PPP over Ethernet (rfc 2516). If ppp is given a device specifi?
network interface.
On systems that do not support netgraph(4), an external program such as
pppoed(8) may be used.
……
If a PPPoE:iface[:provider] specification is given, ppp will
attempt to create a PPP over Ethernet connection using the given
iface interface by using netgraph(4). If netgraph(4) is not
available, ppp will attempt to load it using kldload(2). If this
fails, an external program must be used such as the pppoed(8)
program available under OpenBSD. The given provider is passed as
the service name in the PPPoE Discovery Initiation (PADI) packet.
If no provider is given, an empty value will be used.


看来没有netgraph的话,用pppoed也可以,不知道用来做客户端是不是可以,有空再测试吧。

如果不想复制那几个模块,那就重新编译内核,加上这几句:

options NETGRAPH
options NETGRAPH_PPPOE
options NETGRAPH_PPP
options NETGRAPH_PPTPGRE
options NETGRAPH_SOCKET
options NETGRAPH_ETHER


下面这些可以选加:

options NETGRAPH_MPPC_ENCRYPTION
options NETGRAPH_ASYNC
options NETGRAPH_BPF
options NETGRAPH_CAR
options NETGRAPH_IFACE
options NETGRAPH_NETFLOW
options NETGRAPH_TCPMSS
options NETGRAPH_TEE
options NETGRAPH_VJC


该贴由hui.chen转至本版2014-11-5 17:04:58



赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论