CCNP-ENARSI 準備指南

Cisco Certified Network Professional – Implementing Cisco Enterprise Advanced Routing and Services (CCNP-ENARSI)是CCNP-Enterprise的其中一門選修科目,考試一共有55-65題,考試時間120分鐘,及格分數825分,答對率要超過75%才會通過,抓13題的容錯空間。

考試範圍 ,在準備的時候,請務必先看過這個再分配時間。

  • 35% – 1.0 Layer 3 Technologies
    • 1.1 Troubleshoot administrative distance (all routing protocols)
    • 1.2 Troubleshoot route map for any routing protocol (attributes, tagging, filtering)
    • 1.3 Troubleshoot loop prevention mechanisms (filtering, tagging, split horizon, route poisoning)
    • 1.4 Troubleshoot redistribution between any routing protocols or routing sources
    • 1.5 Troubleshoot manual and auto-summarization with any routing protocol
    • 1.6 Configure and verify policy-based routing
    • 1.7 Configure and verify VRF-Lite
    • 1.8 Describe Bidirectional Forwarding Detection
    • 1.9 Troubleshoot EIGRP (classic and named mode)
      • 1.9.a Address families (IPv4, IPv6)
      • 1.9.b Neighbor relationship and authentication
      • 1.9.c Loop-free path selections (RD, FD, FC, successor, feasible successor, stuck in active)
      • 1.9.d Stubs
      • 1.9.e Load balancing (equal and unequal cost)
      • 1.9.f Metrics
    • 1.10 Troubleshoot OSPF (v2/v3)
      • 1.10.a Address families (IPv4, IPv6)
      • 1.10.b Neighbor relationship and authentication
      • 1.10.c Network types, area types, and router types
        • 1.10.c (i) Point-to-point, multipoint, broadcast, nonbroadcast
        • 1.10.c (ii) Area type: backbone, normal, transit, stub, NSSA, totally stub
        • 1.10.c (iii) Internal router, backbone router, ABR, ASBR
        • 1.10.c (iv)Virtual link
        • 1.10.d Path preference
      • 1.11 Troubleshoot BGP (Internal and External)
        • 1.11.a Address families (IPv4, IPv6)
        • 1.11.b Neighbor relationship and authentication (next-hop, mulithop, 4-byte AS, private AS, route refresh, synchronization, operation, peer group, states and timers)
        • 1.11.c Path preference (attributes and best-path)
        • 1.11.d Route reflector (excluding multiple route reflectors, confederations, dynamic peer)
        • 1.11.e Policies (inbound/outbound filtering, path manipulation)
  • 20% – 2.0 VPN Technologies
    • 2.1 Describe MPLS operations (LSR, LDP, label switching, LSP)
    • 2.2 Describe MPLS Layer 3 VPN
    • 2.3 Configure and verify DMVPN (single hub)
      • 2.3.a GRE/mGRE
      • 2.3.b NHRP
      • 2.3.c IPsec
      • 2.3.d Dynamic neighbor
      • 2.3.e Spoke-to-spoke
  • 20% – 3.0 Infrastructure Security
    • 3.1 Troubleshoot device security using IOS AAA (TACACS+, RADIUS, local database)
    • 3.2 Troubleshoot router security features
    • 3.2.a IPv4 access control lists (standard, extended, time-based)
    • 3.2.b IPv6 traffic filter
    • 3.2.c Unicast reverse path forwarding (uRPF)
    • 3.3 Troubleshoot control plane policing (CoPP) (Telnet, SSH, HTTP(S), SNMP, EIGRP, OSPF, BGP)
    • 3.4 Describe IPv6 First Hop security features (RA guard, DHCP guard, binding table, ND inspection/snooping, source guard)
  • 25% – 4.0 Infrastructure Services
    • 4.1 Troubleshoot device management
      • 4.1.a Console and VTY
      • 4.1.b Telnet, HTTP, HTTPS, SSH, SCP
      • 4.1.c (T)FTP
    • 4.2 Troubleshoot SNMP (v2c, v3)
    • 4.3 Troubleshoot network problems using logging (local, syslog, debugs, conditional debugs, timestamps)
    • 4.4 Troubleshoot IPv4 and IPv6 DHCP (DHCP client, IOS DHCP server, DHCP relay, DHCP options)
    • 4.5 Troubleshoot network performance issues using IP SLA (jitter, tracking objects, delay, connectivity)
    • 4.6 Troubleshoot NetFlow (v5, v9, flexible NetFlow)
    • 4.7 Troubleshoot network problems using Cisco DNA Center assurance (connectivity, monitoring, device health, network health)

