Linux系统连接以太网与WIFI的方法
檢查網卡
查看網卡是否存在以及相應模塊是否加載:
# lspci 命令用于顯示 Linux 系統上的設備和驅動程序 lspci -k# 輸出結果## Ethernet controller 為有線網卡(以太網卡) 02:05.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01)DeviceName: Ethernet1Subsystem: VMware PRO/1000 MT Single Port AdapterKernel driver in use: e1000Kernel modules: e1000## Network controller 為無線網卡(WIFI網卡) 06:00.0 Network controller: Intel Corporation WiFi Link 5100Subsystem: Intel Corporation WiFi Link 5100 AGNKernel driver in use: iwlwifiKernel modules: iwlwifi# dmesg 命令是用于顯示內核的相關信息,用該命令查看相關驅動是否成功加載,module_name 為上述命令輸出的模塊名 dmesg | grep module_name # 輸出結果 [ 13.726383] e1000: ens37 NIC Link is Up 1000 Mbps Full Duplex如果網卡存在,驅動沒有正確加載,則需要先安裝相應的驅動。
無線網卡可以通過 USB 接入系統(例如在虛擬機中,想要直接通過無線網卡連接 WiFi,可通過 USB 外接無線網卡的形式實現),此時查看可用 lsusb 命令查看無線網卡信息:
lsusb -v# 輸出結果# Wireless Adapter 為無線網卡 Bus 001 Device 002: ID 7392:7811 Edimax Technology Co., Ltd EW-7811Un 802.11n Wireless Adapter [Realtek RTL8188CUS]連接網絡
有線網絡
以太網
激活以太網卡,插入網線,基本就可以連接到網絡了,一般不需要選擇網絡和輸入密碼,如果網絡未連接,則檢查網卡,網絡通路等。
PPPoE
PPPoE 是一種撥號上網(ADSL),連接這種類型的網絡需要輸入用戶名與密碼進行認證。對于 DEB 包發行版,安裝 pppoeconf 包;對于 RPM 包發行版,安裝 rp-pppoe 包。
以 rp-pppoe 包為例展示設置網絡的過程:
pppoe-setup # 配置PPPoE連接# 輸入用戶名: # 輸入以太網卡代號:(根據實際網卡名配置) # 配置:若長時間連線,連線會被自動中斷:(選no) # 配置主DNS服務器:(無需配置或者114.114.114.114) # 配置次DNS服務器:(無需配置或者8.8.8.8) # 兩次輸入賬戶密碼以確認(寬帶密碼,輸入沒有不顯示“*”,如果輸錯,會提示是否重新輸入,選擇y) # 配置普通賬戶是否有網絡連接權限(y或者n) # 配置防火墻(沒有特殊需求選0不配置) # 配置是否開機自動撥號連接(yes或no) # 確認剛填寫的配置信息(y或n)pppoe-connect [configuration_file_path] # 建立連接 pppoe-start [configuration_file_path] # 啟動軟件進行連接,當出現“Connected”就表示連接成功了 pppoe-stop [configuration_file_path] # 關閉連接 pppoe-status # 查看網絡狀態pppoe-setup 生成的配置文件是 /etc/ppp/pppoe.conf,可以修改該文件調整參數,用戶名與密碼存儲在 /etc/ppp/chap-secrets 文件中。
無線網絡
普通無線網絡
目前很少有開放 WIFI,即連接 WIFI 不需要輸入密碼,大部分 WIFI 網絡都需要進行密碼驗證。連接無線網絡可以使用網絡管理軟件或者以下工具:
| wireless_tools | wireless_tools | Yes | No | Yes | No |
| iw | iw | No | Yes | Yes | No |
| wpa_supplicant | wpa_supplicant | Yes | Yes | No | Yes |
| iwd | iwd | No | Yes | No | Yes |
wireless_tools
Wireless Extension (WE)是一組通用的 API,能在用戶空間對通用 Wireless LANs 進行配置和統計,Wireless Tools (WT)就是用來操作Wireless Extensions的工具集。常用命令為 iwconfig iwlist.
iwlist wlan0 scan # 掃描可用的 WIFI 接入點 iwconfig wlan0 # 查看連接狀態 iwconfig wlan0 essid your_essid # 連接一個開放的 WIFI iwconfig wlan0 essid your_essid key s:your_key # 連接一個 WEP 加密的 WIFI,密碼為 ASCII 格式iw
iw 是一種新的基于 nl80211 的用于無線設備的 CLI 配置實用程序,iw 取代了采用無線擴展接口的舊工具iwconfig。
iw dev # 顯示網卡 iw dev wlan0 scan # 掃描可用的 WIFI 接入點 iw dev wlan0 link # 查看連接狀態 iw dev wlan0 connect your_essid # 連接一個開放的 WIFI iw dev wlan0 connect your_essid key d:0:your_key # 連接一個 WEP 加密的 WIFI,密碼為 ASCII 格式,d:default,0:表示第0個密碼wpa_supplicant
iwconfig 和 iw 只能連接采用 WEP 加密方式的 WIFI。WPA(Wi-Fi Protected Access),意即“Wi-Fi訪問保護”,是一種由Wi-Fi聯盟制訂與發布,用來保護無線網絡(Wi-Fi)訪問安全的技術標準。前一代有線等效加密(Wired Equivalent Privacy, WEP)系統中,被發現若干嚴重的弱點,因此Wi-Fi聯盟推出WPA、WPA2與WPA3系列來加強無線網絡安全。wpa_supplicant是一個開源項目,已經被移植到Linux,Windows以及很多嵌入式系統上。它是WPA的應用層認證客戶端,負責完成認證相關的登錄、加密等工作。
使用 wpa_cli 命令配置網絡連接,首先需要創建一個配置文件 /etc/wpa_supplicant/wpa_supplicant.conf,內容如下:
ctrl_interface=/run/wpa_supplicant update_config=1然后開啟 wpa_supplicant:
wpa_supplicant -B -i interface -c /etc/wpa_supplicant/wpa_supplicant.conf然后運行 wpa_cli:
wpa_cli> scan # 使用 scan 掃描網絡 <3>CTRL-EVENT-SCAN-RESULTS > scan_results # 使用 scan_results顯示掃描結果 bssid / frequency / signal level / flags / ssid 00:00:00:00:00:00 2462 -49 [WPA2-PSK-CCMP][ESS] MYSSID 11:11:11:11:11:11 2437 -64 [WPA2-PSK-CCMP][ESS] ANOTHERSSID > add_network # 添加網絡 0 > set_network 0 ssid "MYSSID" # 選擇網絡 > set_network 0 psk "passphrase" # 輸入密碼,如果沒有密碼使用:set_network 0 key_mgmt NONE > enable_network 0 # 開啟連接 > save_config # 保存 OK > quit # 退出iwd
iwd (iNet wireless daemon,iNet 無線守護程序) 是由英特爾(Intel)為 Linux 編寫的一個無線網絡守護程序。該項目的核心目標是不依賴任何外部庫,而是最大程度地利用 Linux 內核提供的功能來優化資源利用。
iwctl # 進入交互式提示符 > help # 列出所有可用的命令 > device list # 列出所有 WiFi 設備 > station wlan0 scan # 掃描網絡 > station wlan0 get-networks # 列出所有可用的網絡 > station wlan0 connect SSID # 連接到一個網絡,如果要求輸入網絡密碼,將會提示用戶輸入此外,連接操作可以應用成命令行參數的形式:
iwctl --passphrase your_key station wlan0 connect SSID使用網頁認證的無線網絡
現在有很多 WIFI 使用了網頁認證(Captive Portal),Captive portal,又名強制網絡門戶、強制主頁,是在授予新連接至 WIFI 或接受最終用戶許可協議/可接受使用策略的著陸頁或登錄頁。強制門戶應用于方方面面的移動寬帶服務中(如有線連接、計費Wi-Fi及家庭熱點),同時也可提供對企業或家庭有線網絡(公寓、酒店和商業中心的網絡)的訪問權限。
這種網絡通過 Web + DHCP 認證方式解決無線用戶接入問題,常見于無線校園網中。通常主機連接上無線網絡后,DHCP服務器就會給主機分配一個 IP 地址,如果用戶沒有認證登錄,在瀏覽器訪問的任何 IP 地址都會被重定向到 WEB 認證頁面。Windows和安卓系統在連接到網絡后一般會自動跳出登錄界面;而在linux中,當連接上此類 WIFI 時可能并不會彈出網頁認證的界面,解決方法如下:
參考文獻
[1] Network configuration/Ethernet
[2] Network configuration/Wireless
[3] 在Linux操作系統下的PPPoE撥號上網
[4] 強制門戶
總結
以上是生活随笔為你收集整理的Linux系统连接以太网与WIFI的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IDA中类似VS的Call stack函
- 下一篇: 基于Linux下的Nand (Nor)