實驗一 連結上網---尋找基地台

[實驗目的]

   學習連結上網過程中的第一個步驟---尋找基地台的過程。

 

[實驗設備和測試環境]

1.      基地台x1 (SMC SMCWBR14S-N4)

2.      筆記型電腦一台 (Benq U102, Broadcom 802.11g網路卡)

3.      AirPcap Tx

4.      Windows XP + winpcap 4.1.1 + wireshark 1.2.6

 

[背景知識]

    行動主機與基地台連結的程序包含(1)找尋基地台(2)身份認證(3)系統連結這三個主要步驟。其中第一個步驟又分成主動找尋基地台方式和被動找尋基地台方式,主動找尋基地台主要是透過行動主機送出Probe Request,而基地台回應Probe Response來通知行動主機基地台的一些資訊。Probe Request的訊框格式如下圖所示。在frame control中的type會為00subtype=0100表示試探要求(Probe Request)。而在Frame Body中,SSID通常會被設為 0以表示這是一個廣,但不是每個Probe Request都一定會把SSID設為0,如果工作站事先知道,就會直接填入SSID的名稱;而Supported Rates則分為一定要支援的速率與可選擇的速率,若工作站無法支援所有基地台所要求強制支援速率,就沒辦法加入該基地台。

 

 

Probe Response的訊框格式如下圖所示。當基地台收到Probe Request的時候,會使用Unicast的方式回應發出Probe Request的行動主機。

fig3

 

被動尋找基地台的方式就是行動主機被動的等待訊標(Beacon)訊框,然後再加入,其訊框格式如下圖所示。在Frame BodyTimestamp是用來讓相同Basic Service Set的行動主機作同步用,其單位為micro-secondBeacon Interval是表示多久時間基地台會送出一次訊標,其一個單位時間是1024 micro-second,目前大部份基地台的內定設定值為100,也就是相當於1024 micro-second * 100 =0.1024秒。

fig4

 

Capability Info中的ESS/IBSS則是用來顯示目前無線網路的環境模式設定,如果現在是infrastructure modeESS會設為1IBSS會設為0;如果現在是Ad Hoc mode ESS會設為0IBSS會設為1。其他在Capability Info的欄位先暫時不討論。

fig5

 

回到Frame Body中的SSID,此欄位又分三個子欄位,第一個子欄位Element ID0,用以表示為服務組編號(SSID),第二個子欄位為文字字串長度,第三個子欄位為SSID字串內容,舉例來說,如果我們設定基地台的SSIDSMC,則此SSID欄位就會用00 03 53 4D 43表示,其中00表式服務組編號,03表示後面有三個字母,53ASCII中表示S4D表示M43表是C,所以 行動主機藉由分析此欄位就可以得知有一台名叫SMC的基地台在附近。

fig6

 

另外一些常見的Element ID的值和其意思可以參照下面的圖。

fig7

 

支援速率(Supported Rate)Element ID的值是1Length表示後面共有幾個位元組是有被支援的速率(每個位元組代表一個支援的速率),每個位元組會再細分成1+7bits,最左邊的那1bit 表示速率是否一定要支援,如果是強制要支援則會設為1,不一定要強制就設為0,另外的7 bits就是速率的值,每個單位就是500kbps,所以若值是2就表是1Mbps (500*2=1000kbps=1Mbps) ,如果是4就是2Mpbs,如果是11就是5.5Mbps,如果是22就是11Mbps(這樣的解釋雖然跟下圖圖示有所出入,但這樣的分析方法比較簡單易懂)

 

temp11

 

(其他Element ID有遇到時再進一步解式)

 

[實驗環境和步驟]

1.      實驗的環境如下所圖示。把基地台設定為Router模式,另外把SSID設為SMC。再把電腦中無線網路卡Broadcom 802.11g網路設定設成自動取得IP位址,然後在電腦上插上Airpcap Tx 並打開wireshark

DSCN7664 

 

2.      Wireshark的環境中選擇CaptureàInterface

 

3.選擇AirPcap USB wireless adapter nr.00start開始抓取封包。

 

4.打開無線網路設定,選擇重新整理網路清單。等到出現SMC的資訊。(:KMIT是國立金門技術學院無線網路的SSID,由於測試環境是在筆者的辦公室,所以也會收到KMIT的訊號)

temp4

 

5.然後回到Wireshark環境,選擇CaptureàStop停止抓取封包。

temp6

 

6.Display Filter輸入(wlan.fc.type_subtype == 0x04)  or (wlan.fc.type_subtype == 0x05) 以篩選出Probe RequestProbe Response的封包,其中subtype=0x04Probe Requestsubypte=0x05Probe Response)