某TL-WR842N路由器無線配置選項含義:php
無線名稱
路由器的無線(Wi-Fi)名稱。
無線密碼
無線加密使用WPA2-PSK/WPA-PSK加密方式、AES加密算法,無線密碼爲8-63個字符,最好是數字、字母、符號的組合。
信道
無線數據信號傳送的通道,建議保持默認的自動,此時路由器會自動根據周圍的無線環境選擇一個最好的信道。模式
路由器工做的無線模式。
頻段帶寬
路由器傳輸無線數據的頻段寬度。
信號強度
能夠根據實際使用須要選擇不一樣檔次的信號強度。
開啓AP隔離
開啓以後能夠安全隔離鏈接到路由器的各個無線設備。html
無線網卡一共有4種工做模式。linux
被管理模式(Managed mode):你做爲無線客戶端直接與無線接入點(Wireless Access Point,WAP)鏈接時,就使用這個模式。在這個模式中,無線網卡的驅動程序依賴WAP管理整個通訊過程。算法
Ad hoc模式:當你的網絡由互相直連的設備組成時,就使用這個模式。在這個模式中,無線通訊雙方共同承擔WAP的職責。windows
主模式(Master mode):一些高端無線網卡還支持主模式。這個模式容許無線網卡使用特製的驅動程序和軟件工做,做爲其餘設備的WAP。安全
監聽模式(Monitor mode):就咱們的用途而言,這是最重要的模式。當你但願無線客戶端中止收發數據,專心監聽空氣中的數據包時,就使用監聽模式。要使Wireshark捕獲無線數據包,你的無線網卡和配套驅動程序必須支持監聽模式(也叫RFMON模式)。服務器
大部分用戶只使用無線網卡的被管理模式或ad hoc模式。圖11-4展現了各類模式如何工做。網絡
根據設備是 PCI 仍是 USB 鏈接,執行 lspci -k
或 lsusb -v
檢查設備驅動是否已經加載app
$ lspci -k
06:00.0 Network controller: Intel Corporation WiFi Link 5100
Subsystem: Intel Corporation WiFi Link 5100 AGN
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
若是是 USB 設備,執行 dmesg | grep usbcore
能夠看到相似下面的輸出 usbcore: registered new interface driver rtl8187
。 less
若是無線usb網卡後插入的話, 也會打印上述信息.
經過 ip link
查看無線 (設備名,一般是相似 wlp2s1
) 的設備。啓用設備:
# ip link set <設備名>
up
若是設備加載,接口正常啓用,說明不須要安裝額外的驅動和固件。
錯誤信息SIOCSIFFLAGS: No such file or directory
說明須要固件才能工做,
根據得到的信息,在下面網址查找硬件支持:
Ubuntu Wiki 維護了一個設備被內核和用戶空間驅動支持情況的列表。
Linux 無線支持頁面 和硬件兼容性列表(HCL)也維護了一個內核友好的設備列表。
內核頁面 也有一個支持的硬件矩陣。
若是列表中沒有,可能你的設備只提供了 Windows 驅動(好比 Broadcom, 3com 等)。這時須要用 ndiswrapper.
Ndiswrapper 能夠在 Linux 中使用 Windows 驅動。兼容性列表在 這裏. 須要 Windows 中安裝的 .inf
和 .sys
文件。若是有更新的網卡,請經過互聯網搜索型號名稱 + 'linux' 以獲取更多信息。
Unix一切皆文件,其它網絡配置工具都是直接或者間接地修改這些虛擬文件來達到設置目的的。
pi@raspberrypi ~ $ ls -l /sys/class/net
total 0
lrwxrwxrwx 1 root root 0 May 8 08:12 eth0 -> ../../devices/platform/bcm2708_usb/usb1/1-1/1-1.1/1-1.1:1.0/net/eth0
lrwxrwxrwx 1 root root 0 May 8 08:12 lo -> ../../devices/virtual/net/lo
lrwxrwxrwx 1 root root 0 May 8 08:13 wlan0 -> ../../devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.0/net/wlan0
能夠看到,系統當前存在三個網絡設備:lo爲迴環設備;eth0爲有線網卡;wlan0爲無線網卡。
/etc/network/interfaces文件記錄了全部的靜態配置信息。內核在引導的時候,會自動啓動標誌爲「auto」的設備,例如:
auto lo
auto eth0
auto wlan0
而若是設備標誌爲「allow-hotplug」,那麼內核在檢測到熱插拔事件的時候,也會自動啓動。例如:
allow-hotplug lo
allow-hotplug eth0
allow-hotplug wlan0
由於迴環設備始終應該是存在的,因此/etc/network/interfaces文件的內容至少是:
auto lo
iface lo inet loopback
內核啓動網絡設備調用的是ifupdown工具,而ifupdown工具也是依賴於/etc/network/interfaces配置文件的。
對於有線(Wired)設備,物理層和數據鏈路層無須操做系統干預,網卡根據CSMA/CD協議就可以自行設置,因此/etc/network/interfaces文件只需包含網絡層以上的配置信息,例如IP地址、子網掩碼、默認網關等。例如:
iface eth0 inet static
address 192.168.11.100
netmask 255.255.255.0
gateway 192.168.11.1
「默認網關」實際上是路由的概念,在這裏做爲設備的一個屬性,和IP地址子網掩碼放在一塊兒我以爲很不妥,很容易誤導初學者,尤爲是存在多網卡多IP地址的狀況。默認網關的生成與這條配置有關, 若是去除這條, 網絡鏈接將變慢.
對於DNS,首先須要注意的是它屬於應用層協議,和網絡設備以及網絡層並沒有直接聯繫。傳統上Linux的DNS配置文件爲/etc/resolv.conf,一行一個服務器IP地址。例如:
nameserver 218.2.135.1
nameserver 61.147.37.1
若是安裝了resolvconf工具,那麼DNS的配置會被接管,此時/etc/resolv.conf就變成了一個符號連接,連接到了resolvconf運行時候動態維護的一個文件。在這種狀況下,DNS的配置也能夠寫到/etc/network/interfaces文件中了,例如:
iface eth0 inet static
address 192.168.11.100
netmask 255.255.255.0
gateway 192.168.11.1
dns-nameservers 218.2.135.1 61.147.37.1
ifupdown工具會自動調用resolvconf完成DNS設置。
此處我也甚覺不妥,由於上面講過,DNS是應用層的概念,這樣寫的話讓初學者以爲好像DNS是網絡設備的屬性同樣(傳統Linux還真是有不少不足之處)。
若是安裝了isc-dhcp-client工具,那麼/etc/network/interfaces文件中就能夠直接配置DHCP,例如:
iface eth0 inet dhcp
isc-dhcp-client有本身的配置文件,能夠控制從DHCP服務器上獲取哪些信息(例如DNS服務器地址)。
ifupdown工具會自動調用isc-dhcp-client完成DHCP設置。
此處須要注意的是:不論resolvconf是否存在,dhclient均會直接修改/etc/resolv.conf文件(無論它是否是一個連接),不過通常狀況下也沒有什麼問題。
對於無線(Wireless)設備,工做方式和有線設備有很大的不一樣(不是插上網線就能直接用的)。數據鏈路層的鏈接必須由操做系統協同完成,例如鏈接哪一個SSID、使用哪條信道、採用什麼認證方式(WEP、WPA...)。這些鏈路層配置信息也能夠寫到/etc/network/interfaces文件中以供ifupdown工具使用。
iface wlan0 inet dhcp
wpa-ssid homezone
wpa-psk 密碼
ifupdown工具會自動調用wpasupplicant完成WPA設置。
例如WEP的配置:
iface wlan0 inet dhcp
wireless-essid Home
wireless-key1 0123-4567-89ab-cdef
wireless-key2 12345678
wireless-key3 s:password
wireless-defaultkey 2
wireless-keymode open
ifupdown工具會自動調用wireless-tools完成WEP設置。
wpa_supplicant 配置文件, 配置方法:
更詳細的配置可參考手冊man wpa_supplicant.conf
爲了管理已經安裝好的無線驅動,而且使無線能正常工做,須要安裝一個無線鏈接管理工具。須要使用的工具,將依賴於下面幾個因素:
配置方式,從徹底手動執行每一步到軟件自動管理、自動啓動
是否使用加密及加密類型
是否須要區分網絡配置,是否常常切換不一樣網絡(好比手提電腦)。
下表列出可使用的管理無線網絡的方法,按照加密和管理方式分類,給出了須要的工具。雖然還有其餘辦法,但這些是最常使用的
管理方法 |
接口激活 |
無線鏈接管理 |
IP 地址分配 |
---|---|---|---|
手動設置, |
ip |
iw / iwconfig |
ip / dhcpcd / dhclient |
手動管理, |
ip |
iw / iwconfig + wpa_supplicant |
ip / dhcpcd / dhclient |
自動管理, |
netctl, Wicd, NetworkManager, etc. 這些工具會自動安裝手動配置須要的工具。 |
軟件包 wireless_tools 提供了創建無線鏈接的基礎工具。若是你須要使用 WPA/WPA2 加密,還須要 wpa_supplicant。以下這些用戶空間工具能夠對無線鏈接進行完整控制。
iw - 當前的 nl80211 標準,不是全部的芯片都支持。
wireless_tools - 已通過時,可是依然普遍使用。
wpa_supplicant - 提供 WPA/WPA2 加密支持
下面表格給出了 iw
和 wireless_tools
命令的對比
根據加密方式不一樣,須要使用密碼將無線設備關聯到接入點。
假設要使用的接入點 ESSID 爲 MyEssid
:
無加密
# iw wlan0 connect MyEssid
WEP
使用十六進制或 ASCII 密碼(格式是自動識別出來的,由於 WEP 密碼長度是固定的):
# iw dev wlan0 connect your_essid key 0:your_key
使用十六進制或 ASCII 密碼,第三個是默認 (從0計數,共四個):
# iw dev wlan0 connect your_essid key d:2:your_key
WPA/WPA2
若是要鏈接WPA認證的無線網絡,wireless-tools就迫不得已了,必須使用wpasupplicant。
wpasupplicant並非像wireless-tools同樣簡單地用命令行配一配就能夠了,它必須先啓動一個服務進程,而後使用另一個命令行工具對服務進程進行設置,並且在WIFI鏈接期間該服務進程必須始終運行着。
wpa_supplicant -i wlan0 -D nl80211,wext -s -B -P /var/run/wpa_supplicant.wlan0.pid -C /var/run/wpa_supplicant
其中:-i指定設備名;-D指定認證協議;-s -B指定在後臺運行,而且調試輸出到syslog中;-C參數指定「ctrl_interface」的位置,注意,wpa_supplicant是能夠有配置文件的,並且配置文件中能夠記錄WIFI的靜態配置,相似於/etc/network/interfaces的功能,可是咱們這裏用不到,在沒有配置文件的狀況下,「ctrl_interface」是必不可少的,wpa_cli經過它與之交互。
前臺方式:
wpa_supplicant -i wlan0 -D nl80211,wext -dd -P /var/run/wpa_supplicant.wlan0.pid -C /var/run/wpa_supplicant
其中,-dd表示輸出更詳細的調試信息。
查看後臺啓動的進程參數:
pi@raspberrypi ~ $ ps ax | grep wpa
1618 ? Ss 0:00 /sbin/wpa_supplicant -s -B -P /var/run/wpa_supplicant.wlan0.pid -i wlan0 -D nl80211,wext -c /etc/wpa_supplicant/wpa_supplicant.conf
2379 pts/0 S+ 0:00 grep --color=auto wpa
而後使用wpa_cli進行設置。wpa_cli能夠工做在交互模式,也能夠命令行模式。例如在交互模式下執行以下命令加入並啓用網絡:
status:列出目前的聯網狀態。
list:列出全部備選網絡。目前正鏈接到的網絡會標[CURRENT],禁用的網絡會標[DISABLE]。
add_network:增長一個備選網絡,輸出新網絡的號碼(這個號碼替代下文的[network_id])。注意新網絡此時是禁用狀態。
set_network [network_id] ssid 「Your SSID」:設置無線網的名稱(SSID)
set_network [network_id] key_mgmt WPA-PSK:設置無線網的加密方式爲WPA-PSK/WPA2-PSK
set_network [network_id] psk 「Your Password」:設置無線網的PSK密碼
enable_network [network_id]:啓用網絡。啓用後若是系統搜索到了這個網絡,就會嘗試鏈接。
disable_network [network_id]:禁用網絡。
save_config:保存配置。
> add_network
0 <--- 記住這個號碼!
> set_network 0 ssid "ChinaUnicom-Me"
OK
> set_network 0 key_mgmt WPA-PSK
OK
> set_network 0 psk "密碼"
OK
> enable_network 0
OK
> save_config <--------
別忘了這個,不然重啓以後網絡配置可能丟失
OK
查看配置文件
:
pi@raspberrypi ~ $ sudo cat /etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="Lair"
psk="knc4-102"
key_mgmt=WPA-PSK
scan_ssid=1
手動添加這一行
,
能夠支持連接隱藏的
wifi
}
配置靜態無線
ip:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
address 192.168.1.105
netmask 255.255.255.0
gateway 192.168.1.1
以上配置有錯誤.
網絡配置修改後, 重啓服務
sudo /etc/init.d/networking restart
sudo service networking restart
假設設備使用 wext
驅動。若是沒法工做,可能須要調整選項,參見 WPA_Supplicant(https://wiki.archlinux.org/index.php/WPA_supplicant_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29)。
若是鏈接成功,在新終端中執行後續命令或(或者經過 Ctrl+c
退出並使用 -B
參數在後臺再次執行上述命令。WPA_Supplicant 頁面包含更多參數和配置文件的信息。
經過下面命令確認是否鏈接成功:
# iw dev wlan0 link
使用 DHCP: # dhcpcd wlan0
或 # dhclient wlan0
若是要設置DHCP,很簡單。例如:
dhclient wlan0 -r (釋放IP, 至關於windows下的 ipconfig /release)
dhclient wlan0 (申請IP, 至關於windows下的 ipconfig /renew)
靜態 IP:
ip address add 192.168.1.3/24 dev wlan0
ip route add default via 192.168.1.1 dev wlan0
第一行增長IP地址,第二行設置默認路由。
若要刪除以 10. 起始的 IP 路由表中的全部路由,請鍵入:
route delete 10.*
route del default
https://wireless.wiki.kernel.org/en/users/Documentation/iw/replace-iwconfig
https://wiki.archlinux.org/index.php/WPA_supplicant_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29
http://www.jb51.net/network/60999.html
http://www.cnblogs.com/abel/p/3441175.html
http://www.oschina.net/question/23734_117144
http://blog.csdn.net/jacobywu/article/details/7366080 wpa配置文件
http://shumeipai.nxez.com/2013/09/30/use-wpa-cli-command-line-to-configure-wi-fi-wireless-lan.html wpa_cli 命令使用方法
http://blog.csdn.net/stephen_yu/article/details/12492839 iwconfig 使用
http://www.360doc.com/content/14/0521/16/7821691_379668471.shtml wpa_supplicant.conf 配置說明