由於本人先前準備時,只著重在前面的路由協定,因此這部分拿了很高分。
ENARSI的電子書有24章節,前面20章節屬於前兩個大項目(Layer 3 Technologies, VPN Technologies),後面4章節便是剩下二者(Infrastructure Security, Infrastructure Services),後4章平均每章佔11.25%的總分,因此建議要先把時間都投入在後四章上面

因為有上過正規課程,課堂教材上的範圍沒有跟考試範圍一樣,考試是更廣更細更深。會有新玩意進來,就像DNA Center,因此,在八成往考試範圍唸,兩成就往其他地方嘗試,像是用 show 去看看有甚麼指令跟選項,都可以去瞭解。

學習資源取得:

  1. Office Cert Guide:「學習資源搜集」。
  2. 課堂LAB:因為版權問題,無法提供。
  3. GNS3:官方網站。
  4. Router ISO:範例都用R7200,請參考「學習資源搜集」。
  5. 鴻鵠論壇題庫:找同學要,建議剛出版的兩周內去考,過太久否則就看個人實力。

經驗指南

  1. 先了解這門考試的範圍,一些注意事項,看看前人的經驗談。
  2. 制定合理的學習規劃,四大項可以平均分配時間。
  3. 正規教材去逐一章節學習,筆記需要背誦記憶的知識。
  4. 做LAB不斷學習。
  5. 複習需背誦的知識,畫架構。
  6. 做題庫練習。
  7. 從題庫的題目去做衍生學習,將細節作筆記。
  8. 重新複習需背誦的知識。
  9. 考前複習題庫。
  10. 考試GO!

部落格的架構草擬(2021-01)

經過了半年的工作洗禮,加上換了一個地方繼續寫部落格,總覺得需要去整理一下「定位」與「架構」。

定位:是為了寫一些網路跟電腦相關的知識,而且是其他地方沒有的。畢竟越深入,簡單入口的教學文章就越來越少,越瑣碎也就相對越來學得好。除了深入以外,還要有一個學習流程,為這些知識文章有一個先後順序,加速並且幫助別人理解。

架構:目前的架構是在入年的遷移時規劃的,之後就沒有調整過。分類下來,並沒有令我覺得性質相同。部落格現在只有兩層分類,將來會調整成三層分類,以「領域」>「主項目」>「細項」做區分,並且會為每一層都依一個可參照的概念或文件制定分類。

分類

領域會分成:網路Network、程式語言coding、學習技巧與心得、公告、雜談。

標籤

這一塊會以「分類的第一層與第二層」的資格去覺得一個關鍵詞能不能當標籤。這個標籤可以看成是第二種層向分類,它也要具備可參照的概念或文件,像是廠商別之類的,性質相同但有所區分的。

施作時間

目前預計在農曆過年時候去進行。

目標

偶爾會有些人看到我過去的成果,然後會來問我,這代表那些知識是有幫助到別人的。之後的路會越來越窄,難度也會越來越高,學習資源也會越來越少。很少人在做一塊,秉持著先行者開拓的精神,要留下一點足跡。

期望今年可以產生更大量、品質更高的知識文章,就造另外一種成就感。

CCNP-ENARSI FAIL與準備心得

在1/23那天,考了核心跟選修,核心(350-401)有過,但是選修(300-410)沒有過,大約差兩題的空間。

準備方法:
1. 鴻鵠論壇的題庫:選修看的是九月版一百多題,距離考試當天過了四個月了。
2. 上課的LAB:搭配上課的講義,可以很快速的練到講義教的技術。
3. 題庫延伸:題庫有教的,就從上網多找一下相關內容。
4. GNS3:把路由協定跟設定技術練到滾瓜爛熟。

看了成績分布很兩極,我在路由那塊拿下八九成,另外的infrastructure只是六七成。也就是說,ARSI的R(routing)都準備差不多,但是SI(Service)的那一塊就很不熟。

ENARSI的實際考題就很粗糙,敘述或圖片漏東漏西的,比起核心ENCORE的品質差很多。再看看報名費,再想想這樣的內容,認證考試真的很好賺。最後填調查表直接給最低分。這是2021-01版本,也許未來會改進也說不定。

