筆電關獨顯讓續航增加

以續航力為取向的使用者,會希望能在外面的時候,沒有插座的情況下,還可以安心地使用。就像手機的電量,如果一定得一天一充,在電量快見底時就會有沒電焦慮。

筆電的正常使用情境下,要能超過四小時的續航力,最好要保六小時,因為電量剩20%會進入省電模式,不僅是影響效能,進入這模式還會觸發沒電焦慮,誰都不想沒電讓工作而受影響。

這裡只信仰最紮實的:功耗與電池容量。

官網宣稱續航力幾小時,那都是僅供參考。實際上使用是讓CPU做反覆間歇運動,點開或切換一個網頁就讓CPU使用率瞬間衝個幾%,那種靜態擺著才有續航力時間,通常要直接減半。

有些筆電也會打著「獨顯」的名義去讓筆電加值,但其實不一定需要獨顯,如果沒有獨顯需求的人,最好不要買搭配獨顯。獨立顯示卡能提供很好的圖形效能,但這效能也是需要用電驅動。筆電端那有限的電池容量,只要功耗多個幾瓦,續航力就會雪崩式減少。

如果買了帶獨顯的筆電,其實還是可以手動把獨顯關掉。筆電螢幕顯示通常都是吃內顯,並不會關掉獨顯就讓螢幕全黑。

在裝置管理員中,從顯示卡中找到該張顯示卡,停用裝置就能關掉獨顯

到底關掉獨顯之後的功耗有沒有差別?有差又差多少?這才是我們真正需要關心的。

透過ADIA 64這類的監控軟體,可以看到CPU與GPU的功耗,以及整體功耗數字。

測試的筆電是 微星 的 Prestige 15,在效能模式下,滿電能使用大概三小時左右。以下測試的數據會不斷給予滑鼠鍵盤操作,再選一個常態的功耗做完代表。

開啟獨立顯示卡

將CPU Package與GPU數字加起來,11.76w + 5.42w,總瓦數為 17.18W

關閉獨立顯示卡

將CPU Package,9.55w,總瓦數為 9.55W。※這數字不確定是否仍有供電給獨顯

就從CPU Package來看,關掉獨立顯示卡能讓功耗降至原本的81.2%,能讓續航力變為開啟獨立顯示卡時的123%。

關掉獨立顯示卡,確實能降低筆電整體功耗

如果滿電時能用三小時,關掉獨立顯示卡可預估再多出四十分鐘以上的使用時間。實際拔充電線看整體功耗,多出的續航力會比這個預估再多一些。

總之等那偶爾要用到獨顯的時候再打開,平時關掉,節能之餘還能增加續航力,就能讓攜帶外出使用時的沒電焦慮稍微緩和一點。

Win11 Microsoft Store 無法取得更新

連結文章

這幾天一直被這個問題困擾著,新電腦的Win11 Pro是有點問題的,經過更新到最新版本有好轉一些。

不過 Microsoft Store 卻一直沒有辦法更新,然後就多半的文章就是指令四連。

Dism /Online /Cleanup-Image /CheckHealth
Dism /Online /Cleanup-Image /ScanHealth
Dism /Online /Cleanup-Image /RestoreHealth

sfc /scannow

或是在應用程式的進階選項,重設重置。

以上方法都宣告無效,DNS也清理過、VPN也關掉等。

直到看到最前面的文章,終於在服務中找到「Storage Service」是已經被停用的,開啟之後就能讓 Microsoft Store 正常更新。

Anydesk 開機不自動啟動

對於一個效能控,Anydesk也只有要用到的時候才會用到,開機自動啟動實在是很討厭。

在Anydesk的設定裡面是沒有提供選項關閉,只好手動關閉它。

常見伴隨開機啟動的有三種方式:

  1. 服務
  2. 啟動
  3. 工作排程器

服務

從工作管理員>服務,可以找到Anydesk,一般來說調整成「手動」,就不會自動啟動。但是Anydesk仍會啟動,可見不是關閉服務。

啟動

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

把捷徑放到這個資料夾下,開機時就會啟動。進入這個資料夾,可以找到Anydesk的捷徑,刪除之後,開機就不會啟動了。

工作排程器

