人气组合ZARD的主唱坂井泉水(さかい・いずみ、原名蒲池幸子=かまち・さちこ),于5月27日下午3时10分,在东京新宿区内的医院去世,年仅40岁,神奈川县出身。28日,她所在的事务所正式发表了这一消息。葬礼将在亲朋好友间进行,择日举行告别仪式。
坂井泉水由于患有子宫颈癌,去年6月进行了手术。之后,由于癌细胞转移至肺部,于今年4月再次入院治疗。5月26日早晨,坂井泉水在散步时,从医院的台阶跌落,后脑受到强烈撞击后,脑挫伤而死。根据警视厅四谷署的现场勘查,台阶的扶手上有跳下的痕迹,目前正在进行进一步调查,以确定是自杀还是事故。
ZARD 1991年出道。93年发表的单曲「负けないで」「揺れる想い」取得了巨大的成功。那之后,又接连发表了很多热门单曲,是90年代的代表艺人。ZARD的坂井泉水,除了为ZARD组合的歌曲作词以外,还经常为DEEN等组合的歌曲作词。原本,今年秋天,ZARD将发售新专辑,并举行巡回演唱会,距离上次巡回演唱会已有3年之久。
ZARD演唱的“柯南”歌曲
名侦探柯南OP 04(旋转命运之轮)
名侦探柯南OP 15(星星的光芒)
名侦探柯南ED 17(梦想明天)
名侦探柯南ED 24(即使悲伤 我依然喜欢你)
名侦探柯南剧场版2 第十四个目标(仿佛回到少女时代)
名侦探柯南剧场版9 水平线上的阴谋(等待夏日的航帆)
名侦探柯南ED 24(即使悲伤 我依然喜欢你)成为 zard主唱坂井泉水 演唱的“柯南”最后一首歌曲!!!
zard 主唱坂井泉水 一路走好 !!!
Tuesday, May 29, 2007
Sunday, May 06, 2007
FON: Extend Your Internet Connection - Introduction
當初許多人購買FON時,家裡原先就有一台無線AP,所以最關心的話題,自然是FON是否支援Wireless Distribution System(WDS)這項功能。而FON本身為分享網路頻寬的計畫,能否藉由這樣的功能,結合數台FON來擴展Internet連線的範圍,也是大家關心的問題。
在這裡我們先假設有兩台AP,稱為AP1和AP2,而AP1本身與Internet連接,AP2則無。WDS的迷人之處,在於AP1和AP2進行相關設定後,AP2不需要連接網路線,也能透過AP1提供Internet連線服務,而用戶端只需要連上其中一台AP,就能立即上網。AP2除了需先設定外,剩下的只需要插上插頭,待網路連線建立完成,就能立即提供服務。而就FON本身為分享網路頻寬的計畫而言,這樣的功能是必要的,只要能擴展無線網路的範圍越大,計畫就會越成功。
在正式介紹本系列文章的方法之前,先來看看使用WDS可能會碰到的問題:
實際上在二月時,曾經嘗試使用FON內部的WDS相關設定之功能,有興趣的可以看此篇Blog,裡面有少量的相關資料。由於FON使用的是Atheros AR531X晶片,並使用MadWiFi,所以參考的文章皆與MadWiFi相關。當時參考了MadWiFi裡的WDS Bridging,但馬上發現第一個問題,就是無線網路加密的問題,在內文中並未提到如何同時使用WDS功能和WPA2或WEP加密,即使WEP加密的設定較為容易。
無線網路的加密相當的重要,只靠Hide SSID和MAC Filter當成主要防線並不足夠,因為資料在傳輸的過程並未加密,只要使用相關工具即可得知原始資料的內容,這兩個功能僅能讓AP不易被普通人使用而已。要對付Hide SSID,只需要使用相關工具,假冒成用戶端網卡的MAC位址,對AP送出Deauthentication封包,這樣AP會以為這是用戶端送出的封包。AP收到後會切斷用戶端的無線網路連結,但隨後用戶端的無線網卡會很「聰明」的自動送出具有SSID的封包,要求與AP建立連線,而這樣的封包也同時會被有意入侵的人接收到,進而可以使用你的AP。MAC Filter也一樣容易對付,只要使用工具,偽裝成你網卡的MAC號碼,就能假裝是你的網卡送出來的封包,進而使用你的AP。從以上的說明,應該能瞭解Hide SSID和MAC Filter對網路安全的幫助並不大,最徹底的還是要靠WPA或WPA2,把資料完整的加密。為什麼沒有提到WEP這個最常見於AP的加密功能呢?實際上,WEP有已知的漏洞,只要能累積足夠數量的封包,就能從這些封包解出原來WEP使用的Key,一旦Key遭破解,WEP加密將形同虛設。
為了使用WPA和WPA2加密,必須要有wpa_supplicant的幫忙才能建立連線,所以第一件事就是找它的設定檔。而可做為WPA2的設定檔,相當的不好找,大部分皆為WPA的設定檔,最後是參考How to install wpa supplicant才設定成功。近期在整理文章時,卻發現WPA Supplicant的設定檔內就有完整的選項說明,不過有實際可以運作的範例設定檔,還是有相當的幫助,畢竟只參照設定檔的內容,容易遺失某些必要的設定,或多加上不必要的設定。設定檔都就位後,才發現wpa_supplicant若要能在FON上運作,需要先從source code cross-compiling才行,因為FON的處理器為MIPS,並非使用x86指令集,而先前較少接觸這個領域,所以這部分花了最多的時間,而且一定要先解決這個問題,才能繼續後續的測試,使得原先計畫二月初完成的文章,直至最近才整理完成。
拜FON使用的晶片所賜,能同時送出兩個SSID,也就是我們看到的FON_AP和MyPlace,看起來就像是有兩台實體的AP一樣。實際上,它也能當成一般的無線網卡(Station)來運作,這樣就變成外觀是AP,但骨子裡卻是當無線網卡的設備,應該是許多人無法想像的事情,先前遇到這樣的情形也覺得蠻神奇的。實際運作時,FON可同時當成AP和Station,分別為FON_AP和MyPlace,再加上一個Station,也就是三個VAP。只要把這個Station與AP1連線,並且在AP2做適當的設定,就能在不變更AP1的情形下,達到延伸Internet連線的功能!也就是說,AP1本身是否支援WDS已無任何關係,只要AP1本身功能正常,能接受無線網卡的連線,且未超過有效距離,理論上就能成功連線,而本系列文章即是使用這樣的概念。
然而有幾項是WDS可以做到而本系列文章無法達成的,例如使用同一個SSID在不同的AP漫遊。這樣的概念就像手機基地台一樣,同一隻手機可以在同業者的不同基地台漫遊,而無需自行做額外的設定。但在FON分享頻寬的前提下,對於使用者而言,缺少這樣的功能似乎不會有太大的影響,頂多要重新登入而已,而且多數無線網路使用者為定點使用,很少會有這樣的需求,即使信號不足,也只需手動連至另一基地台就解決了。設定的部分也與WDS不同,本系列文章會要求AP2需設成與AP1網路不同的Subnet,以避免route會出問題,而在WDS的環境中,是可以設在同一個Subnet下的。SSID需設成不同,同樣也是避免AP2連線至AP1時發生混淆。這些設定的詳細內容,會在接下來的文章中交待。
四月初再度尋找相關資料時,找到了ponte這個解決方案。它與本文使用相似的概念,並且加上了網頁管理介面,使得設定相當簡單,只需要填入相關資訊即可。但最大的問題,就是拿掉了FON_AP的功能,這樣就只有一般AP的功能,並且移除許多與FON_AP相關的防火牆設定,相當的可惜。本系列文章參考ponte的概念,把設定檔模組化,並把原先系統檔先備份再建立新檔案的link,最後完成自動安裝的script,使得安裝過程較為容易。
感謝您耐心看完本文的介紹,接下來將開始我們的旅程。
在這裡我們先假設有兩台AP,稱為AP1和AP2,而AP1本身與Internet連接,AP2則無。WDS的迷人之處,在於AP1和AP2進行相關設定後,AP2不需要連接網路線,也能透過AP1提供Internet連線服務,而用戶端只需要連上其中一台AP,就能立即上網。AP2除了需先設定外,剩下的只需要插上插頭,待網路連線建立完成,就能立即提供服務。而就FON本身為分享網路頻寬的計畫而言,這樣的功能是必要的,只要能擴展無線網路的範圍越大,計畫就會越成功。
在正式介紹本系列文章的方法之前,先來看看使用WDS可能會碰到的問題:
- 加密系統的支援:使用WDS功能,視AP對於加密功能支援度不同,相容性會有所差異。許多AP雖然支援WPA或WPA2,但啟用WDS後僅能使用WEP,WPA和WPA2則不支援。關於WEP的部分,會在後文說明。
- 相容性:WDS並非一標準的規範,每家都可能有自行定義的部分,變成各廠牌間有相容性的問題。
- 需要兩邊AP的支援:兩台AP若想使用WDS接起來,一定要兩邊都支援WDS才行,且需在兩邊互相設定MAC位址。若其中一台不支援WDS,則必須使用其它方法,然而較早期的AP並未具有此功能。
- 支援ChilliSpot:雖然FON之間能用WDS連結起來,但對於提供FON_AP服務的ChilliSpot,若未經適當的調整,可能會造成連線上的障礙,並不是光靠WDS接起來之後,就會自動解決的問題。少了FON_AP的功能,也失去了分享頻寬的美意。
- 設定的難易度:由於目前FON的網頁管理介面並未實作WDS的相關介面,使得自行修改相關設定的難度相當高,能否穩定運作也是另一個大問題。若想要有較完整的WDS控制介面,需要將您的FON的韌體刷成DD-WRT系列,而刷的步驟需注意許多細節,操作不正確易導致FON故障。
實際上在二月時,曾經嘗試使用FON內部的WDS相關設定之功能,有興趣的可以看此篇Blog,裡面有少量的相關資料。由於FON使用的是Atheros AR531X晶片,並使用MadWiFi,所以參考的文章皆與MadWiFi相關。當時參考了MadWiFi裡的WDS Bridging,但馬上發現第一個問題,就是無線網路加密的問題,在內文中並未提到如何同時使用WDS功能和WPA2或WEP加密,即使WEP加密的設定較為容易。
無線網路的加密相當的重要,只靠Hide SSID和MAC Filter當成主要防線並不足夠,因為資料在傳輸的過程並未加密,只要使用相關工具即可得知原始資料的內容,這兩個功能僅能讓AP不易被普通人使用而已。要對付Hide SSID,只需要使用相關工具,假冒成用戶端網卡的MAC位址,對AP送出Deauthentication封包,這樣AP會以為這是用戶端送出的封包。AP收到後會切斷用戶端的無線網路連結,但隨後用戶端的無線網卡會很「聰明」的自動送出具有SSID的封包,要求與AP建立連線,而這樣的封包也同時會被有意入侵的人接收到,進而可以使用你的AP。MAC Filter也一樣容易對付,只要使用工具,偽裝成你網卡的MAC號碼,就能假裝是你的網卡送出來的封包,進而使用你的AP。從以上的說明,應該能瞭解Hide SSID和MAC Filter對網路安全的幫助並不大,最徹底的還是要靠WPA或WPA2,把資料完整的加密。為什麼沒有提到WEP這個最常見於AP的加密功能呢?實際上,WEP有已知的漏洞,只要能累積足夠數量的封包,就能從這些封包解出原來WEP使用的Key,一旦Key遭破解,WEP加密將形同虛設。
為了使用WPA和WPA2加密,必須要有wpa_supplicant的幫忙才能建立連線,所以第一件事就是找它的設定檔。而可做為WPA2的設定檔,相當的不好找,大部分皆為WPA的設定檔,最後是參考How to install wpa supplicant才設定成功。近期在整理文章時,卻發現WPA Supplicant的設定檔內就有完整的選項說明,不過有實際可以運作的範例設定檔,還是有相當的幫助,畢竟只參照設定檔的內容,容易遺失某些必要的設定,或多加上不必要的設定。設定檔都就位後,才發現wpa_supplicant若要能在FON上運作,需要先從source code cross-compiling才行,因為FON的處理器為MIPS,並非使用x86指令集,而先前較少接觸這個領域,所以這部分花了最多的時間,而且一定要先解決這個問題,才能繼續後續的測試,使得原先計畫二月初完成的文章,直至最近才整理完成。
拜FON使用的晶片所賜,能同時送出兩個SSID,也就是我們看到的FON_AP和MyPlace,看起來就像是有兩台實體的AP一樣。實際上,它也能當成一般的無線網卡(Station)來運作,這樣就變成外觀是AP,但骨子裡卻是當無線網卡的設備,應該是許多人無法想像的事情,先前遇到這樣的情形也覺得蠻神奇的。實際運作時,FON可同時當成AP和Station,分別為FON_AP和MyPlace,再加上一個Station,也就是三個VAP。只要把這個Station與AP1連線,並且在AP2做適當的設定,就能在不變更AP1的情形下,達到延伸Internet連線的功能!也就是說,AP1本身是否支援WDS已無任何關係,只要AP1本身功能正常,能接受無線網卡的連線,且未超過有效距離,理論上就能成功連線,而本系列文章即是使用這樣的概念。
然而有幾項是WDS可以做到而本系列文章無法達成的,例如使用同一個SSID在不同的AP漫遊。這樣的概念就像手機基地台一樣,同一隻手機可以在同業者的不同基地台漫遊,而無需自行做額外的設定。但在FON分享頻寬的前提下,對於使用者而言,缺少這樣的功能似乎不會有太大的影響,頂多要重新登入而已,而且多數無線網路使用者為定點使用,很少會有這樣的需求,即使信號不足,也只需手動連至另一基地台就解決了。設定的部分也與WDS不同,本系列文章會要求AP2需設成與AP1網路不同的Subnet,以避免route會出問題,而在WDS的環境中,是可以設在同一個Subnet下的。SSID需設成不同,同樣也是避免AP2連線至AP1時發生混淆。這些設定的詳細內容,會在接下來的文章中交待。
四月初再度尋找相關資料時,找到了ponte這個解決方案。它與本文使用相似的概念,並且加上了網頁管理介面,使得設定相當簡單,只需要填入相關資訊即可。但最大的問題,就是拿掉了FON_AP的功能,這樣就只有一般AP的功能,並且移除許多與FON_AP相關的防火牆設定,相當的可惜。本系列文章參考ponte的概念,把設定檔模組化,並把原先系統檔先備份再建立新檔案的link,最後完成自動安裝的script,使得安裝過程較為容易。
感謝您耐心看完本文的介紹,接下來將開始我們的旅程。
FON: Extend Your Internet Connection - Preliminary
Back
在修改之前,要先介紹的是本文實作時的網路架構。AP2在未使用本文的方法前,網路架構是像下圖這樣。