主修是主流,題庫會比較相近,所以比較不用擔心。
選修題庫變成冷門,四個月沒更新,實際考試大概有近二分之一是新鮮的,沒有題庫的庇護,得靠掌握細節上的實力才可能通過。

至於哪些細節要掌握?這程度已經遠遠超過網路上那些概念解說的文章,如果沒有人寫中文版本,這也許是我該努力的部分。之前也有想要寫,不過工作後時間少,覺得之前那種費工寫法的效率不佳。

目前正在思考要怎麼在少少的篇幅就能講到大大的細節。

之後會以「ENARSI」的程度去寫相關文章,會比起「Jan Ho的網路世界」這個入門級的更深入,再想想整體大綱要怎麼安排。

2021-02-02補充

努力了快要一周,也寫了不少文章,都主要為Infrastructure Service跟Security範圍內。

在這一周,因為走了最正規的路線,提前先調查好要準備的範圍,所以有了不小的進步。目前還有幾章沒有寫到「archive logging」、「IPv6 First Hop Security」、「CoPP (Telnet, SSH, HTTP(S), SNMP, EIGRP, OSPF, BGP)」、「BGP – TTL Security」。

ENARSI的題庫編修會在這些文章寫完後,用最快速度再多看蒐集來的題庫然後順便編修自已的版本。

雖然是Cisco的考試,但這些概念,就算不在Cisco產品身上,也有機會用到。

如果是考Cisco產品的,那我放棄。哈哈

ArubaOS 設定 Wi-Fi 開放時段

從WLAN,選擇SSID後,進入到Profile(※需開啟進階選項),就可以在這裡看到Deny time range。這裡也正是設定的關鍵。

內建有兩個時段,分別是:
night-hours:星期一到五,00:00-07:59 And 18:01-23:59。
working-hours:星期一到五,00:00-08:00。

要注意這邊的邏輯是「Deny」,如果是想要只在上班時間開放,就要選「night-hours」。

只有兩個時段是不夠的,今天收到一個的要求,需要讓它只在平日早上七點到下午五點開放,因此,需要再增加一個新的時段。

這個得透過SSH進入CLI才可以進行,先用 cd 先進入到目標的MD。
(Web介面是找不到的,雖然從 pending change看到是在 role & policy 中的 polices,但沒辦法操作。)

(Aruba_MM) *[MD] #conf t
(Aruba_MM) *[MD] (config) #time-range periodic newTimeRange

然後就可以輸入時段,可以從官方網站找到指令說明如下:

ArubaOS Command-Line Interface

因此可以照著需求去設定對應的符合時段,再次強調,最後應用在Wi-Fi上是以「Deny」的邏輯。換種思路,就是「打上不想給人連上網的時段」。

(Aruba_MM) ^*[MD] (config-submode)#weekday 00:00 to 06:59
(Aruba_MM) ^*[MD] (config-submode)#weekday 17:01 to 23:59
(Aruba_MM) ^*[MD] (config-submode)#weekend 00:00 to 23:59

打好了之後,別忘了輸入「write memory」去保存。

接下來要把新的時段應用在Wi-Fi上,這裡可以用Web去設定,也可以直接在CLI設定,既然都在CLI了,那就用CLI設定。

(Aruba_MM) *[MD] (config) #wlan virtual-ap <name>
(Aruba_MM) *[MD] (Virtual AP profile "<vap name>") #deny-time-range <name>
(Aruba_MM) ^*[MD] (config) #write memory

完成設定後,到了指定的時間,就會把該Wi-Fi的用戶全部踢掉,也無法再次連接上。但仍會繼續廣播SSID,仍然看得到Wi-Fi,但吃不到。

Spanning-Tree Protocol 經驗講述

本篇適合對Spanning-Tree Protocol(STP)有入門程度的人。

  1. STP的Priority是以「小」的優先。
  2. STP的預設值要特別注意!
  3. STP要穩定,盡量設定嚴格。
  4. STP請整體一致,最好要有一套規範,或是遵循原有的方式。

在目前上,STP主流使用Multiple Spanning-Tree Protocol(MSTP)、Papid Spanning-Tree Protocol(RSTP)跟Rapid PerVlan Spanning-Tree(RPVST+)三種,各家設備對於STP的預設值不同,有些如Cisco是啟用的,有些如Aruba是不啟用的,要特別留意機器的設定。STP是Layer 2防止環圈的機制,一個沒有注意就會接出迴圈,畢竟接線的人未必懂得STP。

