Google WiFi 定位的原理



以前我不了解 Google WiFi 定位時,一直對這技術嗤之以鼻,我想說從 IP Address 哪裡能定位到很精準,最多就是從一些公開的 IP to GEO 資料庫可以查詢到這個 IP 是在那個城市,是沒辦法精準定位的。

可是隨著我發現沒有 GPS 衛星定位功能的 iPod Touch 在打開 WiFi 的情況下竟然可以在 Google 地圖上精準到我所在地的附近,這就引起了我很大的好奇心,到底這是怎麼做到的?顯然不可能是靠 IP Address 去查詢啊?

看了一些簡體與繁體的文件,實在是覺得扯太遠扯太多,還是沒看到精髓處,所以直接從英文去查吧!果然查到了不少資料,也就瞭解 Google WiFi 定位的原理了。在這之前先把幾個名詞給解釋一下。

GPS 衛星定位:靠的是環繞在地球四周的數顆衛星發送訊號到地面,交叉連集出所在地的方法。從十幾年前開始出現汽車導航產品,就是使用這種技術。初次定位時常要花上一分鐘以上的時間,這也是目前汽車導航和智慧型手機都有提供的定位方式。當有遮蔽物阻擋來自天空的訊號時就會發生定位的困難。

A-GPS 定位:靠著事先下載星曆資料,能夠加速上述 GPS 定位的初次定位速度。由於一般車用導航機都不具備網路連線能力因此無法事先下載星曆資料,所以也都不具備 A-GPS 定位。

手機基地台定位:靠的是偵測到的手機基地台(Cell Tower),比對資料庫以及信號強度,交叉連集出所在地的方法。也因為要能夠偵測手機基地台,所以一般車用導航機因不具備手機電話能力而無法提供,幾乎可以說手機基地台定位是智慧型手機或者能夠插手機 SIM 卡的平板電腦才可以提供的功能。此法尚須有網路連線做資料庫查詢才能完成定位。


(附近手機基地台真多啊)

WiFi 定位:靠的是偵測附近周圍所有的無線網路基地台 (WiFi Access Point) 的 MAC Address (類似 10-78-D2-93-58-C2 這樣的格式),去比對資料庫中該 MAC Address 的座標,交叉連集出所在地。此法尚須有網路連線做資料庫查詢才能完成定位。

所以問題來了:這份無線網路基地台 MAC Address 對應到經緯度的資料庫,是怎麼建立起來的呢?

基礎建設靠的是 Google 街景車。Google 街景車除了拍下街景以外,另外還做了兩件事情:(訊息來源:Google blog)

  1. 沿路蒐集所有公開的無線網路 MAC Address,與當時的經緯度一併記錄。
  2. 根據拍下的街景來建立建築物 3D 模型資料。


(此效果截至本文刊出時僅能在 Google Android 手機上看到)

但資料庫一定會面臨過期與需要更新的問題,這時候全世界有在使用行動裝置 + Google 定位程式的人,等於是在不知不覺中幫忙做這件事情。更新的方法是當 WiFi 與手機基地台定位或 GPS 定位同時開啟時,手持裝置藉由手機基地台定位或 GPS 定位這兩種方式可以獲得目前的座標,再透過 WiFi 搜尋到附近所有的 MAC Address,背後向 Google 的資料庫做更新。(訊息來源:Google 員工 Christopher 的公開說法)

說穿了技術其實不難,但這麼龐大的資料庫,又能夠不痛不癢的號召每個行動裝置幫忙更新維護這份資料庫,大概也只有 Google 做得來了。

知道了原理之後,衍生出來的就是一些隱私權的問題。

首先就是 Google 蒐集 WiFi 的 MAC Address 資訊合法嗎?德國政府去年對此提出疑慮,而 Google 認為合法,兩造後來怎麼樣了我懶得去追,反正從技術上來看,MAC Address 在網路上要能夠被查詢到,那麼你與對方之間不能有路由器存在,一旦過了路由器那麼原始 MAC Address 就會被替換(詳細的原理這邊就不多說了),所以一般人雖然可以用很多方法去找出對方的 IP Address,但對方的 MAC Address 就沒辦法了,中間經過的路由器太多啦!也就無法利用 MAC Address 去查對方身處何處。除非將木馬植入對方電腦來回報,且對方有在使用無線網路而且他附近的無線網路基地台有被登記到 Google 資料庫中,那才有機會找到對方所在地附近,但這難度又高條件又多,對警察來說還是用 IP Address 行文法院與電信業者來找精確的地址最快。

所以回頭來說隱私權,我個人覺得應該是不會,且 WiFi 的 MAC Address 是屬於公開資訊,並非刻意用什麼非法手段才能取得。一般人就算探測到你的 MAC Address,也不曉得你是誰或什麼人在使用。

