# CNLab 3 Report ## Group 9 - 實驗: Build Proxy Mobile IPv6 | 姓名 | 學號 | 貢獻度 | | -------- | -------- | -------- | | 游一心 | b08902017 | 16.7% | | 羅章元 | b08902144 | 16.7% | | 黃品淳 | b08902005 | 16.7% | | 楊鈞安 | b08902036 | 16.7% | | 戴培凱 | b08902070 | 16.7% | | 李驊諺 | b08902124 | 16.7% |  ### 一、IPv6 1. - Unicast: 一個address對應到唯一的主機 (e.g) ::1 -> Host A. packets to ::1 will send to Host A. - Multicast: 一個address對應到許多主機,所有主機都會收到送往這個address的封包 (e.g) ::2 -> Host A, Hotst B, Host C. packets to ::2 will send to Host A, Host B, Host C - Anycast: 一個address對應到許多主機,但每個送往這個address的封包只有其中一台主機會收到 (e.g) ::3 -> Host A, Host B, Host C. packet-1 to ::3 send to Host A, Only Host A received it. packet-2 to ::3 send to Host C, Only Host C received it. ... 2. - Router Solicitation(RS) 由Host送給Router要求Router發布他的RA資訊,Router收到這個訊息以後就會產生RA封包送出去 Host可以利用這個訊息來讓Router主動發布RA而不是等待他定期發布 - Router Advertisement(RA) 由Router發布,包含了Routing的各項資訊(Prefix, link MTU)或address configuration的資訊,Router會定時發布或著是在收到RS時發布出去。 RA封包包含的資訊可以讓收到的Host知道如何Routing或是設定Ipv6 3. - Stateful address configuration指的是網路中有一台機器會負責維護address對應的資訊(如DHCP server) - Stateless address configuration則是由各個host自己生成並配置address,如IPv6中,router透過RA發布address configuration的資訊,而host收到以後,就可以用那些資訊來產生自己的IPv6 address。 4. - Duplicate Address Detection(DAD): 在stateless address configuration的情況下,有可能發生兩台host產生同樣address的情況,所以host產生address後要透過DAD檢查是否有其他人使用了這個address - 運作方法: host A產生address後,廣播Neighbor Solicitation(NS)訊息,其中包含了自己產生的address,而其他host收到NS後,會廣播Neighbor Advertisement(NA)訊息來公告自己的address。 Host A透過收到的NA或別人發布的NA檢查是否有重複的address,如果都沒有人使用,他就會使用這個address ### 二、Mobile IPv6 MIPv6 在Mobile Node(MN)轉換到另一個link的時候,得到在另一個link下的Care-of Address(CoA),他會向自己的Home Agent(HA)發出一個update訊息,讓HA知道自己原本的home address要轉發到CoA去,不過這樣所有往MN的封包都要靠HA來轉發,會造成Triangular routing problem - Solution 當MN收到其他節點(CN)傳來的封包時,他會檢查是否是經過HA轉發的,如果是,他就會採用另一個update的protocal向CN發布更新訊息,讓對方知道自己現在的位置(CoA),從而達到CN與MN直接的連線,避免Triangular Routing Problem。 ### 三、實驗中遇到的難題與解決方法 本次實驗原則上按照投影片內容操作即可,因此實驗中遇到問題發生在硬體與系統上 * AP 本組使用的AP於實驗二就已發生許多問題,耗費多時後最終以借用別組AP解決。而本次實驗不須連上外網,卻依舊出現問題,多次在更改AP設定,如更新AP的IP與SSID後,自動跳出網頁,而期間嘗試連上新舊多組IP位置,抑或是重新啟動AP,依舊無法回到設定AP網頁。推測應該是AP機體老舊所致,無法有針對性的解決,最終是在數次reset後完成設定。 * MN 作業系統 原則上MN使用的作業系統不該有限制,只需要獲取IPv6位址,並使用Wireshark抓封包即可。然而本組與其他組皆碰上了MN系統上的問題,使用多台MN嘗試獲取IPv6位址,結果僅有一兩台能成功連上,原因不明。本組在排除MAG與LMA的設定問題後,以各種作業系統的MN做嘗試,最後在Mac系統上成功,Windows則失敗。 ### 四、實驗心得 * 李驊諺 這幾次實驗做下來了解到很多我們平常在用的網路相關的措施的運作,從基礎的DHCP/防火牆到wifi登入重導向及IPv6自動設定。我們明明都用得很習慣卻不知道其背後的原理,直到透過這些實驗有這個機會去仔細看好他們怎麼運作的並一步一步把他架設起來。在實際操作過後才深刻的明白到這些protocol的精妙之處及環環相扣,十分佩服能夠一步一步發展出整個架構,為人們帶來方便的生活的前輩們。 * 戴培凱 在這三次實驗中接觸了不少網路架構的實現與運作,並對此有一些簡單的操作與應用。雖然在後兩次實驗中發生了令人無奈的硬體問題,使實驗不如預期般順利。然而在探究的過程中一步步排除錯誤,也確實讓我對其有更多的了解,尤其是無線網路的認證機制,幫助我在日後碰上相關問題時,能更有系統地一步步找出問題並嘗試解決,也算是另類的收穫。 * 楊鈞安 在這三次實驗中,我們充分接觸到不少網路設施運作的知識和原理,如防火牆和IPV6自動設定等等,讓原本死板的課本知識真正的實作出來,相當新鮮有趣。在實驗的過程中,雖然我們幾乎都照著助教的步驟一步步完成,但仍然出現不少不如預期的錯誤,因為剛接觸網路實作,一開始真的不知道怎麼排除問題,我們慢慢的研究嘗試找出解決方法,也更加深了我們對各種網路機制的認識,還有AP本身的硬體問題也是相當的頭疼。經過這樣的實驗課,相信自己未來遇到更多網路相關問題都能保持良好的態度去解決它。 * 黃品淳 這三次實驗的內容基本上都是在上學期計算機網路時講過的概念,但除了第一次實驗比較順利之外,後面兩次都遇到了非常多困難。我覺得實驗最難的地方在於debug,或者說是找到出錯的環節,往往我們每一步都照投影片操作,仍會在出乎意料的地方發生問題,尤其是硬體(AP)和操作系統的問題最讓人難以發覺,只能不斷的猜測、嘗試,從篩選後仍多到可怕的環節一一檢查,即使是做完實驗的現在,我也不敢說完全理解每個步驟的目的和它實際上做了什麼,但解決問題過程中的思考和自學的工具對我而言都彌足珍貴,相信以後在架構類似的網路服務碰到挫折時,現在練習的這些實驗必能助我一臂之力。 * 羅章元 經歷這幾次實驗課,我深刻體悟實作一個網路服務有多麼不容易。以第二個實驗為例,最初按照slide上的實驗步驟安裝套件、修改設定。結果ap的redirect功能無法正常運行。由於對這些套件和框架不夠熟悉,很難從運行狀態推斷哪個環節出現問題。只能將整個流程trace一遍,然後根據error code搜尋可能的解法不斷嘗試。最後發現是ap壞掉了,換別組的ap即可正常運行。建議投影片可以稍微更新一下,否則實驗做不出來並且投影片中將近一半的連結無法使用時,真的很令人崩潰 * 游一心 在這三次實驗中遇到的困難不計其數,尤其是實驗二時大家連續三天約出來不眠不休地趕網站,還以為自己要死掉了,但也收穫了不少有趣的東西。網路的架構雖然充滿了一堆不知所以的 protocol 和 server,卻能正常的運作,以致帶來如此的便利性,相當讓人驚艷。越往深處探究,越覺前人的可畏,能夠從零產出一套如此複雜又充滿細節的系統並應用到生活中,非常厲害。我相信這三次的實驗雖然艱辛,但是未來我遇到網路問題時,這些實驗中的挫折必定會給我養分,使我能更快瞭解一個 protocol 並完成應用。
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up