STP的Priority是選「小」的,這點很不一樣,大部分都是選大的優先。

MSTP是可以依據選取的VLANs做切分,RSTP是VLANs一起算,RPVST是每一個VLAN都分開算,RPVST而可以兼容RSTP。會選用甚麼是看環境決定,看VLAN數決定,VLAN數少就用RPVST,多就是MSTP。少的不用MSTP,因為設定比較麻煩,理解也比較難。

簡單好懂比較重要。

實務上,STP是非常重視「穩定性」,一個穩定的ST,才能穩定網路。要增加穩定性,就要安排Priority跟Root,這是設計(Design),一定要先瞭解STP才能去規劃。

不穩定的STP會讓網路斷斷續續(Flapping),為什麼呢?你設定了保護機制,也設定了一段時間會恢復,然後被用了意想不到的接法,透過了一台沒有STP機制的Switch接了兩台有STP的Switch,然後就炸了。

在Switch間的用來當STP的LINK盡量使用光纖,因為光纖比較不容易被對接。其他的都設定BPDU Protection,一收到BPDU就Shutdown,盡量不要用BPDU FIlter去解決。

Root bridge多半是Core Switch,設定rootguard,可以避免規劃的STP被搶走。

這邊補充MSTP的基本概念,instance是一個計算單元,編號0-15,其中0是default intance,啟用時,所有的VLANs都會先在這個instance中,然後再將需要特別計算的VLAN放到instance 1-15中。

如果要切換SPT的模式,請先把BPDU-FILTER跟PORTFAST等功能關掉,然後再切換。不同STP支援的防護功能不同,改動之間也可能因此產生迴圈,雖然不至於卡死,但整個網路都會嚴重受影響。

最後,STP需要寫一套架構,這套架構需要十分嚴謹,然後要能讓其他設備或未來添加的設備加入在這個範圍內。看過一個網路架構,每一台Switch都是Root Bridge,每一台都各自作用,這樣就失去STP的用意了。

MPLS-VPN

這是一個最終架構,需要使用多種路由協定組合,才可以達成這種架構。

Mutil-Protocol Label Switching(MPLS),簡單來說,就是把IP位置轉化成標籤,然後用IP位置與標籤,參照標籤資料庫去傳遞資料。也因為標籤介於Layer 2 header 跟 Layer 3 header之間,因此有人說這是 Layer 2.5 。

關於路由為何要標籤化?這就要講述路由是如何學來的:自己設定、自己連接或是路由協定。一旦路由量一大,中間的路由器就得涵蓋所有邊際路由器(Provider Edge)的路由,才能正常傳遞資料,中間的路由器路由怎麼來?自己設定、自己連接或是路由協定,這使得負擔太大。

而標籤化產生同一規格,自動化將路由轉換成標籤,標籤資訊在同一區域內傳遞,藉此使被以標籤取代路由的資料可以傳到對的邊際路由器,最後,設定簡單。中間的路由器只需要學習區域內的路由器。

不過會面臨到一個問題,那就是客戶透過VPN去串連不同的Site點,跟ISP業者買這個服務。設定的責任便落於ISP身上,因此MPLS-VPN是個解決客戶想跟ISP設備做VPN串聯的方式,客戶端就不需要甚麼設定或買相關設備跟Lisence。

MPLS-VPN可以先拆成兩部分:MPLS、VPN。

MPLS設定很簡單,但是不能解決相同網段的問題,必須得因為不同客戶再加上不同標籤才能區隔。

VPN設定較為困難,因為相同網段出現在路由表上,會選擇AD值較小的,如果沒有區分都共用同一份,會變得很混亂。仔細思考,客戶A應該要有個客戶A的路由表,客戶B也得有個客戶B路由表,最後,自己ISP要有個內部路由表。

為了使路由表要有所區分,就會使用Virtual Routing and Forwarding(vrf),切出個虛擬路由器,這個虛擬路由器只需要兩個,分別是連接客戶Site1跟Site2的那兩顆。客戶sites的路由要怎麼彼此交換?需要有一個傳遞路由的橋樑。

BGP是個適合當中間橋樑的路由協定,因為它的鄰居可以相隔許多台,甚至是穿過Internet。BGP透過Redistribute變成路由的載體,也因為盛載著別的路由協定的關係,所以又稱為Multi-Protocol BGP(MPBGP)。