再來就是定位錯誤的問題。

搬家後其無線網路基地台也跟著移動,那麼以 WiFi 定位來看自己身在何處,可能會呈現仍然在上一個住所的問題。針對這種因為資料庫尚未被更新而產生的定位錯誤問題,Google 提供了一個無線網路定位錯誤的表格來申請回報,但一如一般 Google 的服務一樣,這表格並不能保證立即得到回應。想要加速更新資料庫,除了填寫這份表格以外,另外就是自己時常拿行動裝置開著 WiFi + GPS 定位吧,這是剛才提過的資料庫更新法,總有一天 Google 會因為你與行動裝置的努力而修正過來的。 😛

回頭看我一開始以為 Google WiFi 定位是靠著 IP Address 來定位,真是大錯特錯了啊!Google 要的只是偵測到 WiFi 基地台的 MAC Address 就可以,也沒有強調一定要與無線基地台連線,只要打開行動裝置的 WiFi 功能,讓 Google 定位可以藉由 WiFi 去蒐集附近可偵測的 MAC Address,接著透過 3G 行動上網或此時你真的有 WiFi 連線,就可以去向 Google 資料庫查詢這些 MAC Address 連集起來的可能位置,就這樣完成定位了。

Facebook留言

個留言

您可能也會喜歡…

12 個回應

  1. 泡麵 說:

    Android Browser Android Browser Android Android 2.2.1

    徐若萱姊姊的歌抱歉 😳

  2. 安捷洛 說:

    Netscape Navigator Netscape Navigator 5.0 iOS iOS 4.3.3

    我人在室內(靠窗戶邊)
    剛剛試了一下把手機gps打開
    手機定位後觀察ipad的地圖位置都沒有變化
    可能原先定位就很準的闗係吧
    (gps五顆衛星,定位在我對面的空地上)

  3. shime 說:

    Google Chrome Google Chrome 12.0.742.112 Windows Windows 7 / Server 2008 R2

    那如果android手機同時開啟GPS定位,這樣ipad的定位會更精準嗎?

  4. 安捷洛 說:

    Netscape Navigator Netscape Navigator 5.0 iOS iOS 4.3.3

    我做了ㄧ個實驗,把手機的3G開分享給ipad
    邊開車觀察ipad裡google地圖的現在位置
    結果竟然會跟著我車子的所在地而變動
    (手機有關閉GPS)
    而且位置還比android手機裡的google地圖顯示的位置還準
    這是代表google也有利用基地台定位嗎?
    還是有什麼其他的原理呢

  5. DearHoney 說:

    Google Chrome Google Chrome 10.0.648.205 Windows Windows 7 / Server 2008 R2

    deex,那你看了我這篇文章應該知道是怎麼一回事了啊。Google 街景沒到你們那邊,但仍然有許許多多經過你家附近且有 Google 定位程式的人可能幫了你的忙呀! 🙂

  6. deex 說:

    Google Chrome Google Chrome 10.0.648.205 Windows Windows XP

    目前我在台南某公寓. 目前所知google map並沒有包含這邊的服務。
    可是她們卻可以抓到我的資料,不知道是怎麼做到的。

    我在某個巷子的六樓, 網路是cable modem加無線分享器。 用iPAD可以被定位。 超神奇的。


  7. Google Chrome Google Chrome 10.0.648.204 Windows Windows 7 / Server 2008 R2

    “we collect 3D geometry data with low power lasers (similar to those used in retail scanners) which help us improve our maps.”

    用掃瞄器就可以建3D模型XD

  8. Lanma Chiu 說:

    Google Chrome Google Chrome 10.0.648.204 Windows Windows 7 / Server 2008 R2

    Android手機不開Wifi,但啟用Wifi定位,感覺頗為省電,在台北市內都還算堪用。另外,前陣子發現用Wifi定位時,只要到捷運中山站附近(尤其進入地下街後),常被認為在民權西路站附近..

  9. shime 說:

    Google Chrome Google Chrome 10.0.648.205 Windows Windows 7 / Server 2008 R2

    我也很好奇那軟體是什麼
    這邊講得很清楚呢!!

  10. DearHoney 說:

    Google Chrome Google Chrome 10.0.648.205 Windows Windows 7 / Server 2008 R2

    是這一套 Open Signal

  11. Lordcolus 說:

    Android Browser Android Browser Android Android 2.3.3

    想請教ㄧ下那套檢視附近基地台的軟體是什麼?

  1. 2015年05月20日

    WordPress WordPress 4.1.5

    […] 原文标题及链接:Google WiFi 定位的原理 […]