WIFI 考勤打卡 淺析

WIFI 考勤打卡 淺析

一馏臭、背景

最近產(chǎn)品部提出了在WEB端設置wifi考勤打卡新需求,根據(jù)管理員設置的wifi相關信息(主要是WIFI名稱和MAC地址)退敦,員工用戶利用移動端相連接的wifi進行wifi考勤打卡诅岩。

二、名詞術語解釋

下面的理解全是建立在無線路由器的基礎上芒炼。如有錯誤請指出。

1术徊、SS

SS(Service set)即服務集本刽,是無線局域網(wǎng)中的一個術語,用以描述802.11無線網(wǎng)絡的構成單位(一組互相有聯(lián)系的無線設備)赠涮,使用服務集標識符(SSID)作為識別子寓。

可以分為獨立基本服務集(IBSS)、基本服務集(BSS)和擴展服務集(ESS)三類笋除。其中IBSS屬于對等拓撲模式(又稱Ad-Hoc模式斜友、無線隨意網(wǎng)絡),而BSS和ESS屬于基礎架構模式垃它。這些拓撲是原始的802.11規(guī)范中定義的蝙寨,其他的如網(wǎng)橋、中繼器等則是屬于特定廠商的擴展或者WDS的拓撲模式嗤瞎。

2、SSID

SSID(Service Set Identifier)即服務集標識符听系,是一個或一組基礎架構模式無線網(wǎng)絡的標識贝奇,依照標識方式又可細分為兩種:
基本服務集標識符(BSSID),表示的是AP的數(shù)據(jù)鏈路層的MAC地址靠胜。
擴展服務集標識符(ESSID)掉瞳,一個最長32字節(jié)區(qū)分大小寫的字符串毕源,ESSID標識與SSID相同的網(wǎng)絡。術語SSID最常用陕习。
在此可以理解為無線路由器發(fā)射的某個wifi的名稱霎褐。(SSID=name of network)

3、BSS

BSS(Basic Service Set)即基本服務集该镣,是一組能在PHY層相互通信的所有站冻璃。每個BSS都有一個稱為BSSID的標識(ID),它是服務于BSS的接入點的MAC地址损合。
用在無線路由器發(fā)射出的wifi上可以這樣理解:某一個無線路由器發(fā)射出的wifi信號所覆蓋的范圍可視為BSS省艳。

BSS

4、BSSID

BSSID(Basic Service Set Identifier)即基本服務集標識符嫁审。

在上面的基礎上可以這樣理解:對某一個BSS基本服務集的唯一標識跋炕。例如,某無線路由器發(fā)射了一個名稱為A的wifi熱點律适,同一區(qū)域另一個無線路由器也發(fā)出了一個名稱為A的wifi熱點辐烂,當手機連接A熱點時,如何辨別連接的是由哪一個路由器發(fā)射的wifi呢捂贿?

這時候就要用到BSSID了纠修。一般情況下BSSID可以理解為無線路由器的MAC地址,通過查看手機連接wifi的MAC地址即可知道連接的是哪一個路由眷蜓。(BSSID=AP MAC address)
其實準確來說手機得到的BSSID并不是路由器的基準(出廠)MAC地址分瘾。

例如,筆者公司的某款無線路由器B的出廠MAC地址為 XX:XX:XX:XX:XX:F1吁系,當手機連接此wifi查看mac地址時發(fā)現(xiàn)是XX:XX:XX:XX:XX:F2德召,或者是XX:XX:XX:XX:XX:F3。

5汽纤、ESS ESSID

ESS(Extended Service Set )即擴展的基本服務集上岗。
ESSID(Extended Service Set Identifier)即擴展的基本服務集標識符。
BSS+BSS+BSS+BSS+...=ESS蕴坪。ESS為多個BSS的集合肴掷。ESS使用指定的ESSID作識別。

通過將多個BSS比鄰安置背传,可以擴展網(wǎng)絡的范圍呆瞻,如果這些BSS通過各種分布系統(tǒng)互聯(lián)(無論是有線的還是無線的),擁有一致的ESSID径玖,并且對于邏輯鏈路控制層來說可以認為是一個BSS的話痴脾,那么這些BSS可以被統(tǒng)一為一個ESS。

在同一個ESS中的不同BSS之間切換的過程稱為漫游梳星。一般而言赞赖,一個ESS中的BSS都會使用相同的SSID和安全機制以提供接近于無縫漫游的可能滚朵。兩個BSS之間通常有15%左右的重疊范圍來保證漫游時信號不會長時間丟失,并且設置在不同頻段來防止相互干擾前域。