以下是Topology
第一行,是最基本的架構,中間Router有兩個介面跟SiteA跟B接起。
第二行,中間Router可以藉由MP-BGP跟VRF拆成兩個部分。

CUST_A_SiteA <-> ISP Router(CUST_A) <-> CUST_A_SiteB
SiteA <-> { ISP Router(CUST_A) <-MPBGP-> ISP Router(CUST_A) } <-> SiteB

換一種簡化的示意圖。

SiteA <-> db <-> SiteB
SiteA <-> d ———- b <-> SiteB

因此,要完成MPLS-VPN將會有三大部分要做到:

  1. MPLS
  2. VRF
  3. MPBGP

學習設定範例及說明請參考:Multi-Protocol Label Switching (MPLS) 多協定標籤交換

VRF需要設定:Route Distinguishers(RD)、Route-Target去區分不同的虛擬路由,相同的虛擬路由需要有一樣的設定。

MPBGP要做的,就是把客戶路由協定redistribute到BGP,BGP再redistribute到客戶路由協定,以及把客戶路由傳到兩端點對應的VRF中。

設定順序建議:VRF -> MPLS -> MPBGP , MPLS-VPN是一個大工程,要做好就要穩穩地一步步來。

HASHCAT之字典破解HASH入門

HASHCAT是一個逐一遞迴(暴力)運算去還原HASH的工具,沒有特別高深的技巧,最重要的就是運算能力。即便是擁有運算能力,對於常見的八位數密碼,依舊需要花上許多時間,如果是八位數純數字密碼,筆者電腦需要跑15分鐘,再加一位變成九位數,就要花上兩小時半。

密碼不一定是純數字,也可能加上英文字母,英文字母又有大小寫之分,更不要說有特殊符號,或者超過八位數,這些可能性都是讓計算時間大幅延長,輕則一年,多則上百年,因此暴力破解並不適合一般設備,就算換張頂規顯示卡,算力四倍,計算時間剩四分之一,一年變成三個月,還是要不久的時間。

因此,得把計算時間簡化成一週,這才是合理的時程。為此,需要去減少嘗試的組合,所幸,密碼並非是毫無章法,基本上都內藏一些規律,這些規律使得密碼容易被記住,如果掌握些規律,就能夠優先嘗試較為可能的組合,進而減少還原密碼的時間。

密碼設計是一門心理學,這個人會使用的密碼,會參照一些訊息,簡單來說是出生年月日、英文姓名或電話號碼等。這些訊息就藏在這個人的環境之中,如果你仔細觀察,也許就能從相處之中發現。

不過,想要用hashcat破解密碼成為駭客,這是不實際的,因為太沒有效率了。我也不建議拿它當作破解別人帳密的工具,這是違法的事情,但是如果是用在自己身上,也許就能順利找回自己遺忘的密碼。

入門:如何使用hashcat

先從官方網站下載HASHCAT,然後解壓縮後的資料夾內執行cmd,裡面會有幾個example.cmd作為範例,以下是簡單的模板跟範例,複製下面範例執行之後,HASHCAT就會進行運算。。

hashcat.exe <破解方法> <Hash類型> <Hash值>
hashcat.exe -a 3 -m 0 5E8667A439C68F5145DD2FCBECF02209

-a 3 是指用 暴力破解法。
-m 0 是指hash類型為 MD5
5E8667A439C68F5145DD2FCBECF02209 是本次要嘗試的密碼,本身為87654321。

計算出來後,按向上鍵並在最後面打上 –show,就可以看出還原出來的密碼。

hashcat.exe -a 3 -m 0 5E8667A439C68F5145DD2FCBECF02209 --show 
=> 5E8667A439C68F5145DD2FCBECF02209:87654321

就算拿到hash值,但也要知道是甚麼樣的hash類型才能復原,這才是實戰的重點,拿範例學習實在很容易。如果找出hash類型並不在本文範疇內,有興趣可以自行搜尋或是等待日後補充。

hashcat.exe -a 3 -m 100 A7D579BA76398070EAE654C30FF153A4C273272A

-m 100 是指hash類型為 SHA1
A7D579BA76398070EAE654C30FF153A4C273272A 是本次要嘗試的密碼,本身為87654321。

同一組字串換一種HAHS類型之後,計算速度不到MD5的一半,意味者計算時間的加倍與更多。如今MD5跟SHA1並不是主流(重要級)的加密方法,因為被算出的速度很快。真的要實戰,碰上使用其他種HASH加料,會比範例還要更花上不少的時間去計算。