在搜尋打上「工作排程器」就可以找到。

進入裡面可以針對一些情境設定為觸發條件,像是登入後啟動,或是一個固定的時間。

Aruba Controller 多介面流量走向

有天在客戶那發現,它把管理VLAN設在速率1G的介面,其他資料VLAN設在10G的介面,所以無線速率上不去,為什麼呢?做了一個LAB去觀察。

以下是LAB的架構,Controller接兩條外線,一條VLAN1、一條VLAN5。由於Aruba是用Tunnel作為Client與Controller的連接,所以用單線表示。

今天使用者連上VLAN5的WiFi,對下方的電腦做iperf3,如果走左線就會被限速到,走右線可測得高許多的速率。

實測結果是走「左線」為什麼?

AP跟Controller之間,每一個BSSID都會有一個Tunnel,Client的資料會走這條Tunnel回去Controller,下指令可以看到,Tunnel在Controller端是Switch IP,因此資料會從左線回去。

show datapath tunnel table

今天要是想把管理與資料兩者分開,建議還是用VLAN區別,不要用實體介面拆開,就算這樣做,也要讓Mgmt VLAN(Switch IP)使用大頻寬的介面。

要更改Switch IP需要重新啟動Controller,在一開始規劃好是比較重要的,後面上線要重新啟動都會造成不便。

Aruba2930F經Radius認證登入

Aruba2930F可以針對各種協定去設定認證伺服器群組,像是Telnet走一種,SSH走另外一種。一般來說,預設是先看Local,第二順位是None。

往常都走CPPM,本篇以Windows Server NPS為例。在設定測試過程中,反覆去看認證紀錄,可以知道認證對應的服務原則是否有符合預期的項目,這部分就不贅述。

今天想要針對不同群組的使用者做權限分級,擁有管理權限的登入為Manager權限,次管理權限的登入為Operator權限,其餘無法登入。因為Aruba 2930F透過Radius或是Tacacs認證只支援Manager跟Operator兩種等級,並無法細分LeveL-1到Level-15。

參考文章

使用者資訊放在Radius Server上,如果使用者群組來自IT,對應權限是Manager,在Server-Type回傳數值6,如果像是NPS,就選擇Administrative。如果對應權限是Operator,在Server-Type回傳數值7,在NPS上選擇NAS Prompt。

回到2930F上,以下是針對telnet設定的範例,請自行修改。

radius-server host <Radius IP>
radius-server host <Radius IP> key <Secret Key>
aaa server-group radius "NPS" host <Radius IP>
aaa authentication login privilege-mode
aaa authentication telnet login peap-mschapv2 server-group "Radius1" none
aaa authentication telnet enable peap-mschapv2 server-group "Radius1" none
NPS的網路原則

這部分起了兩個原則,使用者來自特定群組會符合NetworkMgmt然後擁有Manager權限,其他使用者會符合NetworkOperator擁有Operator權限。

接下來拿兩個使用者為例:jn、jn-it。在規劃上,jn-it有Manager的權限、jn有Operator的權限。

以telnet連線,用jn-it登入,會直接進入「#」模式。

以telnet連線,用jn登入,會先進入「>」模式,輸入enable,重新輸入帳號,會發現無法進入「#」模式。

這時候如果輸入jn-it,就能夠進入「#」模式。

Thunderbird to Outlook

Thunderbird是無法把郵件轉去Outlook,如果郵件伺服器型態使用POP(Post Office Protocol)而不是IMAP(Internet Message Access Protocol)就會刪掉Mail Server上的信件。如果都使用IMAP就還能從Mail Server直接抓,沒有要轉的問題,發現自己選錯還真是欲哭無淚啊。

Thunderbird雖然好用,但是沒有Android跟iOS的APP。手機版Gmail又太陽春,設定還是靠電腦版同步的Outlook會比較好用,在電腦上設一設就好了。Outlook有跨平台同步設定的優勢,就想把手機的mail app改成Outlook。

網路上有兩種方式:第一種是利用Outlook Express去轉換,現在太過老舊是行不通的。

第二種是利用Gmail啟用IMAP去做中繼,讓郵件從Thunderbird到Gmail到Outlook轉換。

參考來源

