Monday, July 27, 2009

Ubuntu 8.10 透過 Wireless 的 Hinet ADSL 設定成功!!

忙了四天上網研究,原本以為是ubuntu本身的bug,結果.....終於被我搞定了。
是這樣的,我原來在台北是使用「Hinet 光世代」以有線的方式上網;但現在人在高雄舅舅家,變成要用Hinet提供的wireless router來上網。
原設定是以網路線將Desktop連接到家中的網路孔,再用「sudo pppoeconf」按步就班的設定完成。但現在卻行不通了。pppoeconf程式總是告訴我:有別的程式正在使用pppoe,所以無法幫我設定。
剛開始我不太懂這些,以為是USB無線網卡不支援ubuntu。
但用滑鼠點桌面右上角的Network manager又可以看到無線基地台的訊號,所以我認為應該是pppoeconf程式不懂得如何透過wireless router來設定pppoe(也就是ADSL)。
然後我就用另一台電腦google來、google去的,看了一堆iwconfig, ifconfig, lsusb, iwlist, ...etc的指令,想學著用手動(在終端機輸入指令)來設定網路。
花了我兩天,終於明白,能否上網的關鍵在於 /etc/network/interfaces 這個檔案,這是網路連線的設定檔。
若想告訴電腦:「我們家是用wireless 網卡連到 wireless router 再連上 Hinet ADSL」的話,修改這個檔案就對了!但是怎麼修呢?

http://ubuntuforums.org/showthread.php?t=571188
http://tavi.debian.org.tw/index.php?page=interfaces
http://www.cyberciti.biz/tips/howto-ubuntu-linux-convert-dhcp-network-configuration-to-static-ip-configuration.html
http://www.ubuntu-tw.org/modules/newbb/viewtopic.php?viewmode=compact&type=&topic_id=12122&forum=22

我參考以上四份網頁,以及無數次的推敲,終於瞭解我應該要做一套很簡單的動作:
  1. 用滑鼠右鍵點桌面右上角的Network manager圖示,取消「啟用網路」與「啟用無線網路」的選項。(相當於關掉Network manager)
  2. 打開終端機,鍵入指令:lshw -C network
  3. 在結果中尋找這一行:
    description: Wireless interface
    往下幾行會有個logical name: wlan0 (這代表你的網卡在電腦中的代號是"wlan0",請先記住它),wlan0的下面幾行有個「configuration:」看看後面的「driver=」有沒有內容。如果沒有,請先參閱以下網址:
    https://help.ubuntu.com/community/WifiDocs/Driver/Ndiswrapper
    設定到有driver後,你才可能正常使用你的USB無線網卡。如果已經有driver了,則請看下一步。
  4. 鍵入指令:iwlist wlan0 scanning
    (尋找你家的Hinet訊號的ESSID)結果如下:
    Cell 02 - Address: 00:19:CB:18:DA:04
              ESSID:"CHTS"
              Protocol:IEEE 802.11g
              Mode:Managed
              Frequency:2.437 GHz (Channel 6)
              Quality:21/100 Signal level:-82 dBm Noise level:-96 dBm
              Encryption key:off
              Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                        9 Mb/s; 12 Mb/s; 48 Mb/s; 18 Mb/s; 24 Mb/s
                        36 Mb/s; 54 Mb/s
              Extra:bcn_int=100
              Extra:atim=0
    Cell 06 - Address: 00:21:91:EE:EE:7A
              ESSID:"dlink"
              Protocol:IEEE 802.11g
              Mode:Managed
              Frequency:2.442 GHz (Channel 7)
              Quality:9/100 Signal level:-90 dBm Noise level:-96 dBm
              Encryption key:off
              Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                        9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
                        48 Mb/s; 54 Mb/s
              Extra:bcn_int=100
              Extra:atim=0
    你可能會跟我一樣,找到不只一個Cell,只要確定你家ADSL的ESSID是叫什麼就行了。
  5. 鍵入指令:sudo iwconfig wlan0 essid "CHTS"
    (CHTS是我家的Hinet訊號的ESSID)
  6. 鍵入指令:sudo gedit /etc/network/interfaces
  7. 打開interfaces檔案後,其內容類似下面這樣:

    auto lo
    iface lo inet loopback

    auto dsl-provider
    iface dsl-provider inet ppp
    pre-up /sbin/ifconfig wlan0 up # line maintained by pppoeconf
    provider dsl-provider

    auto eth1
    iface eth1 inet manual


    你的interfaces檔案或許與這個不一樣,沒關係,因為我們現在只要保留第一、二行的內容,其他的請在各行的開頭加上#字號。
  8. 然後,我們要在其中加入兩行:
    auto wlan0
    iface wlan0 inet ppp

    讓整個檔案內容看起來像這樣:
    auto lo
    iface lo inet loopback

    #auto dsl-provider
    #iface dsl-provider inet ppp
    #pre-up /sbin/ifconfig wlan0 up # line maintained by pppoeconf
    #provider dsl-provider

    #auto eth1
    #iface eth1 inet manual

    auto wlan0
    iface wlan0 inet ppp

    然後存檔。
  9. 再回到終端機,鍵入:sudo pppoeconf
  10. 接下來,如果你的網路訊號正常,pppoeconf就按步就班的設定你的ADSL帳號及密碼。


完成後,如果沒有錯誤,你的ubuntu就可以上網了。但是還沒結束,如果你現在重新開機,會發現又不行上網了,因為剛剛我們設定好的東西又被搞亂了。還記得一開始提到的Network Manager吧,它是被設計成會自動幫我們設定網路的軟體,如果不把它解除安裝,每次我們重新開機後也要重新手動設定無線網路,累死人了吧。
現在就來關掉它吧:「系統」==>「偏好設定」==>「作業階段」
點選Network Manager,按移除,就行了。

好好享受你的無線網路吧!! (:-D)


Labels: , , , ,