暴力破解可行,只是太久。接下來要使用字典,讓計算可以更快完成。

正文:字典破解HASH

假設你會錄取wifi的shakehand包,然後得到一組HASH,這組還原了,你就有了wifi密碼。要知道wifi的Preshare Key至少會有八位,以及它的性質是供它人使用,所以不會設一堆令人難以理解的規律。

今天有一間旅館,名稱為「好和平」,電話為「49-5969798」,然後發現wifi有分成房間,你住在「501」房,要連上名為「room501」的wifi。※皆屬虛構

78AAE7BACFD940C154CB8F4BDE7E0BEBCBBAC566
92ED10EFAF1DC063FAB36CCB0C9BBA375912541A
54B87CC9227E6347950C268B883EA7C6C4B7C2BD

這有三個HASH,代表不同種可能,為了方便進行,這邊都是以「SHA1」類型。以下列出一些目前發現的線索,並且列出可能的組合。

NICEPEACE
NicePeace
nicepeace
Nice
nice
Peace
peace
NP
N
P
495969798
495
969798
room501
Room501
Room
501

把上面內容存成「sample.txt」放到hashcat資料夾,然後可以運行下方指令。

hashcat.exe -a 1 -m 100 78AAE7BACFD940C154CB8F4BDE7E0BEBCBBAC566 sample.txt sample.txt
hashcat.exe -a 1 -m 100 92ED10EFAF1DC063FAB36CCB0C9BBA375912541A sample.txt sample.txt
hashcat.exe -a 1 -m 100 54B87CC9227E6347950C268B883EA7C6C4B7C2BD sample.txt sample.txt

這會用從字典中,將兩個詞組合新字串,第一個詞從sample.txt出,第二個詞從sample.txt出。藉此,順利地破解出所有的密碼。

一個好字典,需要把各種訊息納入,並且做適當切割與轉化,這種思路便足以使用多數的情境。網路上有許多密碼字典,動則數十GB,甚至更大,如果使用者的密碼用得太過於簡單,用這樣的字典就能夠找出來,無須費心蒐集資訊。

最後,本文是HASHCAT的教學,並不鼓勵拿去破解他人的密碼。也希望可以今後在選擇密碼的時候,反思密碼會不會太容易被破解,避免使用很容易被他人知道的個人資料。

讓 putty 成為 telnet 的預設程式

步驟一
按下「Win + R」,執行視窗中輸入「regedit」,打開登錄編輯程式。

步驟二
進入「電腦\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\telnet\shell\open\command」,對 (預設值) 按右鍵,選擇修改。

步驟三
填入「”<Putty.exe 路徑>” “%l”」,如筆者為:”C:\Program Files\PuTTY\putty.exe” “%l”。按下確定。

telnet本身是通訊協定,但在控制台內的預設應用程式卻找不到,所以只好到登錄編輯程式進行修改。

在作lab的時候,因為win10的內建telnet的enter會按一次輸入二次,造成不便,只好更動。

如果對putty的cmd指令有了解,也可以把default application加入一些個人化配置,如「-load <session name>」,讓log都到session指定的資料夾。
(相關指令參考︰Putty Command line documentation)

在Kali linux上安裝無線網卡(TP-Link T9UH)驅動

環境:
Kali linux(VM): 2020-04版本
TP-Link Archer T9UH V2

當你無線網卡插上去,然後轉給Kali(VM)用,發現kali吃不到無線網卡,也就是沒有wifi可以選,這時候,就是要朝著安裝驅動程式前進。

安裝方法參考此文章:Need rtl8814au driver for kernel 5.3 on Ubuntu 19.10

進到Kali使用Terminal輸入下列指令:

sudo apt install git dkms
git clone https://github.com/aircrack-ng/rtl8814au.git
cd rtl8814au
sudo make dkms_install

之後就可以看到Kali Linux的網路選項中,有wifi出現,就可以用Kali跟無線網卡做更多的學習。

歷程

第一時間會想到安裝官方網站的驅動程式,而且也有Linux版本跟手冊,照著手冊操作會發現弄不起來,這是因為版本差異,官方的驅動是kernal 4.x的版本,但Kali已經升到5去了。

產品明明不是太舊款,驅動這一塊就沒有做上去。只好降版本,官方手冊上用的舊版本不好找,安裝也有點問題,照著說明更新就會出問題,版本太舊了。