步驟

  1. 登入Gmail網頁版,右上方齒輪 => 查看所有設定 => 轉寄和POP/IMAP => 啟用IMAP。
  2. 新增標籤(收件匣或資料夾),作為中繼Email的位置。
  3. 使用Thunderbird,三條線(選單) => 附加元件與佈景主觀 => 搜尋「ImportExportTools NG」=> 新增至 Thunderbird。
  4. 登入待轉換的帳號與Gmail帳號,並確認剛剛新增的中繼Email資料夾在Gmail帳號之下。
  5. 在待轉換的帳號的收件匣按右鍵 => 以mbox/eml格式導出/導入 => 導出信件夾內的所有郵件 => 以eml格式,選一個資料夾儲存eml文件。
  6. 在Gmail帳號的中繼Email資料夾按右鍵 => 以mbox/eml格式導出/導入 => 從一個目錄中導入所有的eml文件 => 僅從該目錄,然後選擇放有eml文件的資料夾。
  7. 用Outlook登入待轉換的帳號與Gmail帳號,並確認剛剛新增的中繼Email資料夾在Gmail帳號之下。
  8. 等待eml文件完全匯入,Outlook可以看到中繼Email資料夾有剛剛轉入的郵件。
  9. 將郵件移至待轉換的帳號。
  10. 回到Gmail,取消IMAP功能,然後把中繼Email資料夾與郵件刪除。

Aruba Controller Port Mapping

Port Mapping(又名 Port Forwarding),是一種搭配NAT(Network Address Translation) Server的進階功能。

假設有一台電腦與一台無線路由器。

電腦的IP為192.168.1.1/24

無線路由器的LAN IP(Private)為192.168.1.254/24。WAN IP為123.123.123.123/24。

由於流量從LAN(內部)到WAN(外部)會進行NAT,將封包上電腦的IP轉換成路由器的WAN IP,因此使得外部的設備在看流量的IP來源時是無線路由器的WAN IP。

NAT的運作機制就是把IP轉換,(從內部)去的時候,把來源IP轉換。回來的時候,把目的IP轉換。可以想像有兩條規則,只是大多在設定的時候簡單化了,設定其中一條規則時,另一條規則也動態產生。如果是家用無線路由器,這一部份甚至不用勾選,只要把線分別接到WAN與LAN,就預設LAN=>WAN會進行NAT。

可是一旦反向,從WAN到LAN時,在外部的人想要去連到電腦的22 Port,就會因為沒有對方沒有從WAN IP到LAN IP的NAT,導致無法路由到電腦的192.168.1.1:22,最終停留在無線路由器。

回歸正題,外部的設備想要連到電腦的192.168.1.1:22,然後無線路由器有啟用NAT功能。這時我們只就需要下一條規則,例如把到目的123.123.123.123:10022轉換成192.168.1.1:22即可。

會在Routing之前,而Port Mapping之後再依照Routing Table轉送。

Port Mapping在啟用內對外NAT(PAT)時,Port Mapping的ACL只要設定單向一條,位置在外線的IN方向。

架構圖

背景:Remote Device可以Ping到Aruba Controller(192.168.1.31),但Remote Device無法Ping到Local Device。而Local Device上網透過Aruba Controller進行NAT,同時也可以Ping到Remote Device。
可以想成,在Aruba Controller上,192.168.1.31是WAN IP,192.168.20.254是LAN IP。

情境:Remote Device想要SSH到Local Device,從WAN連入,方便管理。

關鍵設定:NAT、Port Mapping。

NAT

要啟用NAT,在Aruba Controller上,只需要在LAN VLAN的IPv4選項啟用 NAT Inside即可。

Port Mapping

要先設定Policy,然後把Policy套用在外線的IN方向。

新增Policy
新增Port Mapping Rule

SSH是TCP 22,因此Service選擇TCP。到Controller的10022 Port,透過Destination NAT將目的IP轉換成192.168.20.1:22。

建議在練習時,多一條Any Any Port置底,以免套用在外線IN方向時,意外造成Controller直接失聯。

建議在練習時,多一條Any Any Port置底,以免套用在外線IN方向時,意外造成Controller直接失聯。

到連接外線的Port上,Policy選擇Per-Session,然後套用PortMapping。