ESS

6辕近、MAC

MAC地址采用十六進制數(shù)表示,共六個字節(jié)(48位)匿垄。(XX:XX:XX:XX:XX:XX )其中移宅,前三個字節(jié)是由IEEE的注冊管理機構RA負責給不同廠家分配的代碼(高位24位),也稱為“編制上唯一的標識符”(Organizationally Unique Identifier)年堆,后三個字節(jié)(低位24位)由各廠家自行指派給生產(chǎn)的適配器接口吞杭,稱為擴展標識符(唯一性)。

三变丧、歷程

當產(chǎn)品部提出wifi考勤打卡需求時芽狗,普遍認為一個路由器有一個mac地址,手機連接wifi可以根據(jù)mac地址等信息進行打卡痒蓬。當我們用多個手機連接公司名稱為A(SSID)的wifi時童擎,發(fā)現(xiàn)手機上展示的mac地址并不是一致的,這個就尷尬了攻晒,打翻了原有理念顾复。
然后發(fā)現(xiàn)我們公司共有五個無線路由器,wifi名稱都是A鲁捏。哦芯砸,這時候才感覺到原來以前的知識還是靠譜的,可能是多個手機具體連接的路由器不是同一個给梅。

然后把五個路由器wifi熱點名稱改為A假丧、B、C动羽、D包帚、E,多個手機連接A熱點時运吓,發(fā)現(xiàn)手機得到的mac地址是一致的渴邦,到這里可以得出的結論是手機連接同一個wifi熱點得到的mac地址是一致的。但是.....又尷尬了拘哨。

當多款手機連接B熱點時谋梭,發(fā)現(xiàn)又出現(xiàn)了不一致的mac地址,查找原因發(fā)現(xiàn)倦青,原來B無線路由器中可以設置2.4G Hz和5G Hz兩個不同頻段的wifi熱點瓮床。B路由器中默認是開啟2.4G Hz和5G Hz頻段的wifi熱點,并且wifi名稱(SSID)是同一個。經(jīng)過檢查還有個問題是B路由器的出廠mac地址和手機連接得到的mac地址不一致纤垂。

例如上面舉得例子:筆者公司的某款無線路由器B的出廠MAC地址為 XX:XX:XX:XX:XX:F1,當手機連接此wifi查看mac地址時發(fā)現(xiàn)是XX:XX:XX:XX:XX:F2磷账,另一款手機連接時是XX:XX:XX:XX:XX:F3峭沦。由此可得出的結論是,路由器有一個基準(出廠)mac地址逃糟,然后發(fā)射出wifi的mac在基準mac地址上按照一定的算法進行變動吼鱼,具體的變動算法不清楚,有清楚的請告知我绰咽,非常感謝菇肃。

另外還有一個問題是,C路由器設備后面所寫的出廠說明mac地址是XX:XX:XX:XX:XX:56取募,但是通過路由器后臺看到的出廠mac地址是XX:XX:XX:XX:XX:57琐谤,手機連接后得到的mac地址是XX:XX:XX:XX:XX:56。這就尷尬了玩敏,是廠家寫錯了還是根據(jù)特定的算法算的斗忌?

除了根據(jù)wifi設備分析外,我們也對具有wifi考勤打卡功能的軟件進行了分析旺聚。比如現(xiàn)在比較火爆的由阿里團隊研發(fā)的釘釘织阳,以及紛享銷客APP,在Android端砰粹,他們的處理都是獲取周圍wifi信息(并不是當前手機連接的wifi)進行打卡唧躲。在iOS端,他們的處理都是根據(jù)當前手機連接的wifi信息進行打卡碱璃。據(jù)iOS同事說弄痹,iOS獲取周圍wifi信息需要申請此功能,并最低支持版本是iOS 9厘贼。另外據(jù)可靠消息界酒,分享逍客對mac地址的處理也是通過忽略低4位進行匹配。

四嘴秸、結論

經(jīng)過上述分析毁欣,手機獲取的無線路由器MAC地址的低4位是變化的。那我們實現(xiàn)這個需求時岳掐,除了匹配虛擬位置凭疮、手機信息、wifi相關等其他信息外串述,只針對mac地址执解,我們可以忽略mac地址的低4位來做匹配。

