Networking
在 IPv4 子網中 - a /23 - 我們如何知道要使用哪個範圍?
假設我不知道我的 IP 範圍或預設網關,但我知道我的 IP 地址是 192.168.5.38 並且我的 CIDR 範圍是 /23。
我怎麼知道我的 IP 範圍是多少?
是我的範圍
192.168.4.0-192.168.5.255
或者
192.168.5.0-192.168.6.255
如果我們知道預設網關,我們只能解決這個問題嗎?
請注意,我不是在問什麼工具可以提供這些資訊,這是一個思考練習。我試圖了解您在遇到這種情況時如何知道範圍。
謝謝!
回答:
感謝下方的@g_bor - 他們幫助我了解了您如何計算範圍。您可以通過對 IP 地址和子網遮罩的二進制輸出進行與運算來實現。
IP地址:192.168.5.38
二進制
11000000.10101000.00000101.00100110
子網遮罩:/23 (255.255.254.0)
二進制:
11000000.10101000.00000100.00000000
如果我們將它們與在一起 (1 AND 1 = 1, 0 AND 0 = 0, 1 AND 0 = 0) 我們得到
11000000.10101000.00000100.00000000
這是IP範圍:
192.168.4.0
192.168.5.38 為二進制:11000000.10101000.00000101.00100110。網路遮罩為:11111111.11111111.11111110.00000000。(以 23 1-s 開頭)該地址的網路部分是:11000000.10101000.00000100.00000000。這是:192.168.4.0,範圍內的第一個地址。最後一個是:192.168.5.255,因為我們必須將所有位置設置為 1,其中網路遮罩為 0-s。所以範圍是:192.168.4.0-192.168.5.255。
您甚至不需要預設網關,後一個範圍無效,就這麼簡單。有效的 /23 是 192.168.0.0/23、192.168.2.0/23、192.168.4.0/23、192.168.6.0/23 等。