套用之後,記得按 Pending Changes,讓設定生效。

接著透過Putty,SSH到192.168.1.31:10022,看看設定是否有生效?

Putty,SSH到192.168.1.31:10022

透過檢查Session IP,看看自己的IP為何。

在Aruba 2930F,show session-list可以看到目前連線該設備的IP。

或者在Controller上「show acl hits」,可以看到Policy中的Rule被命中的次數。

其他解說

Port Mapping在沒啟用內對外NAT時,Port Mapping的ACL只要設定單向雙條,位置在內線的IN方向,或是在VLAN上進定雙向轉換,實際上這兩條規則能組合成Static NAT。

NAT會在Routing之前,而Port Mapping之後再依照Routing Table轉送。

切記!有被NAT來回流量都需要經過NAT Server上。

未做Port Mapping前的封包
來源IP:Port = a.b.c.d:e
目的IP:Port = 123.123.123.123:10022
無線路由器發現目的IP在自己身上,不做路由。

做Port Mapping後的封包 ※假設沒有啟用內對外方向的NAT
來源IP:Port = a.b.c.d:e
目的IP:Port = 192.168.1.1:22
無線路由器發現目的IP不自己身上,檢查路由表做轉送。

電腦收封包後,回傳的封包
來源IP:Port = 192.168.1.1:22
目的IP:Port = a.b.c.d:e

遠端設備收到回傳的封包
來源IP:Port = 192.168.1.1:22
目的IP:Port = a.b.c.d:e
當初「寄送時目的IP 123.123.123.123:10022」與「收到時來源的IP 192.168.1.1:22」並不同,如果是TCP就會交握失敗。

在防火牆上看Port Mapping

Windows動態桌布(Lively Wallpaper)與素材源

Lively Wallpaper是一套可以把Windows桌布從靜態變成動態的軟體,動態來源可以是影片、Gif、JS或者是Youtube串流。

Lively Wallpaper網站

Lively Wallpaper是開源又免費的,雖然不用花錢而且完成度又高,但是穩定性不佳,有時候會Crash掉,但這並不影響它帶來的改變好處。

Lively Wallpaper中文基本使用教學Lively Wallpaper的Github,可以參考別人寫好的,這篇就再進階一點介紹用法。

安裝來源可從Microsoft Store或是從網站上下載,這裡建議從網站上下載。MS商店版本更容易當掉,而且功能也有限縮。

再剛安裝好後,發現Youtube影片是可以用,但是直播串流是無法用,這時候需要在程式所在資料夾放上Streaming-Wallpaper,就可以使用Youtube直播變成動態桌布。

Streaming-Wallpapaer,下載youtube-dl.exe,放在Lively Wallpaper的資料夾,位於「C:\Users\\AppData\Local\Programs\Lively Wallpaper\」或是「C:\Program Files (x86)\Lively Wallpaper\」,再到其中的「\plugins\mpv\」把youtube-dl.exe放到裡面,就可以讓Youtube直播正常運作。

由於新增桌布時,時常當掉,後來發現,只要把「建立預覽」取消掉就好。

素材源

動是動起來了,但是有哪裡能找到很棒的素材呢?撇除掉付費與版權的問題。

pexels,是免費的素材庫,這裡可以找到蠻多品質很好的動態影音。

由於Lively Wallpaper是反覆循環播放,一般影片在尾頭銜接會有很明顯的不連續感。

因此個人建議使用「循環的」,這類的影像有特別設計,尾頭連接也會是連貫的,循環播放就會變成生生不息的。

雖然用JS素材也能由程式碼產生出連續的動態影像,但是CPU效能會為了生成而吃掉太多,倒不如播放特別設計過的循環影像。

個人現在用這個《攝影師:Pressmaster,連結:Pexels

雖然用Youtube串流也可以看得毫不間斷,但是會很吃網路資源。

影片對於CPU還好,不過卻會一直使用硬碟讀取。

GIF一旦載入就放在記憶體中,可是檔案肥大,除非有找到個很好的影像轉GIF的軟體,不然變成GIF不僅會失真也沒有影像流暢。

或者搜尋關鍵詞「Seamlessly loop video」

就能找到另外一個資源豐富的網站 videezy