Fig 1: Network Infrastructure before modifying AP2 (Click to enlarge)
而當您完成本文的步驟後,會變成像下圖這樣子。

Fig 2: Network Infrastructure after modifying AP2 (Click to enlarge)
在上兩張示意圖中,物件之間用實線連接的部分,即表示是透過實體線路連接,而虛線則是透過無線網路連接。從第二張圖可以發現經過改裝後的AP2,是透過無線網路信號與AP1的MyPlace連接,而且兩台FON的MyPlace和FON_AP的SSID和網段都刻意設為不同的值,以避免與另一網路衝突。在AP2的Ethernet Port上,可以再連接其它電腦或Switch,連接完成後使用DHCP取得相關設定值,並透過AP2上網,這部分功能與IP分享器相同。
為了簡化安裝過程,目前製作了自動安裝指令檔,您只需要下載一壓縮檔,並依指示操作,即能得到與本文相同的結果。想要直接使用此方法,請直接跳至Act III。若您喜歡逐步修改您的FON,使它具有延伸Internet連線的能力,並讓Ethernet Port的用戶,把FON當成IP分享器使用,或您想瞭解更多修改這些設定檔,或是做某些步驟的原因,請繼續閱讀以下的文章。
在手動修改您的FON之前,您需要擁有、熟悉以下軟體或系統的操作:
預先準備的動作完成後,請繼續閱讀接下來的文章。
在修改之前,要先介紹的是本文實作時的網路架構。AP2在未使用本文的方法前,網路架構是像下圖這樣。
Fig 1: Network Infrastructure before modifying AP2 (Click to enlarge)
而當您完成本文的步驟後,會變成像下圖這樣子。
Fig 2: Network Infrastructure after modifying AP2 (Click to enlarge)
在上兩張示意圖中,物件之間用實線連接的部分,即表示是透過實體線路連接,而虛線則是透過無線網路連接。從第二張圖可以發現經過改裝後的AP2,是透過無線網路信號與AP1的MyPlace連接,而且兩台FON的MyPlace和FON_AP的SSID和網段都刻意設為不同的值,以避免與另一網路衝突。在AP2的Ethernet Port上,可以再連接其它電腦或Switch,連接完成後使用DHCP取得相關設定值,並透過AP2上網,這部分功能與IP分享器相同。
為了簡化安裝過程,目前製作了自動安裝指令檔,您只需要下載一壓縮檔,並依指示操作,即能得到與本文相同的結果。想要直接使用此方法,請直接跳至Act III。若您喜歡逐步修改您的FON,使它具有延伸Internet連線的能力,並讓Ethernet Port的用戶,把FON當成IP分享器使用,或您想瞭解更多修改這些設定檔,或是做某些步驟的原因,請繼續閱讀以下的文章。
在手動修改您的FON之前,您需要擁有、熟悉以下軟體或系統的操作:
- 一個現成的Linux Box:由於wpa_supplicant要能在FON上運作,您必須先由原始碼來cross-compile成FON能使用的binary,所以需要一個能正常運作的Linux Box。若手邊無閒置或現成的設備,可以使用VMWare等軟體,在您目前使用的電腦上安裝Linux,即可在不變更現有作業系統的情形下,同時運行Windows與Linux。
- Linux系統的操作:FON使用Linux系統,若您不熟悉Linux系統的基本操作,或許會在某些操作上遇到問題。
- vi的操作:vi是個相當重要且好用的文件編輯器。在FON上面,幾乎都是使用vi來修改文件,基本的操作務必熟練!
- PieTTY or PuTTY:要透過SSH使用FON的Terminal,一般在Windows上是使用此兩工具。若您有其它順手的工具也可以使用。
- Reset FON:當您修改FON出了意外狀況時,您必須Reset您的FON,使FON的內部恢復至韌體預設值。也就是在還沒修改前,您必須先瞭解需如何操作,可使FON回復韌體的預設值。
- PSCP:使用PSCP軟體,可以方便的直接透過SSH傳送檔案至您的FON。
- FON的SSH存取:若您的FON尚未能經由SSH使用FON的Terminal,請參閱FON: Unbrick your La FONera!
- OpenWRT Source Code:這是從FON官方網站取得的OpenWRT原始碼,FON內部的韌體應該是由此原始碼調整過後編譯而來的。雖然似乎裡面的檔案與現有FON韌體內部,看起來有些許不同,不過不會影響本系列文章的操作。由於此壓縮檔已具有toolchain,只需經過簡單設定後,即能方便的取得cross-compile需要的compiler,也同時擁有WPA Supplicant需要的MadWiFi Driver, libopenssl, libcrypto等library和原始碼,節省額外找尋其它檔案的時間。
- WPA Supplicant Source Code:負責建立AP2與AP1的連線,且是加密系統的必要工具。本文使用的版本是0.5.7。
預先準備的動作完成後,請繼續閱讀接下來的文章。
FON: Extend Your Internet Connection - Act I
Back
免責聲明:若您依照本文章內容修改您的FON,更改後出現任何問題,最後導致FON無法正常運作,您需自行負責,本人並未保證此修改方式適用於各種特殊情形!若您繼續閱讀本文章,則表示您同意此聲明。
在先前的Introduction提到了加密系統的部分,需藉由wpa_supplicant來完成連線的動作,也就是在所有的步驟之前,第一件事就是要先compile出能在FON使用的版本。而在OpenWRT的原始碼中,已經準備了我們需要的檔案,只需簡單的操作,即能得到我們想要的結果,不需要再大費周章的找齊各種需要的原始碼,由此可以節省大量的時間。接下來,將要介紹如何利用OpenWRT的toolchain,compile出適合FON使用的cross-compiler,並用它來compile wpa_supplicant。
註:以下提及的參數皆以實驗環境為例,您可能需要依您的環境進行適當的調整。
請先準備好Preliminary提到的OpenWRT和wpa_supplicant,並分別解壓縮在這兩個資料夾。

