iT邦幫忙

0

一個關於網段的問題

  • 分享至 

  • xImage

請問各位前輩
在一本書中提到以下範例:
https://ithelp.ithome.com.tw/upload/images/20230913/20135929csGGo3im0F.jpg

他的答案提到伺服器B 192.168.26.3 的機器 pin 伺服器A 192.168.26.129 是通的?
https://ithelp.ithome.com.tw/upload/images/20230912/20135929ZMXhyXWAn9.jpg
但是 這兩個IP 不在同一個網段,卻可以通?
書中提到的原因是 透過 GateWay : 192.168.26.2
但是我透過 Cisco Packet Tracker 做出來卻無法通?
https://ithelp.ithome.com.tw/upload/images/20230912/20135929LKKgu5RwqX.jpg
不知道是哪邊的問題?

原始完整題目位置:(5頁)
https://jasonlinlinlin.blogspot.com/2023/09/blog-post.html


2023.09.13 更新:
依照 raytracy 大大 提到增加一台 Router 如下:
https://ithelp.ithome.com.tw/upload/images/20230913/20135929qu6GeAGfvt.jpg

從PC1 (192.168.26.3) pin router(192.168.26.2) 可以通,但是 pin PC0(192.168.26.129) 卻不通,不知道是否Cisco Packet Tracker 哪邊設定有問題?
https://ithelp.ithome.com.tw/upload/images/20230913/20135929SmYOpEtNC9.jpg

將封包流程整理一下,文中提到閘道器,應該就是對應到有一個 Router (路由器),不是普通的Switch (交換器)。3號封包是個關鍵! 閘道器 跟 A 是同個網段,但是跟 B 不是同個網段

https://ithelp.ithome.com.tw/upload/images/20230913/20135929CMKOWa93O1.jpg

看更多先前的討論...收起先前的討論...
PIZZ iT邦新手 3 級 ‧ 2023-09-12 15:00:43 檢舉
.
jasonr iT邦新手 3 級 ‧ 2023-09-12 15:21:42 檢舉
請問 2960 那台Switch 可以不設定IP嗎?
如果要,要如何設定?
PIZZ iT邦新手 3 級 ‧ 2023-09-12 15:52:21 檢舉
.
froce iT邦大師 1 級 ‧ 2023-09-12 15:57:33 檢舉
A: 192.168.26.129, B:192.168.26.3
2960那個位置一定要是L3以上的,而且ip要設定成跟B同網段,要不然他沒辦法判定。

由B發出的ping,一開始發現A跟他不同網段,那就會讓B直接去找gateway,你2960連IP都沒有,B發出的ping找不到gateway,怎麼透過ARP去找到A的MAC address?

就像你要問路,第一時間想要去問轄區(同網段)警察(gateway),但你連警察局(IP)你都找不到,你要去哪問?
樓主做錯了方法,兩台伺服器中間只有路由器沒有交換器,正確就是這樣,跨網段必須使用路由器而不是交換器,把那台 2960 換成路由器在試試,這是很基本的NA問題,不該搞不懂,建議把網路概論的路由協議念過一次,大概會明白為什麼會這樣,CISCO的題目這只是初階,都是考基本觀念而已,環境不會有太多的網路設備,如果用交換器,兩邊要能通,考的就是實作題了,那就是在考怎麼切 VLAN
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
8
Ray
iT邦大神 1 級 ‧ 2023-09-12 15:40:38
最佳解答

樓主隱約知道關鍵是在 Gateway (.2), 但請問: 實作圖中的 .2 Router 設備畫在哪裡?
你實作了 Layer 2, 卻沒有實作 Layer 3, 少畫了一個設備, 當然不會如題目般運行.

考題裡面常常有這樣隱含存在的設備, 如果題目中沒有提到任何關於此設備的設定或現象, 解題技巧是: 你必須先假設這個(沒有提到的)設備是可以正常運作的.

如果我們把整個 ping 封包的傳輸過程, 改用文字來敘述, 他就會變成這樣:

當 192.168.26.3 對 .129 發出 ICMP Echo Request 封包時:

  1. .3 的 IP Stack 看到 Destination 是 .129
  2. .3 的 IP Stack 拿自己的 Netmask 來運算, 發現 .129 不是同一個網段
  3. .3 的 IP Stack 將封包轉送到 Gateway (.2) 去 (依據 RFC 標準執行跨網段傳輸)

接下來換 Gateway (.2), 雖然題目中沒有提到, 但我們應假設他是正常運作:

  1. Gateway 收到由 .3 送來要給 .129 的 ICMP Echo Request
  2. Gateway 的 IP Stack 拿他自己的 Netmask 來運作, 發現 .129 跟他自己同一個網段
  3. Gateway 把封包傳送給 .129 (依據 RFC 標準執行同網段傳輸)