Aruba Remote AP

在預設之下,所有AP型態都是Campus AP,在同一場點內的AP與Controller之間的網路皆在企業自身的掌握之下,因此AP與Controller之間的溝通多半不會面臨到NAT與防火牆等狀況,就能很順暢地建立起來。

Campus AP的優勢就是部署簡單,兩個關鍵:AP拿到的IP與Controller的網路有通。所有流量都從Controller出來,因此能在Controller上做基本防火牆的功能,SSID使用的VLAN也只要與Controller有通就好。

但在AP與Controller分別位於不同的區域網路,像是AP部署在分部(Branch)或是零散的小型場點,Controller在總部。兩者間必須通過網際網路的情況,此時Campus AP型態會因為遇到NAT無法建立起來,此時使用Remote AP型態,透過NAT-T,在防火牆規則上只需要開放一個Port(UDP 4500),讓Remote AP與Controller建立溝通。

Remote AP的優勢是對於環境容忍度較大,Remote AP能像是獨立AP運作,在分部可能沒有配置網管人員或是技術上不足導致維護不易,使用Remote AP能降低人力需求。

如何運作

環境要求與建議:
1. DHCP Server能派發可上外網的IP。
2. AP以DHCP取得IP。
3. 防火牆開放規則外網到Controller的UDP 4500或是Port Mapping。
4. 不要啟用CPsec。

Remote AP開機之後,會以NAT-T(UDP 4500)去與Controller建立溝通。

Controller會檢查Remote AP的MAC Address是否在Allowlist中。不在就會失敗。

如果有啟用「CPsec」,Controller會去檢查AP帶的憑證或是preshare key通過後去檢查後AP的帳號是否能通過驗證。
如果沒有啟用「CPsec」,Controller不去檢查AP帶有的訊息。

Controller分配Remote AP一個內部的IP,如果沒有建立內部IP Pool,Remote AP會因為娶不到內部IP而無法與Controller連線。

Remote AP取得內部IP,透過內部IP建立與Controller的Tunnel。能在Web UI上看到Remote AP的IP即為其內部IP。

前準備

  • Allowlist
  • Inner IP Pool
  • UDP 4500

Allowlist

※在8.7版以前為whitelist。

在 Managed Network > Configuration > Access Points > Allowlist > Remote AP Allowlist,新增Remote AP的資訊。

Inner IP Pool

MC&MD Cluster架構,Remote AP的Authentication method為Certificate

在Managed Conductor > Service > Cluster > Controller Cluster RAP Pool新增IP Pool。

MC&MD 架構,Remote AP的Authentication method為Pre-shared Key

在 Managed Network > Configuration > Services > General VPN 新增 IP Pool

在 Managed Network > Configuration > Services > Shared Secrets 新增 IKE Pre-shared Key

(可選)在認證伺服器,新增給AP登入用的account。

Standalone MD架構,Remote AP的Authentication method為Certificate

在 Mobility Controller > Configuration > Services > General VPN 新增 IP Pool

設定 Remote AP

Authentication method為Certificate

CPSec不啟用

Controller不會檢查AP Certificate,AP MAC Address只要在allowlist內就放行。

設定難度較低,建議初學者不啟用CPSec。

CPSec啟用

Controller會去檢查AP Certificate的合法性。

在MD Cluster架構下,會去取得 Controller Cluster RAP Pool 中的IP。

其他架構若對於AP Certificate不熟悉,設定難度較高,不建議初學者這樣佈建。

Authentication method為Pre-shared Key

IKE PSK輸入Shared Secrets的設定。

User credential assignment的選項可以依AP產生帳密,也可以手動指派帳密。

在 Configuration > System > Profiles > WirelessLAN > VPN Authentication > default-rap > Server Group,可以更改Remote AP的帳密要去哪個Server Group做驗證。

基本除錯

Remote AP的真實IP

在Dashboard,啟用「Outer IP」的欄位。

Remote AP建立溝通的相關LOG

在MD上,Diagnostics > Logs > Process Logs , 選擇「Station Management」

在MD上,Diagnostics > Logs > Process Logs , 選擇「Security logs」、「that includes」、「SA」

在MD上,Diagnostics > Logs > Process Logs , 選擇「ALL」、「that includes」、「stm」

