一、网卡的驱动
首先要搞清楚机器的无线网卡类型,我的无线网卡 网件(Netgear)WNA1000M 150M迷你USB无线网卡。
插入系统,自动识别到,可在 /var/log/messages 里看到如下信息:
Mar 29 22:29:16 rzsing kernel: ugen2.2: at usbus2 Mar 29 22:29:16 rzsing kernel: urtwn0: on usbus2
系统版本如下:
root@rzsing:~ # uname -a FreeBSD rzsing 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
二、加载模块
修改/boot/loader.conf,加入
################ ### Wireless ### ################ legal.realtek.license_ack=1 # 许可 firmware_load="YES" # 不加载这个会提示缺少firmware模块 if_urtwn_load="YES" # 这个就是这款USB无线网卡的内核驱动 wlan_scan_ap_load="YES" wlan_scan_sta_load="YES" wlan_wep_load="YES" wlan_ccmp_load="YES" wlan_tkip_load="YES"
以便自动启动 urtwn。 除了 wlan 模块,必须手动指明驱动 wlan_wep、wlan_ccmp 和 wlan_tkip。
wlan_ccmp 和 wlan_tkip 这两个驱动只是针对 WPA 和 802.11i 安全协议。
三、无线网络连接
无线路由的设置选择使用 WPA-PSK 安全类型。
1、建立 /etc/wpa_supplicant.conf 内容如下:
network={ ssid="freebsdap" psk="xxxxxxxx" }
其中 freebsdap 是我的无线路由器的 SSID,psk(即 pre-shared key )由用户设定,与无线路由的 psk 密钥一致。不管是用 WEP 还是 WPA,如果不想自己的机器被黑,设定密码是十分必要的。
2、在 /etc/rc.conf 中加入
# wifi wlans_urtwn0="wlan0" # 这里一定要跟 ifconfig 列出来的无线网卡名称一致 ifconfig_wlan0="WPA DHCP"
这样在启动的时候就能从路由器自动分配到 IP 地址。
首先,我们确认网卡被识别。
# dmesg | grep Wireless root@rzsing:~ # dmesg | grep Wireless # 这块是笔记本自带的,没搞定,所以就买了下面这个 USB 无线网卡 iwn0: mem 0xf7f00000-0xf7f01fff irq 17 at device 0.0 on pci3 # dmesg | grep urtwn0 urtwn0: on usbus2 urtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R # 原来是 RTL8188CUS 芯片
然后
ifconfig wlan0 create wlandev urtwn0 ifconfig wlan0 up scan service netif start # 这个能自动帮你连接无线获取 IP 地址,当然如果配置正确的话,开机就可以自动连接无线。 # ifconfig urtwn0
其中 “status: associated” 表示无线网络已经连接。
四、固定你的 resolv.conf
# cat /etc/resolv.conf nameserver 8.8.8.8 nameserver 8.8.4.4
如果你用 DHCP,有一个问题可能会不断地搔扰你,
就是 /etc/resolv.conf 里所记录的 DNS 会时不时地被修改。
当然除了暴力地让/etc/resolv.conf不能被修改外。
# 增加 chflags schg /etc/resolv.conf # 去掉 chflags noschg /etc/resolv.conf
还可以很简单地解决此问题,往 /etc/dhclient.conf 里添加
prepend domain-name-servers 8.8.8.8, 8.8.4.4; # See ``man 5 dhclient.conf'' for details.
详细配置 WIFI 可查看 FreeBSD 官方文档:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-wireless.html
五、待机后的恢复
ifconfig lagg0 up laggproto failover laggport em0 laggport wlan0 # 待机后 wifi 会不在 lagg0 接口上,重新运行下这条命令添加上去。 ifconfig lagg0 up laggproto failover laggport em0 laggport wlan0 192.168.1.120 netmask 255.255.255.0 defaultrouter 192.168.1.1 # 待机后 wifi 会不在 lagg0 接口上,重新运行下这条命令添加上去。 ifconfig lagg0 inet 192.168.1.120 netmask 255.255.255.0 route add default 192.168.1.1 # 添加默认路由,查看路由信息命令: netstat -r 或者 route get default
文章评论