然後輪到 .129 出場:

  1. .129 收到來自 .2 的 ICMP Echo Request 封包, 且標頭紀錄 Source IP 是 .3
  2. .129 的 ICMP Protocol 打算回應他 Echo Reply, 所以發了一個封包給 .3
  3. .129 的 IP Stack 拿自己的 Netmask 來運算, 發現 .3 是同網段
  4. 所以 .129 直接把 Echo Reply 封包丟給 .3 (依據 RFC 標準執行同網段傳輸)

最後回到 .3 手上:

  1. .3 收到來自 .129 的 ICMP Echo Reply, 於是回應給上層, 計算出 Latency time 和 TTL

以上過程, 完全符合題目後面 ping 出來的結果.
而且每一句文字判斷, 都符合 IETF RFC 的標準.
Wireshark 擷取的 Packet 也可驗證以上過程...

所謂的: 同網段/不同網段, 並不是只看整個系統, 而是要在每個網路節點個別運算.

你犯的錯誤有:

  1. 沒有在各節點分別運算它們自己的 Subnet
  2. 忽略了 .2 Gateway 應該有的正常路由傳輸

此外, 這個題目雖然會通, 但她會形成 Asymmetric Route, 也就是去/回的路徑 (Route) 不同, 某些廠牌的防火牆 (如果被拿來當成 Gateway 的話) 會阻擋這類封包 (當然也可以被手動設定為: 例外允許), 這在現場查修情境中經常會遇到, 所以考這題是有它特別的意義(因為實務上常遇到).

同時某些 Router/Gateway 發現有此現象, 也會發出 IP Redirect 訊息給 .3 要求他修正, 有的 Router 甚至會在第一次轉發之後, 第二次就拒絕轉發, 此時你會發現: 只收到一個 ICMP Echo Reply, 後面的通通都是 Timeout.

看更多先前的回應...收起先前的回應...
froce iT邦大師 1 級 ‧ 2023-09-12 15:59:24 檢舉

真正的神級解答。學到很多。

jasonr iT邦新手 3 級 ‧ 2023-09-12 16:14:37 檢舉

謝謝前輩的回覆,訊息量很大~我需要消化一下,再把圖畫出來。

追蹤雷神都能學到很多

canchang iT邦新手 3 級 ‧ 2023-09-12 16:38:24 檢舉

大神解說真詳細,另外想請問大神:

  1. .129 的 IP Stack 拿自己的 Netmask 來運算, 發現 .3 是同網段
  2. 所以 .129 直接把 Echo Replay 封包丟給 .3 (依據 RFC 標準執行同網段傳輸)

這樣封包可以丟回到 .3 嗎?不是認為同網段了,所以應該不會往 .2 的 Gateway 丟吧?還是因為是回應的關係,知道封包是從 .2 轉來的,所以還是會往 .2 丟?

謝謝!

Ray iT邦大神 1 級 ‧ 2023-09-12 16:40:37 檢舉

可以直接丟給.3喔; 他並不會因為封包是由 .2 轉來的, 就被約束成:忽略 Netmask, 只能回給 .2 (如果有哪個 RFC 這樣寫, 還請告知編號); 所有封包在發送之前, 都要經過 Netmask 運算, 只要運算出來發現是同網段, 他就直接走 Layer 2 發送給 .3, 不會經過 Layer 3 的路由處理. (所以在此例中, 雖然 Echo request 是被 .2 轉送過來, 但回 Echo reply 並不會經過 .2)

IP 的接收與發送是兩個各自獨立的處理程序, 所以發送時並不會 受到過去接收資訊的影響, 他仍然會有自己的獨立判斷. 每一個封包的每一次發送, 都要重新算一次 Netmask 結果, 來決定這個封包該往哪裡丟?

canchang iT邦新手 3 級 ‧ 2023-09-12 16:59:42 檢舉

您的意思是,如果中間的是 Switch ,那麼在 .3 丟給 .129 時,用的是 Layer 3 功能,但是在 .129 丟回給 .3 時,用的是 Layer 2 功能,我還真只單純的想成了只有 Router 的功能。

如果中間是 Router ,那 .129 的封包是不是就無法丟回給 .3 了?

Ray iT邦大神 1 級 ‧ 2023-09-12 17:17:40 檢舉

如果中間的是 Switch ,那麼在 .3 丟給 .129 時,用的是 Layer 3 功能,但是在 .129 丟回給 .3 時,用的是 Layer 2 功能

事實上, 樓主的圖改畫成這樣, 一切就都正確:
https://ithelp.ithome.com.tw/upload/images/20230912/20026603Dn7n7WJnr0.png

我不知道在這張圖上, .2 算不算放在中間?

canchang iT邦新手 3 級 ‧ 2023-09-12 17:58:39 檢舉