照著Error msg去找,看到其中一行,理解出問題點就只是原廠沒有再對kernel版本5去更新,於是缺少了甚麼就不能用。搜尋缺少項目,看到了另外一種解法,針對晶片去安裝驅動。

裝置能不能用,重要的是裡面的「晶片」能不能驅動,無線網卡的晶片不是TPLink的,晶片是甚麼型號可以從維基或是官方驅動裡面去看。TP-Link T9UH V2是「RTL8814a」,接下來就可以從「Kernal 5」跟「RTL8814A」做搜尋,然後我就找到那篇文章,一用就順利運作。

Aruba 如何從Controller看到RAP當地IP跟線路速率

在 Controller 的 CLI 下指令,依序是RAP的當地IP、線路速度。
# 注意!不是Mobility Master(MM),要連進Controller。

show ap monitor arp-cache ap-name (ap-name) | include br0:
show ap debug port status ap-name (ap-name)

解說

Remote Access Point(RAP),通常是AP跟Controller不同網段的設定模式,也可以跨越Internet。其跟Controller建立Tunnel進行溝通,因此在WebUI看到的AP IP是Tunnel的IP位置。

RAP的當地IP是可以與其他RAP重疊,對Controller來說只要Tunnel IP不重疊就好,因此對Controller的角度來看,是看不到AP的當地IP,也就不會RAP當地IP衝突的問題要擔心。

Controller擁有控制AP的權力,當然也可以撈回AP的資訊,因此從Web上,是可以從 Diagnostics項目中Access Point去撈。從下圖去撈,可以撈出該AP的資訊,並且可以從資訊往上找出是下甚麼指令:Show ……. ,然後取得AP的部分資訊。

RAP的當地IP是TroubleShooting一個很重要的參數,尤其是RAP以DHCP方式取得IP,一旦出現了預期之外的DHCP Server,就可能導致AP取得預期外且無法連網的IP,導致無法跟Controller保持連線。有些時候有其他DHCP Server,但是發的IP是可以上網的,就可以透過當地IP發現這個狀況。

RAP的線路速率是更常用的,客戶會反映為什麼AP的WIFI速度會那慢?接著先質疑設備爛,但大部分都不是設備害的。網路線品質不良是很常見的,界接的Switch不支援到1G也是有可能,當AP安裝不是可控的時候,這個資訊可以很快定位出「Wifi速度不佳」的因素所在。

即便是當初速率是沒問題的,但時間會讓網路線出狀況,像是被老鼠咬、後面拉折到線路等。你在遠端,不是很清楚近端狀況,也許透過這個排除,在遠端就能解決掉,少跑一趟。

這兩項是我一直很想知道的資訊,這兩天弄到十二點多去研究出來。最近能夠感受到這一塊不是那麼容易就能精熟,一個厲害的精熟的人,價值很高,因為這不是很容易就能學起來,但卻影響深遠且關鍵。

Aruba Access Point 300 Series(305) 如何灌入image

主要參考:apboot模式给AP升级

今天為了要還原IAP設定,所以下了兩行指令「clear os 0」、「clear os 1」,這使得AP內的image檔都被清乾淨,然後讓IAP無法正常使用,像是一顆thin AP。

AP開機的時候,會先從 flash 開始找 OS Image。在預設狀態,其中 Partition 1 是原廠image存放的位置,Partition 0 是目前運行的image。

如果沒有在flash找到可用的image,就會從tftp去取得。tftp的位置可以透過「setenv serverip <TFTP-Server IP>」去指定,然後下「setenv bootfile <FileName>」,開機時就會去取得設定的檔案。此外,也可以從dhcp取得的資訊去做DNS解析,AP會去找到名稱為「aruba-master.localdomain」(TFTP)的ip,然後自動取得OS。

如果在Flash沒有檔案,開機後再透過TFTP取得OS,我發現只有被納管(thin ap)的OS版本才會正常運作。因此得把Image放入flash中,才能回到一個正常的IAP。

以下是指令流程:

  1. 插Console,拔插電,按Entrer進入<apboot>模式
  2. 「dhcp」自動取得IP位置跟「setenv serverip <TFTP-Server IP>」Server IP
  3. 「Upgrade os 1 <FileName>」透過TFTP取得image
  4. 「purgeenv」清除環境變數
  5. 「boot」開機

為了示範,把OS image都清除掉。

由於IAP的預設密碼是SN,建議先打「mfginfo」去複製SN,以方便後續登入跟設定。