進階設定

Split-Tunnel的使用

SSID的Split-Tunnel Mode是可以讓目標流量透過route src-nat轉換成AP IP,藉此讓流量在當地傳送。

至於需要當地轉送的目標流量是怎麼選擇的,全看Role的設定,全看ACL怎麼規劃。

所有流量的來源IP轉換成AP的IP,達到當地轉送流量。

本質上是Tunnel mode,連IP取得也是透過控制器去取得,差異點是誰做第一個路由。Split-Tunnel是AP,Tunnel則是控制器。

SSID與Controller失聯不斷線

Client的流量需要不經過Controller,然後一般的SSID預設是只有在與Controller連線才會發送,需要改成總是發放該SSID。

SSID的Forwarding Mode使用Bridge Mode。

在 Configuration > System > Profiles > Wireless LAN > Virtual AP中,選擇SSID。

在 Advanced 中,將Remote-AP Operation改為always。此設定讓Remote AP與Controller連線或失連都發送該SSID。

搭配Local Mobility Switch(LMS)

Remote AP會去哪個控制器報到?

順序最優先的是LMS,接著是LMS Backup,然後才輪到AP Provision Controller IP與AP Console的Master。

在 Configuration > System > Profiles > AP > AP system中,可以新建一個Profile。

建議修改LMS之前,都先創立一個AP System Profile,然後去AP Group套用該Profile。

在 Configuration > AP Groups > AP Group > LMS中雖然可以直接修改,但因為預設是套用名為 default 的 AP System Profile,因此修改是改default的設定值,可能會導致全部AP Group都被意外改掉。

Aruba Mobility Conductor L3 Redundancy

L3 Redundancy架構

在多場點的架構之下,要做到異地備援就會用上L3 Redundancy的架構。在大多數情況下,同一企業的多場點都會建立Site-to-Site VPN,使得私網域能互通。

在路由能互通之下,Mobility Conductor(MC,舊名Mobility Master,MM)就能建立L3 Redundancy。

L3 Redundancy的運作機制是,先設定MC的角色誰是Primary與Secondary,之後會由Primary去主控所有的Managed Device(MD)。MC的L3 Redundancy可與L2 Redundancy共用,因此L3 Redundancy架構下的MC最大數量為(1+1)+(1+1)=4,最大為4台。

MC中會有一個作為主控,通常是PMC。MD皆會與主控MC建立IPSec通道。要對MD做設定或看MC、AP與Clients等情形,請登入主控MC。

一旦MD與Primary失聯達15分鐘後,MD就會與Secondary建立IPsec通道,讓Secondary去主控MD。由於無線認證皆由MD去主導,即使MD與Primary失聯,也不會影響無線使用者上網。主要影響監控使用情形與暫時無法做設定。

設定步驟

建議先設完MM,再設MD。

  1. 先設定Primary MC(PMC),再設定 Secondary MC(SMC)。如果SMC下方有MD,先將MD切換去PMC。完成後再去PMC與SMC去設定L3 Redundancy。
  2. 建立起L3 Redundancy,可以在PMC與SMC的Mobility Conductor目錄下看到所有MC。
  3. 從PMC去修改MD,從Managed Network > Configuration > Controllers,點選MD,啟動Enable L3 redundancy。將Primary Mobility Conductor設定為PMC的IP位置,在有L2 Redundancy之下為VRRP IP, 將Secondary Mobility Conductor設定為SMC的IP位置。※請勿將MD3的Primary Mobility Conductor設定為SMC的IP位置,即使MD3與MM3在同一個場點。
  4. 設定完後按Pending Changes,MD會重新開機。
  5. 等待MD與PMC建立IPsec,即可完成。

測試環節

請先在PMC上先同步資料庫。

同時登入PMC與SMC WebUI,觀看設備連線情況。

將PMC的MC皆關掉,等待15分鐘後,MD會與SMC建立溝通,

登入SMC WebUI,觀看設備連線情況,MD是否在SMC,而Mobility Conductor目錄只剩SMC的MC。

啟動PMC的MC,SMC身上的MD很快又會跑回到PMC身上。

CLI

