DSL SpeedTouch modem
本指南展示了一种启用 SpeedTouch USB modem 的方法。它使用内核驱动程序,而不是 用户空间驱动程序。本指南假定您的 ISP 使用 PPPoA 而不是 PPPoE。
内核模块和 ppp
请确保您的内核支持必要的模块(至少包括 ppp_generic, pppoatm, slhc, atm, usbatm 和 speedtch)。默认的 Arch 内核应该可以工作。
否则,请确保您的内核支持固件加载。
$ zgrep FW_LOADER /proc/config.gz
手动配置方法
配置 pppd
### /etc/ppp/peers/speedtch # To connect to using this configuration file, do # pppd call speedtch lcp-echo-interval 10 lcp-echo-failure 10 noipdefault defaultroute user "username@ispname" noauth noaccomp nopcomp noccp novj holdoff 4 persist maxfail 25 updetach usepeerdns plugin pppoatm.so # Following entry is country/ISP dependent 8.48
最后一个条目取决于您的国家/ISP,其格式为 VPI.VCI,其中 VPI 和 VCI 是从您的 VPI 和 VCI 设置中得出的。此页面有一个 VPI / VCI 设置列表。
您还需要根据您的 ISP 配置 /etc/ppp/pap-secrets 或 chap-secrets。pap-secrets 文件的格式如下:
# Secrets for authentication using PAP # client server secret IP addresses "ISP-Username" * ISP-password *
有关更多详细信息,请参阅 PAP/CHAP secrets 文件。
如果您想使用 ISP 提供的 DNS 服务器(您很可能需要!),请创建一个指向 /etc/ppp/resolv.conf 的符号链接 /etc/resolv.conf。
cd etc rm resolv.conf ln -s ppp/resolv.conf resolv.conf
配置 udev
创建一个文件 /etc/udev/rules.d/99-speedtouch.rules 并将类似以下内容放入其中:
ACTION=="add", SUBSYSTEM=="atm", KERNEL=="speedtch*", RUN="/usr/bin/pppd call speedtch"
有了这个,Udev 将会自动启动 pppd。如果您不希望这样做,您可以简单地使用以下命令启动您的调制解调器:
pppd call speedtch
固件
现在您已经准备好了一切,只剩下固件加载。最简单的方法是让 udev 来完成。下载 rev4fw.zip(注意此处的 免责声明)并解压。它包含两个文件,一个小的和一个大的。将小文件复制到 /usr/lib/firmware/speedtch-1.bin,将大文件复制到 /usr/lib/firmware/speedtch-2.bin。
# mkdir -p /usr/lib/firmware # cp small_file /usr/lib/firmware/speedtch-1.bin # cp large_file /usr/lib/firmware/speedtch-2.bin
如果您无法下载此文件,请按照上面的第二个链接中的说明进行操作,并使用固件提取器(或下载包含这两个文件的另一个固件)。
故障排除
如果调制解调器被正确检测到并且固件正在加载,您应该会在 dmesg 中看到类似以下内容:
usbcore: registered new driver speedtch usb 1-1: found stage 1 firmware speedtch-1.bin CSLIP: code copyright 1989 Regents of the University of California PPP generic driver version 2.4.2 usb 1-1: found stage 2 firmware speedtch-2.bin ip_tables: (C) 2000-2002 Netfilter core team ADSL line is synchronising DSL line goes up ADSL line is up (800 Kib/s down || 256 Kib/s up)
pppd 在 日志 中的输出应该看起来像:
Plugin pppoatm.so loaded. PPPoATM plugin_init PPPoATM setdevname - remove unwanted options PPPoATM setdevname_pppoatm - SUCCESS:8.48 Using interface ppp0 Connect: ppp0 <--> 8.48 PAP authentication succeeded local IP address 123.45.67.89 remote IP address 195.190.249.10 primary DNS address 195.121.1.34 secondary DNS address 195.121.1.66
如果您遇到问题,可以通过在 /etc/ppp/peers/speedtch 中添加 debug 来检查 pppd 的调试消息。这有助于识别身份验证问题(例如,pap 与 chap 身份验证等)。否则,请务必检查您的 VPI/VCI 设置!