2007年7月24日 星期二

網路位址的變換(IP & MAC Address)

在網路上每個人使用的電腦,應該都有一串獨一無二的位址,如此一來才能確保別人要傳送給你的資料,不會找不到家,就如同我們現在的門牌一般

所以在網路設備上(網路卡、路由器、IP分享器...)都具備有唯一的位址,不過這個位址與一般人知道的IP有所不同,因為它主要是指MAC Address,他們之間的差異筆者在這並不多加說明(有興趣的可以點下連結,到維基去看看)

基於MAC Address和IP之間的關係,我們知道IP是一種協議,被設定在硬體的MAC Address上(簡單提一下),可以利用ARP的協議從IP反查到該設備的MAC Address

所以MAC Address應該是唯一的,不然就有可能會造成IP與MAC Address之間的組合錯亂,反過來也是,如果有人自行利用手動設定IP,就有可能會與人使用到同一個IP而造成衝突,就算系統沒有即時警告,在網路的運行上也會有很多麻煩(就像兩個人的門牌相同,或是身份證字號一樣),後果應該很容易就想的到吧!

而硬體設備的MAC Address是在製作的過程中燒上去的,前六碼是廠商代碼,後六碼則是流水號,所以對於硬體設備熟一點的人,一看見MAC Address後,就可以馬上反應過來是屬於那一家出廠的網路設備

不過在網路世界裡,很多事情都會有例外,有些時候手動設定IP會衝突(在LAN較為常見),時間間隔一段時間的兩個網路設備也有可能會遇到相同MAC Address的狀況,通常是同一家公司出來的產品(因為廠商代號相同),除了這些不小心的人為因素之外

現在,因為許多網路管理的設備會針對IP的分配或MAC Address做管理,有些有心的使用者就會透過一些方法來更動MAC Address(以前曾有某知名網路卡廠商釋出相關軟體),以規避網路管理者鎖MAC Address限流量,甚至是禁止上網的權利(在學術網路中極為常見)

雖然,現在的網路設備已經可以針對特定MAC Address鎖定其分配的IP,但是如果有心人士刻意與他人(合法使用者)交換其MAC Address,一樣可以做到規避的效果,反而讓合法使用者無法使用網路,除非管理者的網路設備能精確到每個路由或交換器的設備都控管,這樣子除非該使用者連網路線也對調,否則一樣會被查出(但是那種設備的價位極不友善呀!)

現在因為大家電腦的使用率增加,使用者的程度提高,還是可以利用一些小方式,一樣也能更改MAC Address,以2K、XP為例:

控制台 --> 系統 --> 硬體 --> 裝置管理員 --> 網路介面卡 --> 內容 --> 進階 --> network address --> 修改數值部份(不需冒號)即可

接著再利用命令提示字元(執行 --> cmd),鍵入ipconfig -all,就可以發現自己的MAC Address已經改成你想要的值了,那就代表你成功了(網路管理者就麻煩了!唉...)

除了這方法之外,其實還可以透過登錄檔(regedit)來更改,這部份筆者就先暫時略過,以免造成有人亂試,把自己電腦給弄壞還是其次,如果造成網路上的MAC Address及IP錯亂那才是大麻煩(其實是怕帶給網路管理者太多痲煩,尤其是手邊沒有相關設備)

不過網路上也有一些相關的軟體,例:網路隱身器...等(去問問Google吧!),這一類的軟體其實也是透過相關技術來欺騙設備(PROXY、改變MAC Address...等方式),不過只要自己不會在網路上做壞事的話,應該也可以省下這部份的麻煩吧!(因為這一類軟體常會被有心人士加料),你在享受隱身的快感時,同時也大開自己的方便之門喔!

雖然筆者也知道很多人是為了要下載國外某些網路空間之便,利用相關軟體來達成目的,但是反過來說,在你擁有了這麼多相對的資源時,是不是同時也侵佔了其它人的資源呢?(當然要能夠透過這種方法來變換IP還是需要一些非大眾所擁有的權限喔!)

所以,筆者只是要告訴那些想嘗試的人,若無法衡量可能的後果,千萬別以身試法,因為現在網路上的約束愈來愈多了,還是小心一點吧!

4 則留言:

  1. Hi, Indeepnight
    不好意思,有個問題想要請教你,身邊沒有人可以問,只能問你,再次說聲抱歉。
    比如說,我身在A地,另外B地有ADSL寬頻,有沒有什麼辦法,可以讓我從「A地」透過「B地」,連上「C地」,而「C地」會「完完全全」以為我是「B地」的人。不管「A地」使用了什麼Port,「C地」都會以為是「B地」的Port。
    我需要在「B地」裝設什麼硬體嗎?還是我需要去Study什麼知識,能請你指點我一個方向嗎?真的感激不盡。

    回覆刪除
  2. 突然看見你的留言,著實讓我嚇一跳呢!

    至於你想要的這種需求!基本上比較偏重遠端連線的技術,你可以先透過遠端連線(VNC或是WINDOWS內建的遠端桌面)到「B地」的,再由「B地」連到「C地」,如此一來就可以讓「C地」以為你是從「B地」出發。不過這個方式要有足夠的頻寬,例:8M/640K或是FTTB,才有實用的價值,不然那個遠端桌面會LAG。

    如果只是要透過特別的方式把「B地」當中介點的話,可以參考我的這一篇:「http://indeepnight.blogspot.com/2007/09/ssh-tunnel.html」,在B點弄一個類似PROXY的服務,讓你可以從A點連到B點後再轉發出去。(基於安全因素這個還要做一些其它的設定,否則安全性風險頗大)。不然你也可以去參考一下其他proxy的軟體。

    如果有其它的疑問,msn上跟你說好了!(我擅自先加了唷!)

    回覆刪除
  3. Hi, Indeepnight

    請問一下,依照你這麼說

    那我可以使用者

    我有辦法可以知道是誰改了跟我一樣的

    MAC Address 而造成我的困擾嗎

    因為我最近IP綁網卡位置常被盜用

    感激不盡唷 :)

    回覆刪除
  4. 如果你有查MAC ADDRESS的需求的話,你可以參考http://www.unixwiz.net/tools/nbtscan.html

    他能夠幫你掃出跟你同一網段內的電腦資訊。

    不過:「因為我最近IP綁網卡位置常被盜用」<----如果是因為你的ip被盜用...

    基本上對方也已經把mac address改成了你的吧!就算你查到對方的MAC,你可能還是得透過別的方式去追查對方是誰(HOSTNAME?還是上層網管有相關設備...),我猜測這通常會發生在學術網路居多吧!^^"

    希望對你有所幫助。

    回覆刪除