日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Linux WiFi 射频开关`rfkill`控制无线网启停与`ifconfig`显示的关系

發布時間:2024/3/12 81 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux WiFi 射频开关`rfkill`控制无线网启停与`ifconfig`显示的关系 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 rfkill命令簡介

rfkill命令可以用來打開和關閉WiFi的射頻開關。

1.1 rf的含義

射頻(rf)是Radio Frequency的縮寫,rfkill可以管理wifi、wlan、bluetooth、uwb、wimax、wwan、gps、fm、nfc無線信號。
這種開關在某種程度上能夠控制硬件的狀態,使用的例子有:飛行模式、硬件節能。

1.2 常用命令

rfkill常用有如下的命令:

# 羅列出所有的無線設備 rfkill list# 關閉所有的射頻設備 rfkill block all # 打開所有的射頻設備 rfkill unblock all# 可以關掉/打開某種類型的設備,例如WiFi rfkill block wifi rfkill unblock wifi# 也可以對于某個設備進行打開和關閉 # 下面的編號可以從`rfkill list`中查看 rfkill block/unblock 編號

2 rfkill與ifconfig配合使用

2.1 正常的現象

假設我的當前系統里面存在一個網卡wlan0,關閉其射頻信號,之后使用ifconfig則查看不到wlano這個網卡的信號了,代碼(代碼1)如下:

rfkill block wifi ifconfig

然后我再使用rfkill打開射頻,之后就可以使用ifconfig查看到wlan0了,具體代碼(代碼2)如下:

rfkill unblock wifi ifconfig

2.2 為什么這樣使用

由于存在這種特性,則計劃使用這種特性來,查看ifconfig來確定某個無線網卡的狀態。
為什么不使用rfkill list來查看對應無線設備的狀態了?
這時因為,在展示的列表中,對應的設備只有編號,并不是很客觀能與具體那個無線設備聯系起來。

2.3 發現的問題

但是發現一個問題,在我多次交替執行打開/關閉WiFi設備之后,無論是打開還是關閉設備,這個無線網在ifconfig中一直顯示,發現上面的判斷的規律失效了,我嘗試的系統是CentOS7.x。

2.4 配合ifconfig up/down解決問題

當我還想使用這個rfkill和ifconfig判斷是否關閉wlan0,怎么做呢?
我發現使用ifconfig interface up/down能夠控制ifconfig中顯示。如果我在使用rfkill啟停網絡之后,再配合使用ifconfig interface up/down,那么這樣就能再使用ifconfig就能達到剛才的功能了。
在具體執行的時候,只有rfkill啟動了射頻,才能使用ifconfig interface up,因此在逆向操作時候,先執行ifconfig interface down再執行rfkill停止射頻。具體代碼如下:

  • 停止射頻
  • ifconfig wlano down rfkill block wifi
  • 打開射頻
  • rfkill unblock wifi ifconfig wlan0 up

    這樣在其他程序或者進程/線程中就能使用ifconfig方便判斷硬件射頻啟停的狀態了。

    3 其他建議

    由于ifconfig命令已經算是過時的命令,則實際使用中,最后慢慢擺脫對于這個命令的依賴,使用ip命令代替。
    本文章討論的時候,只存在一個WiFi網絡,所有可以方便使用rfkill block/unblock wifi粗略控制開關,否則具體控制設備編號開控制啟停。
    本文章對于是否禁掉無線的判斷使用ifconfig并不是最好的,可以用其他更好方法嘗試。

    總結

    以上是生活随笔為你收集整理的Linux WiFi 射频开关`rfkill`控制无线网启停与`ifconfig`显示的关系的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。