這裡用「dhcp」去取得ip。如果需要手動指定IP:「setenv ipaddr <IP Address>」跟「setenv netmask <Netmask>」。(這裡是我的筆電當DHCP-Server)
serverip是TFTP-server的IP。(這裡是我的筆電當TFTP-Server)
ArubaInstant_Ursa_8.6.0.6_77124是OS image名稱。

等待TFTP跑完之後,「osinfo」可以看到本來空的Partition 1,現在有了OS image。

「purgeenv」清除掉之前用setenv所指定的變數。
「boot」開機。

經過這些步驟,IAP能夠正常使用Web管理。對了,把剛剛複製的SN貼到密碼欄,就能夠繼續設定IAP。

4K串流不卡頓的無線網路環境要求

  1. 有硬體規格可以順暢錄4K並不發燙而降低效能的設備。
  2. 以4K30幀串流,在場地範圍中的最糟點,無線傳輸最低速率要達到120Mpbs。建議值要達250Mpbs。
  3. 要有一個能做到漫遊(Roaming)的無線切換。

最近聽到了一個需求,如題。目前做直播的,大多有一個定點或是小範圍,針對這樣的區域做加強,就可以提升串流品質,同時也不會花太多錢。這樣的直播通常不會跨越一個Basic Service Set(BSS),也就是一個AP能涵蓋的範圍。

今天如果要移動,跨越了數個BSS,不卡頓就一定要達到漫遊,而達到漫遊,就需要有無線控制器去協調。

接下來要煩惱的是,4K的無線訊號強度跟傳輸要求。能夠傳輸4K影音,一定只看5GHz的頻段,還要有一定的dBm去保證。

無線電波很容易受到干擾,走動直播的行動模式更是最為干擾的那種。要知道裝置拿到面前跟原地一百八十度轉身,就會讓傳輸速率瞬間往下掉。一舉一動,都能夠靜止時偵測的dBm再少5~10左右,這點就可以讓傳輸速率暫時往下掉一階。

因此如果傳收速度有300Mbps,這樣的干擾可以視為直接減半150Mbps。走動到150Mbps時,可能只剩75Mbps。等到了75Mbps,這樣干擾可能就斷斷續續了。

比起傳輸速率,低延遲更是一個很重要的點,畫面慢個30ms就會有感覺,即便速率夠,也不能保證不會慢個30ms。所幸可以用延遲畫面來彌補短時間的延遲或速率不足,只要讓播出畫面晚個五秒,後面速率一上來就可以傳遞出之前的缺漏。

重要的來了,4K串流到底每秒需要多少的傳輸速率?就1080P影片來說,我會抓8Mbps來流暢播放。4K影片的解析度是1080P的四倍,所以也就要抓32Mbps才會穩定。這部分的速度是有線的,有線的穩定度更高,不會有移動跟距離造成的傳輸速率的變化。因此,設想訊號最糟的情況,最低值要有四倍的,建議值要有八倍,才能確保影音能即時傳出。

在公司用兩台IAP架了一個Roaming的環境,並且使用iVCam,用手機4K錄影透過wifi傳到筆電上面,筆電可以看到手機的即時畫面(延遲一秒左右),就能夠實現4K串流的測試條件。

在4K30幀的規格,使用H264編碼,在不卡頓的環境,每秒大約跑35Mbps左右,峰值不超過50Mpbs。如果換成60幀,流量直接加倍,可惜我手機的效能不足,沒有辦法稱太久,預覽畫面也沒辦法流暢地呈現。

用iperf3做壓力測試,測試出來的傳輸速率可視為可達的最大速率,人保持一直遠離一號AP移動,手機速率從400Mbps開始一直衰退,大約在90Mbps左右做roaming,換到另外一顆二號AP有220Mbps。這樣的速率跑4K30幀串流還撐得住。到了35Mbps就會明顯卡頓,然後很快就會斷線。

其實自架環境中的AP沒有擺得很開,因為受限於網路線長度跟電源線。如果要抓AP放置的距離,大概間隔十米左右,交錯擺放。這點跟那天去現場測試的結論是差不多的,用的是AX等級的AP,只能說,如果要做到這點,真的要很有錢。

我有了另外一個很省錢的想法……不過就不會用到AP了,基本上也沒有生意可做。

對於隨時就能起一個網路環境的我來說,iVCam真的很有趣,這使我可以輕易地在任何一個地方架設起手機充當監視器。