Re: [問題] 請問一下亂設IP和mask
※ 引述《willhunting (這些年來)》之銘言:
: 在自己家裡上網,亂設IP和Mask,應該就不能上網了。
: 可是為什麼不行呢?就我從書上讀到的,假如外面網路
IP不能亂設的主要原因在路由(routing)
你隨便設一個IP, 也許還是可以把資料傳到目的端, (在送沒有問題)
但目的端無法依你的來原把資料回傳..
就像你寫一封信到美國, 但你來源寫非洲..
這封信可以順利到美國, 但回信卻會寄到非洲, 所以你收不到回應..
所以網路攻擊就可以透過偽造IP來達到破壞效果, 但難以反查~
mask(subnet mask)和ip運算可以得到 network address與host address,
是用來辨識該ip在哪個網路, 還有用來路由的
mask亂設則無法正確路由, 因此資料可能會送不出去~
依現在 IP 的設計, 如果對方(dest)在同個network,
那表示可以直接傳送資料給對方~ 否則會依路由表轉送出去~
比如說現在有台電腦, 接在同一個LAN上, 所以他們可以直接通訊資料,
假如電腦A 10.1.1.1/255.255.255.0
另電腦B 10.1.1.2/ 255.255.0.0
當A要傳資料給B, 他用 mask 去計算發現兩台都在 10.1.1.0 這個網路,
所以 A 就直接把資料傳給B (這部份正常運作)
當B收到資料要回覆A時, 經過B的mask計算, 會認為A/B不同網路,
所以B就會依路由表, 把資料傳到gateway讓他決定要怎麼送..
其實網路沒有特別設計的話gateway收到是不會從原port傳回來的,
所以B就無法正確傳送資料到 A
特別設決routing的部份的話也是可以傳到A, 只是會很迂迴..||
: 有某台機器S想要跟某個ip通訊,它在它的ARP裡找不到
: 這個ip對應的MAC,所以丟出廣播訊息,我把我的IP設成
要不要要ARP問位址, 這要看是不是同一個網路,
ARP是用在layer2的直接對傳的部份,
像你要跟google通訊, 你的電腦不會去問google的arp,
而是去問你家網路的gateway的arp, 然後把資料傳給gateway,
gateway再去處理怎麼傳給google..
: S在找的ip會變成怎樣呢?請各位高手麻煩給我一點指教,
: 謝謝!!
這問題要分幾個部份討論..
如果你設的IP根本就不合外面路由的話..
比如說你把你的IP設成美國的google..
那對google(還有其他人)基本上沒什麼影響
只是你自己資料傳的出去但是回不來..
別人資料會回到google去..就這樣..
如果是另一種情況, 你的IP又沒有和別人重覆(duplicated)
那當然可以正常運作, 等於你是偽裝成別人, 也不會有人出來抗議..
(除非網管刻意去鎖mac/ip/port等等..)
如果有人跟你IP一樣, 那就是IP Duplicated的問題了 ..
這又要分成對本地端、受害者和遠端的影響
RFC也沒有規定重覆要幹嘛, 所以這是看OS要怎麼處理,
如果收到一個 ARP-response, IP是自己但mac是別人,
那大概論就可以知道 IP 重覆了~
像winxp的作法好像是停該IP, 然後網路就斷了 ..
好像之前的netcut是用這樣在切網路的..
Linux的話, 似乎就不會停用網路..
(之前不小心設錯, 結果Linux沒事, xp斷線 o_O)
對遠端的影響是, 他會收到兩個 ARP-response,
也是依OS自己決定要怎麼處理,
大部份的OS是直接更新自己的arp table,
所以遠端會為認後傳arp-r的人是ip的擁有人,
然後有一個人就會斷線(本地端或受害者)
現在netcut就是用類似的方式在切網路~
(Solaris的話, 好像會設一個更新arp的間隔, 用來避免這種惡意破壞)
大略是這樣, 詳細的東西再翻翻routing和arp的資料應該就會清楚了~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.138.218.29
※ 編輯: cole945 來自: 220.138.218.29 (03/09 20:43)
討論串 (同標題文章)