Fig 1: Screen size limitation of Menuconfig
若順利的話,應該會看到下圖的畫面。

Fig 2: The menu of OpenWRT (Click to enlarge)
根據先前實驗得到的結果,您只需變更Libraries->libopenssl和Drivers->kmod-madwifi為built-in或package,其它部分保持預設值即可,而設成built-in或package,在這裡並不影響最後得到的結果。修改完成後,請按ESC離開,並在出現的選單選擇儲存設定檔。
接下來,請執行以下指令,開始自動compile新的cross-compiler。此過程可能需要1小時或更多時間,視電腦處理速度而定。

Fig 3: Job Finished! (Click to enlarge)
接下來要使用前面的cross-compiler來compile wpa_supplicant。先進入wpa_supplicant資料夾,並執行以下指令,把範例設定檔複製成主要設定檔。
若過程中無任何錯誤訊息,表示compile已經成功。您可以在資料夾中找到以下三個檔案,這些檔案將會在FON上面運作。

Fig 4: wpa_supplicant (Click to enlarge)
以上程序完成後,您可以先把下列檔案上傳至FON,我們將會在稍後的操作中使用這些檔案。
以上步驟皆完成後,您可以繼續閱讀下一篇文章。
免責聲明:若您依照本文章內容修改您的FON,更改後出現任何問題,最後導致FON無法正常運作,您需自行負責,本人並未保證此修改方式適用於各種特殊情形!若您繼續閱讀本文章,則表示您同意此聲明。
在先前的Introduction提到了加密系統的部分,需藉由wpa_supplicant來完成連線的動作,也就是在所有的步驟之前,第一件事就是要先compile出能在FON使用的版本。而在OpenWRT的原始碼中,已經準備了我們需要的檔案,只需簡單的操作,即能得到我們想要的結果,不需要再大費周章的找齊各種需要的原始碼,由此可以節省大量的時間。接下來,將要介紹如何利用OpenWRT的toolchain,compile出適合FON使用的cross-compiler,並用它來compile wpa_supplicant。
註:以下提及的參數皆以實驗環境為例,您可能需要依您的環境進行適當的調整。
請先準備好Preliminary提到的OpenWRT和wpa_supplicant,並分別解壓縮在這兩個資料夾。
~/fon/fonera首先,我們先來製作cross-compiler。先切換至~/fon/fonera,並執行以下命令。
~/fon/wpa_supplicant-0.5.7
make menuconfig若您出現以下訊息,則表示您需調整您的Console大小至80*19以上,否則無法顯示選單。
Fig 1: Screen size limitation of Menuconfig
若順利的話,應該會看到下圖的畫面。
Fig 2: The menu of OpenWRT (Click to enlarge)
根據先前實驗得到的結果,您只需變更Libraries->libopenssl和Drivers->kmod-madwifi為built-in或package,其它部分保持預設值即可,而設成built-in或package,在這裡並不影響最後得到的結果。修改完成後,請按ESC離開,並在出現的選單選擇儲存設定檔。
接下來,請執行以下指令,開始自動compile新的cross-compiler。此過程可能需要1小時或更多時間,視電腦處理速度而定。
make當您看到以下的畫面,且無出現任何錯誤訊息,即表示您的cross-compiler已經就位,再來就可以compile能在FON使用的wpa_supplicant。
Fig 3: Job Finished! (Click to enlarge)
接下來要使用前面的cross-compiler來compile wpa_supplicant。先進入wpa_supplicant資料夾,並執行以下指令,把範例設定檔複製成主要設定檔。
cp defconfig .config完成後,修改.config設定檔,並貼上以下的內容,貼在檔案中任意位置都可以。此部分是用來覆寫預設的MadWiFi和OpenSSL include和link的路徑,並修正make時link失敗的問題。
CC=../fonera/staging_dir_mips/bin/mips-linux-uclibc-gcc完成後,執行以下指令來compile wpa_supplicant。
CFLAGS = -I../fonera/build_mips/openssl-0.9.8b/include -Os -MMD -Wall
LIBS += -L../fonera/build_mips/openssl-0.9.8b -lssl
LIBS_p = -L../fonera/build_mips/openssl-0.9.8b -lcrypto
CONFIG_DRIVER_MADWIFI=y
CFLAGS += -I../fonera/build_mips/linux-2.4-ar531x/madwifi-0.9.0
CONFIG_NO_STDOUT_DEBUG=y
make註:經由本設定檔compile的wpa_supplicant,可使用None, WPA, WPA2的認證和WEP40, WEP104, TKIP, CCMP(AES)加密的組合,若您的網路環境需要使用EAP或其它加密系統,請自行修改.config設定檔。
若過程中無任何錯誤訊息,表示compile已經成功。您可以在資料夾中找到以下三個檔案,這些檔案將會在FON上面運作。
Fig 4: wpa_supplicant (Click to enlarge)
以上程序完成後,您可以先把下列檔案上傳至FON,我們將會在稍後的操作中使用這些檔案。
Source of Linux Box:
~/fon/wpa_supplicant-0.5.7/wpa_supplicant.conf
~/fon/wpa_supplicant-0.5.7/wpa_cli
~/fon/wpa_supplicant-0.5.7/wpa_passphrase
~/fon/wpa_supplicant-0.5.7/wpa_supplicant
~/fon/fonera/build_mips/openssl-0.9.8b/libcrypto.so.0.9.8
~/fon/fonera/build_mips/openssl-0.9.8b/libssl.so.0.9.8
Destination of FON:
/etc/wpa_supplicant.conf
/usr/sbin/wpa_cli
/usr/sbin/wpa_passphrase
/usr/sbin/wpa_supplicant
/lib/libcrypto.so.0.9.8
/lib/libssl.so.0.9.8
以上步驟皆完成後,您可以繼續閱讀下一篇文章。
FON: Extend Your Internet Connection - Act II
Back
免責聲明:若您依照本文章內容修改您的FON,更改後出現任何問題,最後導致FON無法正常運作,您需自行負責,本人並未保證此修改方式適用於各種特殊情形!若您繼續閱讀本文章,則表示您同意此聲明。
在前一篇文章,我們已經準備好了wpa_supplicant,現在需要修改FON的設定值,並加上自動指令檔,使FON能自動啟動與設定相關選項。在這裡也會修改額外的設定檔,來解決先前發現的一些小問題。
在這之前,請先把您的FON恢復至出廠預設值,並且讓FON接受SSH連線,再重新設定相關設定值,避免您先前安裝其它套件會與接下來的設定衝突,最後記得需自動更新成0.7.1 r3。完成後,請先切斷AP2的Ethernet並重新啟動,避免特殊狀況的發生。
您需先在AP2的網頁管理介面,分別設定以下功能。
設定兩個SSID,分別為MyPlace 2, FON_AP 2,只要不與AP1相同即可。為了避免AP2與AP1連線時,同樣的SSID會發生混淆,即使連線設定檔能指定連線AP的BSSID(MAC位址),這仍然是比較保險的做法。加密的部分則不會互相影響,也就是AP1與AP2的MyPlace可以設定不同的加密Key和加密模式。設定完成別忘了要Submit。
在Advanced->Internet Connection Settings裡面,需設定Mode為DHCP,這樣搭配下文修改過的/sbin/ifup是剛好的,設定完成別忘了要Submit。
在Advanced->Network Settings裡面,需設定與AP1的MyPlace不同的網段。您可以參考Preliminary中網路架構圖的192.168.11.1,或自行設定一個不與現有重疊的網段。若您設定為一運作中的網段,當AP2的用戶端連線至這些重疊的網段,將會無法route至目的地。
在Advanced->Wireless Settings裡面,請設定與AP1的MyPlace相同的頻道,這樣AP2才能與AP1連線。
第一個要新增的設定檔,功能是自動建立FON的Station,讓FON能像一般網卡一樣,並且連線至預先設定好的AP。待FON成功連線至FON總部,系統本身的機制就會啟動MyPlace 2和FON_AP 2。這個檔案命名為/etc/init.d/S99wds。
Create new ap and sta的部分,是要重新建立剛才關閉的ath1,和準備要做為Station的ath2。
Start sta device和get IP Addr的部分,是先使用wpa_supplicant建立與AP1的連線,完成後再使用udhcpc從AP1取得IP位址。若您需要自行設定IP位址,請自行取代此行設定。
當AP2成功連線至AP1,表示AP2已有連線至Internet的能力,再來會像連接網路線上網一樣,與FON總部連線。連線完成後,會自動使用指令檔來啟動MyPlace 2和FON_AP 2兩個介面,並且開始接受用戶端的連線。若您已在FON總部要求啟動MyPlace 2前,就先連線至MyPlace 2,您可能會遇到極短時間的斷線,但隨即馬上恢復,這是正常的現象。
再來是自動ping預設router的動作,主要是避免無線網路長時間閒置,導致無線網路自動斷線。使用此方法可維持AP1與AP2的連線。
最後一行是設定Ethernet Port的IP位址,相當於分享器的IP位址。
這裡要修改的是/sbin/ifup這個檔案,需修改以下部分:
這裡要修改的是/etc/hotplug.d/iface/20-firewall,需修改以下部分:
關於這裡修改的部分,請參考FON: Prevent Clients to Access Unauthorized Zone,在這裡有詳細的說明。就本例而言,FON_AP 2的使用者在預設的設定之下,並無法連線至192.168.10.0/24,但並無法防止使用者連線至上層的192.168.1.0/28。加上這樣的規則,即可保護192.168.1.0/28不被FON_AP 2的使用者存取。設定完成後,每次FON啟動就會自動將此規則加入iptables。
再來是/etc/wpa_supplicant.conf。這裡分別貼上WPA, WPA2, WEP, None四種加密方式可使用的設定檔。
WPA, WPA2:
WPA, WPA2的Key也可以直接放入未編碼過的Key,並使用雙引號(")把Key包含起來,但這樣每次系統啟動時,都需花費系統資源來把未編碼過的Key,轉換成編碼過的Hex Code,相當花費時間,因此建議您可以事先使用wpa_passphrase把您的Key轉換好,再把它直接放入wpa_supplicant.conf,可以節省開機需要的時間。
若您的SSID或Key使用的是特殊字元,您可以直接輸入Hex Code,並且不要在旁邊加上雙引號,wpa_supplicant也能接受此格式。
若您使用WEP加密,您需知道原先Key的Index,並修改成設定檔相對應的選項。在設定檔中的Index範圍是0~3,若您原先的格式是1~4,則您的Index值需自行減1,然後再修改成wep_key#="abcde"和wep_tx_keyidx=#,#字號請替代為您的Index。
在這裡要修改的有兩個檔案。
/etc/dnsmasq.conf @ last line:
再來的dhcp-range設定的是會分配給MyPlace 2和Ethernet Port用戶端的IP位址範圍。這裡也要求dnsmasq需listen eth0和ath1介面。
同樣為了不使用dnsmasq,FON_AP 2也需要做一些調整。FON_AP 2的使用者是由chillispot提供服務,在FON預設值中,會使用自身的dnsmasq,也就是會遇到相同的問題。刪除指定的那兩行,是要讓chillispot使用系統從上層網路取得的DNS Server,而不是使用dnsmasq,這樣就能解決問題。
這裡修改的是/sbin/ifup。
這裡修改的是/etc/firewall.user:
以上內容都修改完成後,重新啟動後,您的FON應該可以成功與AP1連線。請繼續閱讀接下來的文章。
免責聲明:若您依照本文章內容修改您的FON,更改後出現任何問題,最後導致FON無法正常運作,您需自行負責,本人並未保證此修改方式適用於各種特殊情形!若您繼續閱讀本文章,則表示您同意此聲明。
在前一篇文章,我們已經準備好了wpa_supplicant,現在需要修改FON的設定值,並加上自動指令檔,使FON能自動啟動與設定相關選項。在這裡也會修改額外的設定檔,來解決先前發現的一些小問題。
在這之前,請先把您的FON恢復至出廠預設值,並且讓FON接受SSH連線,再重新設定相關設定值,避免您先前安裝其它套件會與接下來的設定衝突,最後記得需自動更新成0.7.1 r3。完成後,請先切斷AP2的Ethernet並重新啟動,避免特殊狀況的發生。
您需先在AP2的網頁管理介面,分別設定以下功能。
設定兩個SSID,分別為MyPlace 2, FON_AP 2,只要不與AP1相同即可。為了避免AP2與AP1連線時,同樣的SSID會發生混淆,即使連線設定檔能指定連線AP的BSSID(MAC位址),這仍然是比較保險的做法。加密的部分則不會互相影響,也就是AP1與AP2的MyPlace可以設定不同的加密Key和加密模式。設定完成別忘了要Submit。
在Advanced->Internet Connection Settings裡面,需設定Mode為DHCP,這樣搭配下文修改過的/sbin/ifup是剛好的,設定完成別忘了要Submit。
在Advanced->Network Settings裡面,需設定與AP1的MyPlace不同的網段。您可以參考Preliminary中網路架構圖的192.168.11.1,或自行設定一個不與現有重疊的網段。若您設定為一運作中的網段,當AP2的用戶端連線至這些重疊的網段,將會無法route至目的地。
在Advanced->Wireless Settings裡面,請設定與AP1的MyPlace相同的頻道,這樣AP2才能與AP1連線。
第一個要新增的設定檔,功能是自動建立FON的Station,讓FON能像一般網卡一樣,並且連線至預先設定好的AP。待FON成功連線至FON總部,系統本身的機制就會啟動MyPlace 2和FON_AP 2。這個檔案命名為/etc/init.d/S99wds。
#!/bin/sh需要先Clean Original VAP,是因為Virtual AP和Station有特定的啟動順序,若Station不是在Virtual AP前先bring-up起來,當其它網卡連線至此AP,就會重複出現斷線重連的現象,這個現象在WDS Bridging最下面的Important有提到。這裡使用FON內建的script ifdown lan來關閉MyPlace 2信號的介面ath1。
# clean the original vap device
ifdown lan
# create new ap and sta device
wlanconfig ath1 create wlandev wifi0 wlanmode ap
wlanconfig ath2 create wlandev wifi0 wlanmode sta nosbeacon
# start sta device first
wpa_supplicant -Bw -iath2 -c/etc/wpa_supplicant.conf
# get IP Addr and other settings by DHCP
udhcpc -i ath2 -R
# and then the network gets ready, the ap device is booted by fon
# ping default router to prevent wireless connection lost
ping `route -n|grep ath2|grep UG|awk '{print $2}'` &
ifconfig eth0 192.168.12.1 netmask 255.255.255.0
Create new ap and sta的部分,是要重新建立剛才關閉的ath1,和準備要做為Station的ath2。
Start sta device和get IP Addr的部分,是先使用wpa_supplicant建立與AP1的連線,完成後再使用udhcpc從AP1取得IP位址。若您需要自行設定IP位址,請自行取代此行設定。
當AP2成功連線至AP1,表示AP2已有連線至Internet的能力,再來會像連接網路線上網一樣,與FON總部連線。連線完成後,會自動使用指令檔來啟動MyPlace 2和FON_AP 2兩個介面,並且開始接受用戶端的連線。若您已在FON總部要求啟動MyPlace 2前,就先連線至MyPlace 2,您可能會遇到極短時間的斷線,但隨即馬上恢復,這是正常的現象。
再來是自動ping預設router的動作,主要是避免無線網路長時間閒置,導致無線網路自動斷線。使用此方法可維持AP1與AP2的連線。
最後一行是設定Ethernet Port的IP位址,相當於分享器的IP位址。
這裡要修改的是/sbin/ifup這個檔案,需修改以下部分:
line 222:在FON預設值中,連線至Internet的網路封包都是由Ethernet Port(eth0)送出,而目前Internet連線是由Station(ath2)提供,則需修改wan_ifname為ath2。當FON啟動時,會產生目前網路介面的配置檔,並輸出至/tmp/network-config,而其它設定檔或script都會引用此配置檔,來得知特定功能由哪個介面負責。只要修改/sbin/ifup,使它產生出需要的結果,就不需要逐一修改所有的設定檔,這樣能節省相當多的時間。
wan_ifname=${wan_ifname:-eth0}
Modify:
wan_ifname=ath2
這裡要修改的是/etc/hotplug.d/iface/20-firewall,需修改以下部分:
@ last 2 line:
Insert
/usr/sbin/iptables -A WAN_HOOK -o ${wan_ifname} -d 192.168.1.0/28 -j DROP
關於這裡修改的部分,請參考FON: Prevent Clients to Access Unauthorized Zone,在這裡有詳細的說明。就本例而言,FON_AP 2的使用者在預設的設定之下,並無法連線至192.168.10.0/24,但並無法防止使用者連線至上層的192.168.1.0/28。加上這樣的規則,即可保護192.168.1.0/28不被FON_AP 2的使用者存取。設定完成後,每次FON啟動就會自動將此規則加入iptables。
再來是/etc/wpa_supplicant.conf。這裡分別貼上WPA, WPA2, WEP, None四種加密方式可使用的設定檔。
WPA, WPA2:
ctrl_interface=/var/run/wpa_supplicantWEP:
ctrl_interface_group=0
ap_scan=1
network={
ssid="MyPlace"
bssid=00:18:84:XX:XX:XX
proto=WPA RSN
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP WEP104 WEP40
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}
ctrl_interface=/var/run/wpa_supplicantNone:
ctrl_interface_group=0
ap_scan=1
network={
ssid="MyPlace"
key_mgmt=NONE
wep_key0="abcde"
wep_key1=0102030405
wep_key2="1234567890123"
wep_tx_keyidx=0
}
ctrl_interface=/var/run/wpa_supplicant由於wpa_supplicant會自動使用設定檔內允許的加密與認證方式,所以WPA與WPA2可以使用相同的設定檔。
ctrl_interface_group=0
ap_scan=1
network={
ssid="MyPlace"
key_mgmt=NONE
}
WPA, WPA2的Key也可以直接放入未編碼過的Key,並使用雙引號(")把Key包含起來,但這樣每次系統啟動時,都需花費系統資源來把未編碼過的Key,轉換成編碼過的Hex Code,相當花費時間,因此建議您可以事先使用wpa_passphrase把您的Key轉換好,再把它直接放入wpa_supplicant.conf,可以節省開機需要的時間。
若您的SSID或Key使用的是特殊字元,您可以直接輸入Hex Code,並且不要在旁邊加上雙引號,wpa_supplicant也能接受此格式。
若您使用WEP加密,您需知道原先Key的Index,並修改成設定檔相對應的選項。在設定檔中的Index範圍是0~3,若您原先的格式是1~4,則您的Index值需自行減1,然後再修改成wep_key#="abcde"和wep_tx_keyidx=#,#字號請替代為您的Index。
在這裡要修改的有兩個檔案。
/etc/dnsmasq.conf @ last line:
Append:/etc/init.d/N50chillispot @ line 116:
dhcp-option=6,168.95.192.1,168.95.1.1
dhcp-range=192.168.12.100,192.168.12.200,255.255.255.0,12h
interface=eth0
interface=ath1
Remove:dnsmasq是FON提供MyPlace 2用戶端DNS查詢和DHCP服務的程式。實際使用時,發現DNS查詢的部分常會出問題,在不明情況下,某一次的DNS查詢會回傳Query refused,接下來的查詢會全部都回傳Query refused,直到重新啟動才會恢復。此問題與FON連續開機數天,就會發生無法連外的情形是類似的。在設定檔設定DNS Server後,就會直接透過DHCP傳給MyPlace 2用戶端,而不是直接使用FON的dnsmasq,如此即可避免此問題。
--dns1="$WANIP" \
--dns2="$WANIP" \
再來的dhcp-range設定的是會分配給MyPlace 2和Ethernet Port用戶端的IP位址範圍。這裡也要求dnsmasq需listen eth0和ath1介面。
同樣為了不使用dnsmasq,FON_AP 2也需要做一些調整。FON_AP 2的使用者是由chillispot提供服務,在FON預設值中,會使用自身的dnsmasq,也就是會遇到相同的問題。刪除指定的那兩行,是要讓chillispot使用系統從上層網路取得的DNS Server,而不是使用dnsmasq,這樣就能解決問題。
這裡修改的是/sbin/ifup。
Remove line 61:為了要讓Ethernet Port當成IP分享器使用,先前有要求Advanced->Internet Connection Settings裡需設為DHCP。設為DHCP後,系統啟動時會執行這裡的指令,而刪除此行就會變成只啟動eth0而不做額外的設定,這樣就不需要先刪除FON設定好的值,可以直接執行想要的指令。
udhcpc -i "$dev" ${ipaddr:+ -r $ipaddr} -R &
這裡修改的是/etc/firewall.user:
Append:這個部分是為了讓Ethernet Port的電腦,可以經由FON連線至MyPlace和Internet。若未加上這些規則,Ethernet Port的電腦會無法與其它Interface連線。
# make packets received from ethernet inteface can go through FON to ath2
iptables -A FORWARD -i eth0 -o ath2 -j ACCEPT
iptables -A FORWARD -i eth0 -o ath1 -j ACCEPT
iptables -A FORWARD -i ath1 -o eth0 -j ACCEPT
以上內容都修改完成後,重新啟動後,您的FON應該可以成功與AP1連線。請繼續閱讀接下來的文章。
FON: Extend Your Internet Connection - Act III
Back
免責聲明:若您依照本文章內容修改您的FON,更改後出現任何問題,最後導致FON無法正常運作,您需自行負責,本人並未保證此修改方式適用於各種特殊情形!若您繼續閱讀本文章,則表示您同意此聲明。
這裡要介紹的部分,是如何使用我們事先做好的自動安裝檔。經由此自動安裝檔引導您輸入設定值,即能使您的FON達到本系列文章的功能。由於本自動安裝檔並無法保證在所有情形下運作,若有任何疑問,歡迎隨時回報!在使用之前,希望您已經瞭解本文Preliminary的網路架構,在後面的設定會需要這些資料。
懶人包更新歷程:
patch-20070504.tar.gz
http://tinyurl.com/2t4zze
2007.12.03: 此懶人包已確定無法正常在0.7.1 r3和更高版本運作,有興趣使用具有此功能之其它套件,請參考這裡。若您仍想下載懶人包,請自行複製下載連結。
2007.05.04: 使用Ethernet Port當成分享器時,網頁管理介面的Advanced->Port Forwarding無法套用任何設定,此問題已修正
2007.05.04: 修正install.sh的保護區域網路的部分,設定值並不會寫入至設定檔。
2007.05.02: 修正Ethernet Port無法與ath1互相route
2007.04.30: 第一次釋出
在這之前,請先把您的FON恢復至出廠預設值,並且讓FON允許SSH連線,再重新設定相關設定值,避免您先前安裝其它套件會與接下來的設定衝突,最後記得需自動更新成0.7.1 r3。完成後,請先切斷AP2的Ethernet並重新啟動,避免特殊狀況的發生。
您需先在AP2的網頁管理介面,分別設定以下功能。
分別設定兩個SSID為MyPlace 2, FON_AP 2,只要不與AP1相同即可,避免AP2與AP1連線時,相同的SSID會發生混淆,雖然連線設定檔能指定連線AP的BSSID(MAC位址),這是比較保險的做法。加密的部分則不會互相影響,也就是AP1與AP2的MyPlace可以設定不同的加密Key和加密模式。設定完成別忘了要Submit。
在Advanced->Internet Connection Settings裡面,需設定Mode為DHCP,設定完成別忘了要Submit。
在Advanced->Network Settings裡面,需設定與AP1的MyPlace不同的網段。您可以參考Preliminary中網路架構圖的192.168.11.1,或自行設定其它網段,以不與其它網段重疊為原則。若您設定一運作中的網域,AP2的用戶端會無法route至重疊的網段。
在Advanced->Wireless Settings裡面,請設定與AP1的MyPlace相同的頻道,這樣AP2才能與AP1連線。
現在請使用PieTTY或您習慣的SSH連線程式,連線至您要調整的FON。連線後請先拔除網路線再reboot您的FON,然後再繼續後面的動作。
下載上面連結的壓縮檔至您的電腦,並使用pscp或其它工具上傳至FON的/tmp,也就是預設一登入的資料夾。若您使用pscp,務必加上-scp參數,否則會使用tftp上傳,此時會發生錯誤。在測試的過程中,使用wget從區網的Server下載檔案後,雖然看似檔案下載完成,而容量也正確,實際上解壓縮卻會讓FON當機,一定得重新啟動,直到透過無線網路使用scp上傳至FON,問題才解決,故不建議直接從FON使用wget下載此檔案。
上傳完成後,請執行下列指令解壓縮此檔案,檔名請自行依實際情形調整。若您是上傳至預設一登入的地方,解壓縮的過程會相當快,因為那裡是RAM。正常解壓縮為5秒,若解壓縮的時間超過30秒,基本上已經太久了,建議您先重新啟動,待無線網路信號出現後,立即透過無線網路使用scp上傳至FON,再試一次。
第一步會問您的問題,是您想把這些必要的檔案,都移動至哪個資料夾。若您想放在預設路徑的/etc/wireless,直接按下Enter即可。接下來會把剛才解壓縮的檔案移動從RAM至Flash Memory上,這部分速度會比較慢,一般而言約需2分30秒左右,請耐心等候。
完成後,指令檔會自動備份您現有的檔案,並把新檔案以link的方式取代原先的檔案,這些過程是自動的。若您先前已完成檔案移動的動作,可以再度執行此安裝檔,來接續先前中斷的安裝,或是覆寫現有的設定。
接下來會出現兩個問題,是和DNS Server有關的,這個部分的設定會套用至FON_AP、MyPlace和Ethernet Port的使用者。用戶端使用DHCP取得設定值時,會直接使用您這裡設定的DNS Server,而不是使用FON內建且常出問題的dnsmasq。第一個問題是要輸入您ISP的DNS Server,而第二個問題是輸入您第二個DNS Server,某些ISP會提供第二個DNS Server。若您不需設定第二個DNS Server,直接按下Enter即可。
再來出現的部分,是用來設定Ethernet Port是否要當一般的分享器來使用,若您不需要這樣的功能,請直接按Enter。您需要設定Ethernet Port的IP位址,就像您的IP分享器需要設定IP位址一樣。此IP位址所在的網段,絕對不能與現正運作的網段重複,否則route會失敗。再來是要設定分配給用戶端的起始和結束IP位址。
下一個部分,是設定您不想讓FON_AP 2使用者看到的網段。這個功能的詳細說明,請看FON: Prevent Clients to Access Unauthorized Zone。同樣的,若您不需要此功能的請直接按Enter。您只需輸入在該網段中的任一IP位址,如架構圖中的192.168.1.3,與適當的Subnet Mask,如255.255.255.240,這樣設定就會生效。
再來這一部分是與無線網路相關的設定,它關係到您是否能與AP1連線。第一個需輸入的是AP1的SSID,SSID中有空白也不影響。第二個是BSSID,也就是您AP1無線網路的MAC位址,若您有NetStumbler或類似工具,即能取得AP的MAC位址,而在AP的底部也可能就有標示,您可以找找看。若AP1為FON,底部的標籤是Ethernet Port的MAC位址,此位址的最後一位+2h就是MyPlace的位址。第三是設定使用的加密方式,假設您使用wpa加密,就直接輸入wpa即可,依此類推。若您輸入的是wep,則會要求您輸入hex或plain,表示您的key是Hex Code或是純文字。第四是設定您加密的key。若您使用wep,則會再提示您輸入目前使用的key的index,範圍是1~4,請務必與原AP設定相同,若原AP是寫0~3,則index請自行+1,使它變成1~4的格式。
最後會建立解除安裝檔uninstall.sh,它能自動移除先前安裝的檔案,並還原成未安裝前的狀態。建立完成後,您的FON會自動重新啟動,待開機完成後,剛開始您會先看到MyPlace 2可以連線,但馬上會斷線,過一小段時間又自動恢復,此時就能正常提供服務了,這是正常現象。安裝程序到這裡已經結束。
只要您完成第一階段的檔案複製,這個指令檔就可以重複執行,並會自動跳過檔案複製的程序,直接進行安裝設定。若您需事後再修改相關的設定值,可以直接執行此指令檔,它會自動覆寫先前的設定。若您手動修改過相關設定檔,不建議您再次執行此指令檔,因為可能會造成設定值遺失,或是覆蓋錯誤等問題。執行指令檔時,若未完成所有的設定,干萬不要重新啟動FON,否則FON可能會無法啟動。
經由此安裝檔設定過的FON,在網頁管理介面上有些小改變。

Fig 1: FON Router Status (Click to enlarge)

Fig 2: Advanced Router Status (Click to enlarge)
從Fig 1可以看出來,現在的Router Status中的Internet Connection,顯示的是您Station從AP1取得的IP位址和Gateway。而DNS Server雖然是系統預設值,但實際上並不是使用此DNS Server。最下面還多了Advanced Router Status,這裡會連結到Fig 2的網頁。
Advanced Router Status顯示的資訊,與您使用SSH連線至FON,在Terminal執行指令所得到的資訊是相同的。在頁首的部分,具有快速跳頁的功能,可以跳至指定的部分。而此頁設定5分鐘自動重新整理一次,若您先前點選了快速跳頁,重新整理後會回到重新整理前的位置,而不是回到頁首。
完成上述步驟後,您可以繼續閱讀下一篇文章。
免責聲明:若您依照本文章內容修改您的FON,更改後出現任何問題,最後導致FON無法正常運作,您需自行負責,本人並未保證此修改方式適用於各種特殊情形!若您繼續閱讀本文章,則表示您同意此聲明。
這裡要介紹的部分,是如何使用我們事先做好的自動安裝檔。經由此自動安裝檔引導您輸入設定值,即能使您的FON達到本系列文章的功能。由於本自動安裝檔並無法保證在所有情形下運作,若有任何疑問,歡迎隨時回報!在使用之前,希望您已經瞭解本文Preliminary的網路架構,在後面的設定會需要這些資料。
懶人包更新歷程:
patch-20070504.tar.gz
http://tinyurl.com/2t4zze
2007.12.03: 此懶人包已確定無法正常在0.7.1 r3和更高版本運作,有興趣使用具有此功能之其它套件,請參考這裡。若您仍想下載懶人包,請自行複製下載連結。
2007.05.04: 使用Ethernet Port當成分享器時,網頁管理介面的Advanced->Port Forwarding無法套用任何設定,此問題已修正
2007.05.04: 修正install.sh的保護區域網路的部分,設定值並不會寫入至設定檔。
2007.05.02: 修正Ethernet Port無法與ath1互相route
2007.04.30: 第一次釋出
在這之前,請先把您的FON恢復至出廠預設值,並且讓FON允許SSH連線,再重新設定相關設定值,避免您先前安裝其它套件會與接下來的設定衝突,最後記得需自動更新成0.7.1 r3。完成後,請先切斷AP2的Ethernet並重新啟動,避免特殊狀況的發生。
您需先在AP2的網頁管理介面,分別設定以下功能。
分別設定兩個SSID為MyPlace 2, FON_AP 2,只要不與AP1相同即可,避免AP2與AP1連線時,相同的SSID會發生混淆,雖然連線設定檔能指定連線AP的BSSID(MAC位址),這是比較保險的做法。加密的部分則不會互相影響,也就是AP1與AP2的MyPlace可以設定不同的加密Key和加密模式。設定完成別忘了要Submit。
在Advanced->Internet Connection Settings裡面,需設定Mode為DHCP,設定完成別忘了要Submit。
在Advanced->Network Settings裡面,需設定與AP1的MyPlace不同的網段。您可以參考Preliminary中網路架構圖的192.168.11.1,或自行設定其它網段,以不與其它網段重疊為原則。若您設定一運作中的網域,AP2的用戶端會無法route至重疊的網段。
在Advanced->Wireless Settings裡面,請設定與AP1的MyPlace相同的頻道,這樣AP2才能與AP1連線。
現在請使用PieTTY或您習慣的SSH連線程式,連線至您要調整的FON。連線後請先拔除網路線再reboot您的FON,然後再繼續後面的動作。
下載上面連結的壓縮檔至您的電腦,並使用pscp或其它工具上傳至FON的/tmp,也就是預設一登入的資料夾。若您使用pscp,務必加上-scp參數,否則會使用tftp上傳,此時會發生錯誤。在測試的過程中,使用wget從區網的Server下載檔案後,雖然看似檔案下載完成,而容量也正確,實際上解壓縮卻會讓FON當機,一定得重新啟動,直到透過無線網路使用scp上傳至FON,問題才解決,故不建議直接從FON使用wget下載此檔案。
上傳完成後,請執行下列指令解壓縮此檔案,檔名請自行依實際情形調整。若您是上傳至預設一登入的地方,解壓縮的過程會相當快,因為那裡是RAM。正常解壓縮為5秒,若解壓縮的時間超過30秒,基本上已經太久了,建議您先重新啟動,待無線網路信號出現後,立即透過無線網路使用scp上傳至FON,再試一次。
tar -zxf patch-2007-04-30.tar.gz解壓縮完成後,會出現lazy_pack資料夾。請執行裡面的install.sh。
cd lazy_pack
./install.sh
第一步會問您的問題,是您想把這些必要的檔案,都移動至哪個資料夾。若您想放在預設路徑的/etc/wireless,直接按下Enter即可。接下來會把剛才解壓縮的檔案移動從RAM至Flash Memory上,這部分速度會比較慢,一般而言約需2分30秒左右,請耐心等候。
完成後,指令檔會自動備份您現有的檔案,並把新檔案以link的方式取代原先的檔案,這些過程是自動的。若您先前已完成檔案移動的動作,可以再度執行此安裝檔,來接續先前中斷的安裝,或是覆寫現有的設定。
接下來會出現兩個問題,是和DNS Server有關的,這個部分的設定會套用至FON_AP、MyPlace和Ethernet Port的使用者。用戶端使用DHCP取得設定值時,會直接使用您這裡設定的DNS Server,而不是使用FON內建且常出問題的dnsmasq。第一個問題是要輸入您ISP的DNS Server,而第二個問題是輸入您第二個DNS Server,某些ISP會提供第二個DNS Server。若您不需設定第二個DNS Server,直接按下Enter即可。
再來出現的部分,是用來設定Ethernet Port是否要當一般的分享器來使用,若您不需要這樣的功能,請直接按Enter。您需要設定Ethernet Port的IP位址,就像您的IP分享器需要設定IP位址一樣。此IP位址所在的網段,絕對不能與現正運作的網段重複,否則route會失敗。再來是要設定分配給用戶端的起始和結束IP位址。
下一個部分,是設定您不想讓FON_AP 2使用者看到的網段。這個功能的詳細說明,請看FON: Prevent Clients to Access Unauthorized Zone。同樣的,若您不需要此功能的請直接按Enter。您只需輸入在該網段中的任一IP位址,如架構圖中的192.168.1.3,與適當的Subnet Mask,如255.255.255.240,這樣設定就會生效。
再來這一部分是與無線網路相關的設定,它關係到您是否能與AP1連線。第一個需輸入的是AP1的SSID,SSID中有空白也不影響。第二個是BSSID,也就是您AP1無線網路的MAC位址,若您有NetStumbler或類似工具,即能取得AP的MAC位址,而在AP的底部也可能就有標示,您可以找找看。若AP1為FON,底部的標籤是Ethernet Port的MAC位址,此位址的最後一位+2h就是MyPlace的位址。第三是設定使用的加密方式,假設您使用wpa加密,就直接輸入wpa即可,依此類推。若您輸入的是wep,則會要求您輸入hex或plain,表示您的key是Hex Code或是純文字。第四是設定您加密的key。若您使用wep,則會再提示您輸入目前使用的key的index,範圍是1~4,請務必與原AP設定相同,若原AP是寫0~3,則index請自行+1,使它變成1~4的格式。
最後會建立解除安裝檔uninstall.sh,它能自動移除先前安裝的檔案,並還原成未安裝前的狀態。建立完成後,您的FON會自動重新啟動,待開機完成後,剛開始您會先看到MyPlace 2可以連線,但馬上會斷線,過一小段時間又自動恢復,此時就能正常提供服務了,這是正常現象。安裝程序到這裡已經結束。
只要您完成第一階段的檔案複製,這個指令檔就可以重複執行,並會自動跳過檔案複製的程序,直接進行安裝設定。若您需事後再修改相關的設定值,可以直接執行此指令檔,它會自動覆寫先前的設定。若您手動修改過相關設定檔,不建議您再次執行此指令檔,因為可能會造成設定值遺失,或是覆蓋錯誤等問題。執行指令檔時,若未完成所有的設定,干萬不要重新啟動FON,否則FON可能會無法啟動。
經由此安裝檔設定過的FON,在網頁管理介面上有些小改變。
Fig 1: FON Router Status (Click to enlarge)
Fig 2: Advanced Router Status (Click to enlarge)
從Fig 1可以看出來,現在的Router Status中的Internet Connection,顯示的是您Station從AP1取得的IP位址和Gateway。而DNS Server雖然是系統預設值,但實際上並不是使用此DNS Server。最下面還多了Advanced Router Status,這裡會連結到Fig 2的網頁。
Advanced Router Status顯示的資訊,與您使用SSH連線至FON,在Terminal執行指令所得到的資訊是相同的。在頁首的部分,具有快速跳頁的功能,可以跳至指定的部分。而此頁設定5分鐘自動重新整理一次,若您先前點選了快速跳頁,重新整理後會回到重新整理前的位置,而不是回到頁首。
完成上述步驟後,您可以繼續閱讀下一篇文章。
FON: Extend Your Internet Connection - Act IV
Back
在前面的文章,您已經完成設定檔調整的部分,現在您的AP2應該已與AP1成功建立連線,並且AP2可以透過AP1連線至Internet。接下來要測試在這樣的架構下的效能,與電腦直接連線AP1的差異。
在前面的文章,您已經完成設定檔調整的部分,現在您的AP2應該已與AP1成功建立連線,並且AP2可以透過AP1連線至Internet。接下來要測試在這樣的架構下的效能,與電腦直接連線AP1的差異。
測試環境是使用區域網路中的192.168.1.3,上面使用Apache Web Server,並事先上傳200MB的ISO檔案,再由桌機下載檔案,並分割成10份同時下載。上傳的部分是由192.168.1.3當成用戶端,連線至桌機,並下載兩個各200MB的檔案,測試時間為1分鐘。
由區網的Server做為下載來源,最大的好處就是可以使FON盡量達到極限,不受家裡連外頻寬或其它因素的限制。每次的測試長度皆為1分鐘,使用多區段 下載,且使用DUMeter的Stop Watch來測量以下情形下的數據。數值會因實際環境不同而有所差異,您可能無法測得相同數據。
首先是基準組的測試,桌機直接與AP1連線。本次測試使用的是HG-770指向性網卡,測試前先調整至最佳接收角度,確保測試時能接收最完整的信號。從下圖得到的數據,信號強度相當好(-26dBm),所以信號接收的部分確定是正常的。
Fig 1: HG-770 Status. Connected to AP1 (Click to enlarge)
Fig 2, 3: Download, Upload with AP1
由上圖可得知,測得的數據與FON公佈的22Mbps Throughput有一段差距,22Mbps換算成Bytes需除以8,但除以10較符合實際傳輸的速率,也就是2.2MB/s。
第一部分的測試,桌機先透過Switch,並連接在AP2的Ethernet上。封包從桌機出發,經由AP2的Ethernet port進入FON,再經過Station(ath2)到達AP1的ath1,最後由AP1轉送封包出去。
Fig 4, 5: Download and upload through Ethernet connection. Connected to AP2
第二部分的測試,是由桌機使用HG-770與AP2連線,並使用同樣的方法測試。
Fig 6, 7: Download and upload through wireless connection. Connected to AP2
從以上測試的結果可知,若下載的檔案需透過AP1傳回AP2,再使用無線網路傳給用戶端,整體的頻寬會變為原來的一半左右,同時接收和傳送資料各需要一半的頻寬。若桌機透過Ethernet連線至AP2則無此現象,因為桌機接收資料不會佔用無線網路頻寬。也就是串連的AP越多,且同時一起傳送與接收自身需要的資料,每一個AP可供自己使用的頻寬會大幅減少。
測試報告結束後,您可以繼續閱讀接下來的文章。
FON: Extend Your Internet Connection - Final
Back
最後這一部分,要說明的是已知的問題和先前未補充的部分。
若AP1需先在網頁登入後,才能使用Internet,除非目前自行新增相關的登入Script,否則無法使用。
當您無法正常使用AP2時,第一件事就是先重新啟動,並放置10分鐘。若還是沒有恢復正常,您可以先把FON用網路線與電腦連接,並使用ssh程式連線至169.254.255.1,只要FON內部還能正常運作,應該都可以連線進去,並重置或修改系統設定。
若以上的方法仍無作用,您可以連續壓住FON底部Reset鈕約30秒,放開之後約10秒,系統會自動重新啟動,完成後會回復至出廠值,只要不是硬體故障,此方法應該都能讓它恢復正常。
若遇到韌體更新,建議使用新版發佈的檔案,因為原先的檔案可能會被覆蓋,或與其它官方更新的設定檔不相容,需以新韌體的檔案為基礎,重新修改相關檔案。建議您先回覆至出廠預設值,再安裝更新的檔案。
剩下的等待您來補充 :)
最後這一部分,要說明的是已知的問題和先前未補充的部分。
若AP1需先在網頁登入後,才能使用Internet,除非目前自行新增相關的登入Script,否則無法使用。
當您無法正常使用AP2時,第一件事就是先重新啟動,並放置10分鐘。若還是沒有恢復正常,您可以先把FON用網路線與電腦連接,並使用ssh程式連線至169.254.255.1,只要FON內部還能正常運作,應該都可以連線進去,並重置或修改系統設定。
若以上的方法仍無作用,您可以連續壓住FON底部Reset鈕約30秒,放開之後約10秒,系統會自動重新啟動,完成後會回復至出廠值,只要不是硬體故障,此方法應該都能讓它恢復正常。
若遇到韌體更新,建議使用新版發佈的檔案,因為原先的檔案可能會被覆蓋,或與其它官方更新的設定檔不相容,需以新韌體的檔案為基礎,重新修改相關檔案。建議您先回覆至出廠預設值,再安裝更新的檔案。
剩下的等待您來補充 :)
Subscribe to:
Posts (Atom)