看板 Network 關於我們 聯絡資訊
各位板友大家好,小弟這學期有修了一門 112 的課叫 網路攻防實習, 因為自己對網路架構其實沒到很熟,期望修這門課能對網路運作原理了解得更深入, 因此往後可能常常會在板上出沒,請各位大大多多包涵,請鞭小力穴穴~~ --------------------------------------------------------------------------- 問題是這樣的,我不太懂為什麼主機發現 destination address 在自己的子網域之後, 就只會 broadcast 給子網域內的所有人,然後等待正確的主機回應。 如果是那種傳統沒有路由功能的集線器 (hub),那當然只能這麼做,只不過現在的 router 勢必是有路由功能的,既然如此為什麼不也是先傳送到 router (default gw), 然後再交由 router 決定新的方向呢?是因為先傳送給 router 的過程中本身也需要 broadcast 給所屬子網路進而導致其他主機有可能先收到嗎?如果連線方式是星狀拓樸, 也就是 router 放中間,那麼就不會發生我說的 "其他主機先收到的情況了" 吧? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.168.84.188 ※ 文章網址: https://www.ptt.cc/bbs/Network/M.1537685227.A.BF7.html
s958256: 換個方向想,router為何要去處理同個子網內的IP尋址? 09/23 14:57
Wishmaster: 因為這是ethernet XDDDD 09/23 15:07
alan23273850: 因為我一直想到星狀拓樸,所有的封包都會優先通過 09/23 15:09
alan23273850: router,這是我的盲點所在,除非 router 同樣會廣播 09/23 15:10
alan23273850: 給同一個 subnet 的其他人 09/23 15:10
會有這個疑問是因為,我在 linux 上直接 delete 掉 default gateway,網內虛擬電腦 互傳還是會 work,就還蠻神奇的 XDXD ※ 編輯: alan23273850 (140.112.73.213), 09/23/2018 15:11:51
asdfghjklasd: 先搞清楚 L2 L3 運作原理 09/24 00:18
我現在有點理解,不過不太確定,就是說其實不管要傳到哪裡都是 broadcast,差別在於 如果 dest 是在 subnet 裡面的話 IP 符合的 host 會自動接收,如果 dest 是在外面的 話由於 subnet 裡面的 host IP 都不符合,收了也沒用,只好由 gateway 接收處理。 所以應該把 gateway 當成 subnet 裡面的其中一個 host,差別只在於交由誰處理而已。 ※ 編輯: alan23273850 (1.168.91.107), 09/24/2018 13:53:35
asdfghjklasd: 你先搞懂 OSI 七層跟 TCP/IP 4層吧 09/24 15:04
deadwood: 多看點書弄懂L2、L3基本運作吧,基本理解就錯誤了 09/24 15:09
venroxas: L2才會有這種行為 09/25 22:50
b325019: 不管是同網段還是跨網段你都會看到廣播,那個叫做arp 09/27 12:07
感謝各位大大耐心回覆,我後來看完 https://www.youtube.com/watch?v=Mj55o6_YmgM
這部片之後終於懂了,原來我一直把 router 和 switch 弄混,也終於知道 arp 重要性, 只是說如果要根據 MAC address 就直接送到正確的 host 的話還是要靠 switch 路由, 如果把 switch 換成 hub 的話應該就不行了吧。 ※ 編輯: alan23273850 (140.112.175.74), 09/27/2018 16:48:47
birdy590: 一樣可以啊, hub 是每個節點都會收到一樣的東西 01/12 17:08
birdy590: 建議先搞懂 Layer 2 怎麼運作, 然後再去看 Layer 3 如何 01/12 17:09
birdy590: 配合這些特性工作 01/12 17:09