linux centos5.5 usb wireless card setup,USB无线网卡配置
来源:互联网 发布:今晨送货单软件注册码 编辑:程序博客网 时间:2024/06/02 06:20
台式机上弄了个USB无线网卡,无线网卡是EDUP-N1556,也就是RTL8192C的驱动,然后Centos5.5上肯定没有这个,折腾到了凌晨一点才搞定!
原因是iwconfig无法支持wpa,如果无线路由器是wpa加密的,要使用wpa_supplicant工具来生成连接密钥和启动无线网卡。
无线网卡是在京东上买的:http://item.jd.com/844287.html,EDUP-N1556,实际上芯片是RTL8188C_8192C_USB_linux_v4.0.2。
驱动下载:http://www.edup.cn/showinfo559.aspx,linux下需要下载源码编译。
安装kernel
编译驱动时需要kernel的开发包。可以从光盘源安装:
sudo mkdir -p /media/cdrom && sudo mount /dev/cdrom /media/cdrom && sudo yum --disablerepo=* --enablerepo=c5-media install -y kernel-devel kernel-xen-kernel
安装完成后就可以开始编译驱动。
编译驱动
驱动源码解压后的目录是:RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911
下面有install.sh,可以直接执行:
sudo bash install.sh
没有网络只能通过usb拷贝驱动代码到centos5.5上面,然后编译时报错:
[winlin@localhost RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911]$ sudo bash install.sh/home/winlin/tools/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/include/osdep_service.h:865: error: redefinition of ‘skb_tail_pointer’include/linux/skbuff.h:922: error: previous definition of ‘skb_tail_pointer’ was here
一大堆这个错误。查看代码:
vi driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/include/osdep_service.h
行数是865行:
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))// Porting from linux kernel, for compatible with old kernel.static inline unsigned char *skb_tail_pointer(const struct sk_buff *skb){ return skb->tail;}static inline void skb_reset_tail_pointer(struct sk_buff *skb){ skb->tail = skb->data;}static inline void skb_set_tail_pointer(struct sk_buff *skb, const int offset){ skb->tail = skb->data + offset;}
查看centos5.5的内核:
[winlin@localhost RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911]$ uname -r2.6.18-194.el5xen
也就是说,centos使用的内核很老,但是这些比较新的函数自己合并过去了的,所以只需要把上面的函数注释掉就可以:
#if 0 && (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))// Porting from linux kernel, for compatible with old kernel.static inline unsigned char *skb_tail_pointer(const struct sk_buff *skb){ return skb->tail;}static inline void skb_reset_tail_pointer(struct sk_buff *skb){ skb->tail = skb->data;}
在最前面的宏定义判断那里加上#if 0 &&。然后重新执行sudo bash install.sh,安装成功,内核模块已经安装好了:
[root@localhost RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911]# lsmod|grep 8192cu8192cu 662208 0
下面就可以编译wpa工具,以及使用ifconfig管理网卡。
IFCONFIG
驱动编译安装好后,就可以用ifconfig打开设备,扫描附近的无线网络了。
如果没有iwlist和iwconfig可以编译:
cd RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/wireless_tools/wireless_tools.30.rtl && make
首先,看看设备叫什么:
[root@localhost wireless_tools.30.rtl]# ./iwconfig wlan0 IEEE 802.11bg ESSID:"winlin-1st" Nickname:"<WIFI@REALTEK>" Mode:Managed Frequency:2.472 GHz Access Point: B0:48:7A:39:5F:F6 Bit Rate:54 Mb/s Sensitivity:0/0 Retry:off RTS thr:off Fragment thr:off Encryption key:****-****-****-****-****-****-****-**** Security mode:open Power Management:off Link Quality=99/100 Signal level=51/100 Noise level=0/100 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0
上面是已经连接上的无线网卡信息,可见名字叫做wlan0。
然后,用ifconfig打开设备:
[root@localhost wireless_tools.30.rtl]# ifconfig wlan0 up && ifconfig wlan0wlan0 Link encap:Ethernet HWaddr E8:4E:06:17:5C:8E inet addr:192.168.1.113 Bcast:255.255.255.255 Mask:255.255.255.0 inet6 addr: fe80::ea4e:6ff:fe17:5c8e/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3360 errors:0 dropped:36 overruns:0 frame:0 TX packets:4886 errors:0 dropped:2 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:392496 (383.2 KiB) TX bytes:5934066 (5.6 MiB)
接着,看有哪些无线网络可以连:
[root@localhost wireless_tools.30.rtl]# ./iwlist wlan0 scan Cell 01 - Address: B0:48:7A:39:5F:F6 ESSID:"winlin-1st" Protocol:IEEE 802.11bg Mode:Master Frequency:2.472 GHz (Channel 13) Encryption key:on Bit Rates:54 Mb/s Extra:wpa_ie=dd160050f20101000050f2041000050f202 IE: WPA Version 1 Group Cipher : CCMP Pairwise Ciphers (1) : CCMP Authentication Suites (1) : PSK Extra:rsn_ie=30140100000fac0401000fac020100 IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : CCMP Pairwise Ciphers (1) : CCMP Authentication Suites (1) : PSK Preauthentication Supported Quality=99/100 Signal level=51/100
下面就可以用wpa工具连接网络了。iwconfig无法连接wpa加密的网络。
WPA工具
编译wpa工具:
cd RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/wpa_supplicant_hostapd &&tar xf wpa_supplicant_hostapd-0.8_rtw_r7475.20130812.tar.gz &&cd wpa_supplicant_hostapd-0.8_rtw_r7475.20130812 &&cd wpa_supplicant/ &&make
然后使用命令生成配置文件:
./wpa_passphrase winlin-1st 8u23j302j >winlin-1st.conf
其中,winlin-1st是要连接的那个无线网络的ssid,后面的8u23j302j是密码,这个会生成配置文件。
启动和配置无线网卡,连接到winlin-1st网络:
./wpa_supplicant -i wlan0 -c winlin-1st.conf
然后使用dhclient获取IP:
sudo dhclient wlan0
可以写入/etc/rc.local:
# winlinecho "start wlan0 network"nohup /home/winlin/tools/wpa/wpa_supplicant -i wlan0 -c /home/winlin/tools/wpa/winlin-1st.conf >/dev/null 2>&1 &sleep 2 && echo "dhclient wlan0" && dhclient wlan0echo "ok for winlin"
启动后,等会就发现正常获取了ip。用iwconfig看也连接上了。
ifconfig wlan0wlan0 Link encap:Ethernet HWaddr E8:4E:06:17:5C:8E inet addr:192.168.1.113 Bcast:255.255.255.255 Mask:255.255.255.0 inet6 addr: fe80::ea4e:6ff:fe17:5c8e/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3914 errors:0 dropped:36 overruns:0 frame:0 TX packets:5309 errors:0 dropped:2 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:461213 (450.4 KiB) TX bytes:6025999 (5.7 MiB)
iwconfig wlan0wlan0 IEEE 802.11bg ESSID:"winlin-1st" Nickname:"<WIFI@REALTEK>" Mode:Managed Frequency:2.472 GHz Access Point: B0:48:7A:39:5F:F6 Bit Rate:54 Mb/s Sensitivity:0/0 Retry:off RTS thr:off Fragment thr:off Encryption key:****-****-****-****-****-****-****-**** Security mode:open Power Management:off Link Quality=100/100 Signal level=56/100 Noise level=0/100 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0
注意一定不能用iwconfig来配置网卡连接wpa网络,连不上的。
使用网络
后面使用网络就简单了:
[root@localhost ~]# curl http://ossrs.net<!DOCTYPE html><html><head> <title>开源的SRS</title> <meta charset="utf-8"> <script type="text/javascript"> var url = "srs.release/releases/index.html"; setTimeout(function(){ window.location.href = url; }, 1000); </script></head><body> <div><a href="srs.release/releases/index.html" target="_self">正在跳转中...</a></div> <div><a href="http://www.miitbeian.gov.cn">京ICP备14026077号</a></div></body></html>
正常使用就可以了。
Winlin 2014.11
0 0
- linux centos5.5 usb wireless card setup,USB无线网卡配置
- USB无线网卡配置步骤
- 树莓派配置usb无线网卡
- 树莓派配置usb无线网卡
- CentOS5.6系统中安装并使用USB无线网卡(配置成功) 转
- 无线USB网卡,RaspberryPi无线配置,Raspbian无线配置
- 树莓派水星USB无线网卡MW150US配置
- linux下安装USB无线网卡
- USB无线网卡的Linux驱动移植
- LINUX安装USB无线网卡驱动TPLINKWN823N
- 热门usb无线网卡
- USB无线网卡应用
- linux内核USB无线网卡、USB声卡支持
- Linux 安装DELL Wireless 1395/1390 WLAN Mini-Card 无线网卡驱动
- 移植usb无线网卡驱动
- win7共享usb无线网卡
- 无线USB网卡Rndis设备
- 树莓派插拔USB无线网卡死机
- 检查点
- Android OkHttp的要注意的地方
- Android之ListView滚动到底后自动加载数据
- SMP中怎么识别代码运行在哪个核中?
- 算法学习 - 树的三种遍历(递归实现)先序遍历,中序遍历,后序遍历
- linux centos5.5 usb wireless card setup,USB无线网卡配置
- Coding X年后,要想走向人生巅峰,还得读啥书?
- 2015年web前端7个发展趋势
- 浅谈各类RAD快速开发平台存在的意义
- 矛盾集合体——static的相关用法介绍
- NYOJ33 蛇形填数
- 从今天开始,尽量多写博客,记录生活点滴
- discuz实现百度站内搜索论坛样式(辅助插件)
- WNDR4300刷OpenWrt手记