看到這張圖,回憶就回來了,好久好久以前,還是資淺菜鳥工程師的時候,公司的環境好像就是這樣設計的,那個時候 Switch 剛出來,還是 Hub 的天下,更沒有什麼 Layer 幾的 Switch。

如果是這種架構,.3 跟 .129 溝通就應該不會有問題。

應該算在中間吧。

froce iT邦大師 1 級 ‧ 2023-09-13 08:37:31 檢舉

.3 跟 .129 溝通就應該不會有問題。

.3發起的溝通不會有問題,但.129發起的全新溝通會找不到.3。

jasonr iT邦新手 3 級 ‧ 2023-09-13 09:19:42 檢舉

請教大大:如2023.09.13 更新,增加一台 Router,但是從PC1 (192.168.26.3) pin router(192.168.26.2) 可以通,但是 pin PC0(192.168.26.129) 卻不通,不知道是否Cisco Packet Tracker 哪邊設定有問題?

Ray iT邦大神 1 級 ‧ 2023-09-13 09:42:37 檢舉

(刪....剛回的資訊不正確, 太多題目我回到自己亂了; 重新整理後再回...)

Ray iT邦大神 1 級 ‧ 2023-09-13 12:38:10 檢舉

但是 pin PC0(192.168.26.129) 卻不通,不知道是否Cisco Packet Tracker 哪邊設定有問題?

我不確定這是甚麼原因, 因為我並不瞭解模擬器裡面, 他對於非對稱路由的處理原則是甚麼? 有可能在模擬器內部就已經預設將它阻擋掉了.

您可能要先去找一個, 可以在模擬器裡面跑非對稱路由的案例來測看看....

此外, 非對稱路由需要用到 ICMP Redirect 功能, 但很多現代的設備(或者 OS), 出廠預設就是關閉 ICMP Redirect, 這樣自然就不會通.

ICMP Redirect 的資安弱點是在 1999 年被發現的, 在那之後才問世的設備或軟體, 都有可能出廠預設關閉 ICMP Redriect, 導致非對稱路由不通 (CVE-1999-1563
CVE-1999-0265)

除非像 Cisco 的 FWSM 3.x 和 ASA 7.x 那樣, 有特別提到可以支援非對稱路由; 其他採用 Stateful 技術的防火牆, 大多預設不允許非對稱路由:
https://www.cisco.com/web/services/news/ts_newsletter/tech/chalktalk/archives/200903.html

jasonr iT邦新手 3 級 ‧ 2023-09-13 14:12:15 檢舉

請教大大:
文中提到 Router 的 ICMP Redirect 功能,是否是對應上圖3號封包的動作?
B發出 ping 封包,指定目的IP為A(192.168.26.129),
但是目的 MAC卻是閘道器MAC,這顯示B希望閘道器把封包轉給A

另外: 1號封包 中 B 應該 跟閘道器不同網段,正常閘道器是否應該收不到 B 的廣播?

難道只是因為 B 的閘道器設為 Router 的IP ?

Ray iT邦大神 1 級 ‧ 2023-09-13 14:57:42 檢舉

是的, 對一半. 那個圖畫的單純就是 Router 功能(這個對), 但他還沒有用到 ICMP Redirect. 每一個 Router 收到這樣的封包都會幫她轉送.

Gateway=Router=Gateway=Router...(這兩個名詞通常指同一件事情)

另外: 1號封包 中 B 應該 跟閘道器不同網段,正常閘道器是否應該收不到 B 的廣播?

上面這個推論不正確, 你再一次犯了前面講的錯誤:
試圖以一個系統性統一的 Netmask 去解算所有 Node 的網段異同.

網段的解算判定, 只有在封包要發送的時候才會做; 當 Node 接收封包的時候, 不會做這些解算判定的動作, 也就是: 接收端是不管 Netmask 的, 有封包進來他就會收.

然後永遠要記得:
每個 Node 的網段都是自己計算的, 跟別人無關.

所以別人把 Netmask 設成 255.255.255.224,跟我的 Netmask 設成: 255.255.255.0, 這件事, 跟我要不要接收封包有沒有關係? 完全無關. 只要他能透過任何辦法, 把封包送到我的網卡, 我就會收, 因為我是接收端, 不會去計算網段.

前提是: 他要有辦法把封包送到我手上. (發送端才需要計算有沒有同網段?)
(以上所談的接收端, 都是指 Layer 3 以下的 IP 封包或信號; Layer 4 以上要另外考慮其他 Protocol 的規範)

加考一題觀念:
同樣用你的圖, 如果多加一台 .4, 且 .4 的 Netmask 也設定成 2552.555.224, 然後從 .3 去 ping .4 (同網段, 封包不會走 Gateway), 請問: 此時在 .129 開啟 Wireshark, 能不能聽到 .3 和 .4 之間傳送的 ICMP 封包?