不論是MC之間,還是MD<=>MC之間,彼此都是建立IPsec溝通,因此用CLI去觀察IPsec的情形是最直接能得知當下的溝通狀況。

在MC身上

show crypto ipsec sa
show conductor-l3redundancy switch

在MD身上

show crypto ipsec sa
show conductor-l3redundancy status

Aruba Controller SNMP MIB

Aruba有一套網管系統「Airwave」,如果用Airwave可以很順利的從Controller上取得AP的資訊。

如果要用其他的網管軟體,像是PRTG或是Cacti,由於其沒有內建關於Aruba獨有的MIB資訊,因此只能從Controller身上讀到普遍設備上都會帶的介面資訊等,就無法讀到AP或是使用者資訊。

SNMP去詢問資訊時,首先帶的「community」要一致,設備上與SNMP Server都一致。接著SNMP就會以OID去問單項的資訊,像是某一界面的traffc或是speed。

而AP與使用者資訊也有自己的OID,那OID是多少呢?

首先我們需要「MIB Browser」以及「Aruba MIB」。

MIB Browser,我是從「ireasoning」下載,免費版最多讀取十個mib。

ireasoning下載MIB Browser

Aruba MIB,在ASP就可以下載。

ASP

安裝好MIB Browser與解壓縮出aruba-mibs,執行MIB Browser,並載入aruba-mibs,這裡載入「aruba-wlan.my」。

打開 MIB Browser 並載入aruba-wlan.my

在 Address 的地方填上<Controller IP>,如果有改SNMP Community,點「Advanced..」進行修改。

如果有改SNMP Community記得要修改
順著目錄找到「wlsxWlanAPTable」,右鍵然後點選 Table View
順利地顯示出Controller上AP的資訊

此時紀錄OID,就可以去網管軟體上自行刻出想要的樣子。

想要顯示到甚麼資訊都可以藉著這方法慢慢找,想一想還是直接現成用好的會比較省工。

Homeassisant共享外部儲存空間(NAS)

有了一個外接硬碟靠USB供電,再來有一個樹莓派裝上HAOS,就想要達成把一些占空間資料儲放或是備份到NAS上。

以目前消費級的儲存空間來說,如果沒有影片,那1TB相當地綽綽有餘。M.2 SSD的空間是寸土寸金,塞影片很快就會塞滿。要做到備份,訂閱那種Google Drive或是One Drive反而能達到全面的跨平台使用,而且app也做得相當好。

如果考量到一些私密性,放上雲端絕對不安全,Google跟Microsoft都有權力能去檢查使用者上傳的資料。因此會想要只有自己人能看到的,也就是「私有雲」的概念。但我覺得任何東西上雲端都會給人漏洞可鑽,靠著OSI七層的概念,還是讓NAS限制在三層,也就是私IP才能通就好。

一般無線路由器也會有USB可供外接硬碟或是隨身碟使用,不過無線訊號收發其實很吃CPU單核效能,倒不如讓無線路由器專職收發無線訊號,外部儲存讓樹莓派做還速度更快一些。

回到正題,Homeassisant(HA)接上外接硬碟,雖然讀是讀得到外接硬碟,但是又要怎麼讓區網內的人使用呢?

在「系統」分頁,在「Host」按三個點(選單)->硬體,HA可以讀到外接硬碟

這裡先講述一下我的解決方案,需要有四個條件:
1. 使用USB供電的外接硬碟
2. HAOS裝在樹莓派4b身上
3. 使用Samba作為檔案共享的協定
4. 外接硬碟格式化成ext4格式

條件1與條件2就不用多說了,接下來直接介紹條件3。

SambaNas,安裝方法就是複製網址,在附加元件商店去導入該網址,就能安裝SambaNas。

附加元件商店-> 三個點(選單) -> 儲存機制 -> 貼上網址

安裝完之後,我們還需要把外接硬碟接上,調整該附加元件(addons)設定才可以完成,讓筆電或是手機等去存取。

條件4是把外接硬碟格式化成ext4格式,先來淺談為什麼。

