如何在Linux下使用dr.com客户端上网 November 16 2010
此方法适用于各版本的linux下使用dr.com客户端上网,已经在ubuntu、fedora、mandriva下安装成功。本文是用最新的ubuntu10.10进行讲解。
如何在Ubuntu 10.10下使用dr.com客户端上网,详细步骤如下:
1、 下载页面:http://www.drcom-client.org/zh_CN/downloads/linux.html
强烈建议下载源码包drcom-client PUM v1.0,然后自己编译。二进制安装包存在某些问题,安装后会无法成功登陆。
2、 将下载的源码包解压,并在终端下进入drcom-pum-1.0/src/kmod目录,此时目录中有3个文件,daemon_kernel.h、drcom.c、Makefile.
3、 在终端中执行命令 make & sudo make install,如果此时在ubuntu下安装dr.com客户端上网出现错误(当然,没错误就不用管了):
make -C /lib/modules/2.6.35-22-generic/build M=/home/wubangtu/drcom-pum-1.0/src/kmod modules
make[1]: 正在进入目录 `/usr/src/linux-headers-2.6.35-22-generic’
CC [M] /home/wubangtu/drcom-pum-1.0/src/kmod/drcom.o
/home/wubangtu/drcom-pum-1.0/src/kmod/drcom.c: In function ‘build_ack_skb’:
/home/wubangtu/drcom-pum-1.0/src/kmod/drcom.c:686: error: ‘struct sk_buff’ has no member named ‘dst’
/home/wubangtu/drcom-pum-1.0/src/kmod/drcom.c: In function ‘build_auth_skb’:
/home/wubangtu/drcom-pum-1.0/src/kmod/drcom.c:723: error: ‘struct sk_buff’ has no member named ‘dst’
make[2]: *** [/home/wubangtu/drcom-pum-1.0/src/kmod/drcom.o] 错误 1
make[1]: *** [_module_/home/wubangtu/drcom-pum-1.0/src/kmod] 错误 2
make[1]:正在离开目录 `/usr/src/linux-headers-2.6.35-22-generic’
make: *** [default] 错误 2
4、 错误解决方法:打开并编辑文件drcom-pum-1.0/src/kmod,查找__ip_select_ident(iph, skb->dst, 0);将其改为 __ip_select_ident(iph, skb_dst(skb), 0);注意有两处需要修改。
5、 重新执行第3步中的命令make & sudo make install。
6、 安装成功以后,可以在“应用程序”—“互联网”中打开Drcom客户端
此时的dr.com客户端除了要输入账号和密码来登陆外,还有一个服务器IP,先不填写此IP登陆,如果不行继续整。
下面就来说说如何得到这个dr.com的servip(dr.com服务器IP)
1、 如果学校的网络中心开放了dr.com的web登陆方式,服务器IP就是这个web登陆地址的IP,此IP不对继续看下一步。
2、 用网络抓包工具,例如wireshark或者minisniffer。建议用minisniffer,比较简洁。
在windows系统下,打开你的dr.com客户端,输入账号和密码先不要登陆,然后打开minisniffer并点击sniffer–start开始抓包,此时再登陆dr.com客户端。
停止minisniffer监听,并查看sourceport和destport都为61440的条目,61440为dr.com使用的端口。条目中sourceip和destip中有一个是本机IP,另外一个就是服务器IP了。
3、 真不行就打电话给学校网管,动之以情,晓之以理,说你主要为了学习,一般人都会告诉你的,这个不涉及到所谓网络安全问题。
OK,至此“如何在Ubuntu 10.10下使用dr.com客户端上网”算是搞定了。