jasonr iT邦新手 3 級 ‧ 2023-09-13 15:17:13 檢舉

收到~謝謝
另外我沒注意到其實 A (192.168.26.3) 跟 閘道器(Router) (192.168.26.2) 其實是同一個網段,所以pin 的到,當我把閘道器(Router)的IP改為 (192.168.26.200)時, A 其實就 Ping 不到了(不同網段)。
這樣的狀況有意思,此題目 閘道器(Router) 跟 A 及 B 都是同網段,但是 A 與 B 卻互相不是同網段!

jasonr iT邦新手 3 級 ‧ 2023-09-13 16:21:52 檢舉

謝謝raytracy大大的回覆:
此題是否可以簡化為 B pin A 應該不通,除非 Router 開啟ICMP Redirect。

恭喜樓主jasonr,終於看懂題目了

jasonr iT邦新手 3 級 ‧ 2023-09-13 17:47:00 檢舉

哈~有時候看懂題目比做題目還難~~/images/emoticon/emoticon16.gif

0
咖咖拉
iT邦好手 1 級 ‧ 2023-09-12 14:07:56

子網遮罩:255.255.255.224
這個子網遮罩對應二進位:1111111.11111111.11111111.11100000
此子網遮罩表示其子網範圍為 192.168.26.0 到 192.168.26.31

他的答案提到 192.168.26.3 的機器 pin 192.168.26.129 是通的?<--這句有問題
或還有其他條件

望空 iT邦新手 3 級 ‧ 2023-09-12 14:32:20 檢舉

除非有做路由

jasonr iT邦新手 3 級 ‧ 2023-09-12 15:20:23 檢舉

我將原始完整題目放在以下網址
https://jasonlinlinlin.blogspot.com/2023/09/blog-post.html

0
canchang
iT邦新手 3 級 ‧ 2023-09-12 14:47:16

資深菜鳥工程師的不負責任發言。

就我所知,不同網段要溝通,好像只能透過 Router ,然後一般的 Gateway 也都是指向 Router。

所以兩台電腦要能溝通,中間應該要有個 Router ,或者是 Layer 3 Switch ,2960 那顆 Switch 除非有 Layer 3 能力,不然應該不會通。

說對了,當複習,說錯了,當學習。(千萬不要被大神看到)

看更多先前的回應...收起先前的回應...
jasonr iT邦新手 3 級 ‧ 2023-09-12 15:22:38 檢舉

我將原始完整題目放在以下網址
https://jasonlinlinlin.blogspot.com/2023/09/blog-post.html
題目看起來感覺不像是 Router?

obarisk iT邦研究生 2 級 ‧ 2023-09-13 08:47:42 檢舉

不用 router 也能通啦

jasonr iT邦新手 3 級 ‧ 2023-09-13 09:20:58 檢舉

請問 obarisk 大大,不用 router 的話,有可能是哪裡的問題?

望空 iT邦新手 3 級 ‧ 2023-09-13 10:53:30 檢舉

問題點在Gateway,router非必備沒錯,但是至少要有人能夠幫你"轉送"

jasonr iT邦新手 3 級 ‧ 2023-09-13 14:10:06 檢舉

了解~關鍵字 " 閘道器" 對應到 gateway!

0
望空
iT邦新手 3 級 ‧ 2023-09-12 15:02:06

我看懂樓主的測試與題目差異在哪 : Gateway
192.168.26.2對第一台電腦來說同網段,對第二台電腦來說也是同網段,
所以基本上這個案例要模擬,你會需要一台Router或是一台L3交換器進行routing
書本敘述"基本沒錯",但是就是少了對Gateway敘述。

看更多先前的回應...收起先前的回應...
jasonr iT邦新手 3 級 ‧ 2023-09-12 15:23:22 檢舉

我將原始完整題目放在以下網址
https://jasonlinlinlin.blogspot.com/2023/09/blog-post.html
題目看起來感覺不像是有 Router?

froce iT邦大師 1 級 ‧ 2023-09-12 16:01:14 檢舉

Gateway一般是指2個網段連接的機器,L3以上都可以,應該是不用特別做敘述。

最好閘道器不等於路由器,看題目看一半,我也真是醉了
這種題目要不考路由器配置,要不考怎麼切VLAN,一個是觀念一個是實作,有差異的

望空 iT邦新手 3 級 ‧ 2023-09-13 11:14:17 檢舉

給發大一瓶啤酒~(欸不是
我就想說,題目的圖片裡面有提到gateway,為啥樓主的模擬圖沒有設定到gateway或router或L3...

jasonr iT邦新手 3 級 ‧ 2023-09-13 14:09:06 檢舉

了解~關鍵字 " 閘道器" 對應到 gateway!

我要發表回答

立即登入回答