首先HAOS其實是一個類unix系統,簡單來說可以當成linux,而linux系統能讀ext3、ext4格式(Format),但對Windows系統的檔案系統(File System, FS)常見的NTFS、exFAT都不太能支援,會混淆,導致無法正常進行所有操作。因此外接硬碟要接在樹莓派HA上,就要把外接硬碟格式化成ext3或ext4格式,這同時也是SambaNas的文件要求。

外接硬碟接在Windows作業系統的筆電上,如果是ext3或ext4,就會無法正常讀取,而Window10的格式化,也只有NTFS跟exFAT兩種可選,並沒有ext3或ext4能選。需要使用一些工具才能解決這的狀況。

Windows10 格式化,檔案系統只有NTFS與exFAT可選

此時有兩種方式:
1. 在Windows10作業系統,安裝應用程式「MiniTool Partition Wizard Free」,透過該應程式去用ext4格式化外接硬碟。
2. 用虛擬機,使用Linux系統去格式化外接硬碟。

方式1比較適用小容量(1TB)以內的硬碟。當容量超過該值,用Linux虛擬機去快速格式化會比較快速。

執行「MiniTool Partition Wizard」,然後對著外接硬碟按右鍵選擇「Format」,格式選擇「Ext4」,最後再按Apply執行格式化。

照上圖,我用4TB的外接硬碟,此時用該套應用程式去格式化,進度調慢到天荒地老,不是一小時以內就能完工的事情,所以使用方式2,用類unix系統去做到快速格式化。

方式2是需要有個類unix系統的虛擬機,接上外接硬碟之內,是可以把其切換到去接到虛擬機上,實現外接硬碟與類unix虛擬機連接。

這裡簡單講一下指令,我用kali去做,首先要進入root的權限,「sudo su」。

然後先輸入「fdisk -l」去取得外接硬碟在甚麼位置,如「/dev/sdb1」等。

然後輸入「umount <Position>」,如「umount /dev/sdb1」。

接者輸入「mkfs -t ext4 -L <LableName> <Position>」,如像是「mkfs -t ext4 -L JN_Storage /dev/sdb1」,接著會顯示基本資訊,然後詢問你「y/N」,輸入「y」按下Enter進行格式化。

等待好了之後,就能把外接硬碟接在樹莓派HA上。

在附加元件 -> SambaNas -> 設定,在moredisks中,將DISKLABEL輸入進入。若不確定可以去系統->Host->選單->硬體,找到外接硬碟的相關資訊去查看。

在moredisks中,將DISKLABEL輸入進入

之後按「儲存」,然後重啟。

接下來就回到Windows系統的筆電上了,打開檔案總管,輸入樹莓派的IP位置,如「\\192.168.0.1」等,接著就會提示需要輸入帳密,照著SambaOS所設定的輸入即可。

可以看到「JN_Storage」在上面。

如果是使用ext4格式,透過Samba可以正常讀寫,也可以正常刪改。如果是NTFS或是exFAT就只能讀寫但無法刪改。

要讓Android手機自動備份,可以使用「foldersync」APP。記得帳戶類型是使用「SMB2」,SMB分享名稱一定要打上像是「JN_Storage」之類,Port號為預設445即可。

外接硬碟購買時要注意「PBR」與「SBR」兩種寫入方式差異,我有PBR跟SBR兩種的外接硬碟,PBR表現最穩定,而SBR到了需要重整磁軌的區域時,就會慢的一蹋糊塗。

不過SBR的容量價格比是最高的 ,對於那種影片或是檔案寫入就長期備份的而不常做異動的,就適合選這種。如果每天讀來寫去,絕對要選PBR才是對的!

用無線路由器對外接硬碟以NTFS格式,以WiFi AX 160MHz做讀寫,個人筆電(Intel AX201)可達讀110MB/s、寫50MB/s的表現。

用網路線接在無線路由器的樹莓派HA,外接硬碟以Ext4格式,以WiFi AX 160MHz做讀寫,個人筆電(Intel AX201)可達讀100MB/s、寫80MB/s的表現。

綜合起來,我覺得外接硬碟接在樹莓派HA有最好的綜合表現。

然後以無線AX傳輸,其實已經能跟1Gb有線網路的傳輸速度能比。期待WiFi 6G早點通過,不然5GHz的頻道以160MHz寬度一定會碰到DFS頻道,一個雷達佔用,160MHz可能就無法使用了。