上述分析難免有錯誤,如有發(fā)現(xiàn)衰腌,或者wifi考勤有更好的解決方案新蟆,請聯(lián)系我,非常感謝右蕊。

五琼稻、參考資料

http://www.juniper.net/documentation/en_US/junos-space-apps12.3/network-director/topics/concept/wireless-ssid-bssid-essid.html

原創(chuàng)文章,轉(zhuǎn)載請注明出處饶囚。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末帕翻,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子萝风,更是在濱河造成了極大的恐慌嘀掸,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,013評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件规惰,死亡現(xiàn)場離奇詭異睬塌,居然都是意外死亡,警方通過查閱死者的電腦和手機卿拴,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評論 2 382
  • 文/潘曉璐 我一進店門衫仑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人堕花,你說我怎么就攤上這事文狱。” “怎么了缘挽?”我有些...
    開封第一講書人閱讀 152,370評論 0 342
  • 文/不壞的土叔 我叫張陵瞄崇,是天一觀的道長。 經(jīng)常有香客問我壕曼,道長苏研,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,168評論 1 278
  • 正文 為了忘掉前任腮郊,我火速辦了婚禮摹蘑,結果婚禮上,老公的妹妹穿的比我還像新娘轧飞。我一直安慰自己衅鹿,他們只是感情好,可當我...
    茶點故事閱讀 64,153評論 5 371
  • 文/花漫 我一把揭開白布过咬。 她就那樣靜靜地躺著大渤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪掸绞。 梳的紋絲不亂的頭發(fā)上泵三,一...
    開封第一講書人閱讀 48,954評論 1 283
  • 那天,我揣著相機與錄音,去河邊找鬼烫幕。 笑死俺抽,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的较曼。 我是一名探鬼主播凌埂,決...
    沈念sama閱讀 38,271評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼诗芜!你這毒婦竟也來了?” 一聲冷哼從身側響起埃疫,我...
    開封第一講書人閱讀 36,916評論 0 259
  • 序言:老撾萬榮一對情侶失蹤伏恐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后栓霜,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體翠桦,經(jīng)...
    沈念sama閱讀 43,382評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,877評論 2 323
  • 正文 我和宋清朗相戀三年胳蛮,在試婚紗的時候發(fā)現(xiàn)自己被綠了销凑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 37,989評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡仅炊,死狀恐怖斗幼,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情抚垄,我是刑警寧澤蜕窿,帶...
    沈念sama閱讀 33,624評論 4 322
  • 正文 年R本政府宣布,位于F島的核電站呆馁,受9級特大地震影響桐经,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜浙滤,卻給世界環(huán)境...
    茶點故事閱讀 39,209評論 3 307
  • 文/蒙蒙 一阴挣、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧纺腊,春花似錦畔咧、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,199評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至次氨,卻和暖如春蔽介,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,418評論 1 260
  • 我被黑心中介騙來泰國打工虹蓄, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留犀呼,地道東北人。 一個月前我還...
    沈念sama閱讀 45,401評論 2 352
  • 正文 我出身青樓薇组,卻偏偏與公主長得像外臂,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子律胀,可洞房花燭夜當晚...
    茶點故事閱讀 42,700評論 2 345

推薦閱讀更多精彩內(nèi)容

  • Network Layer(!) 網(wǎng)絡層功能 網(wǎng)絡層里最核心的兩個功能是:路由(routing)與轉(zhuǎn)發(fā)(forwa...
    我是小栗子閱讀 4,673評論 1 10
  • 我們可以把因特網(wǎng)看成由許多主干網(wǎng)絡組成宋光,而這些主干網(wǎng)絡由一些國際的、國家的和地區(qū)的ISP來運營炭菌。主干網(wǎng)通過一些連接...
    Zhang21閱讀 3,153評論 0 6
  • layout: "post"title: "路由器配置簡述"date: "2017-05-16 16:10" 本文...
    noparkinghere閱讀 2,959評論 0 10
  • 網(wǎng)絡連接處理 在說WiFi之前罪佳,先來說說網(wǎng)絡連接處理。在Android開發(fā)過程中黑低,對于一個需要連接網(wǎng)絡的Andro...
    Reathin閱讀 39,054評論 19 71
  • 這幾天沒有給W寫信赘艳,雖然白天都在微信來來回回的發(fā)著語音,聽著W的聲音還是感覺到她很喜樂的說著話克握。但是好像彼此都習慣...
    吃不胖先生閱讀 204評論 1 0