如何判斷兩個IP地址是否在同一個網段?什么是子網掩碼?

2021-02-26    分類: 網站建設

對于ip地址我們前面通過多次文章,大家都有一定的理解,有部分朋友還是對子網掩碼、ip地址的網段有些疑問,那么今天創(chuàng)新互聯一起來解下這方面的內容。

一、什么是子網掩碼?

在了解ip地址的網段之前,我們先來了解子網掩碼,很多對網絡了解不深的朋友都對子網掩碼有些迷惑, 不了解它是用來干什么的?

子網掩碼不能單獨存在,它必須結合IP地址一起使用。子網掩碼只有一個作用,就是將某個IP地址劃分成網絡地址和

在實際項目中,我們通常會遇到這樣的ip地址。

ip地址:192.168.1.1 子網掩碼:255.255.255.0

ip地址:192.168.1.2 子網掩碼:255.255.255.0

我們可以直接的判斷,他們是同屬于一個網段的ip地址。

那么對于下面這樣的呢?

ip地址:192.168.1.1 子網掩碼:255.255.255.0

ip地址:192.168.1.2 子網掩碼:255.255.0.0

這兩個ip地址雖然在不看掩碼的情況下,比較像,但他們并不是同一個網段內的。

這個可以從子網掩碼來判斷,

192.168.1.1 255.255.255.0是屬于192.168.1.0網段的。

而192.168.1.2 255.255.0.0是屬于192.168.0.0網段。

二、如何根據掩碼來確定ip地址網段

上面我們已經舉例了解了子網掩碼的作用,接下來我們再來了解如何確定子網掩碼和判斷ip地址的網段。

通常我們在劃分vlan的時候會使用以下例子:

例1:

創(chuàng)建vlan1:ip地址:192.168.1.1 子網掩碼:255.255.255.0

創(chuàng)建vlan2: ip地址:192.168.2.1 子網掩碼:255.255.255.0

那么他們是不是在同一個網段呢?平時配置ip地址較多的朋友,可以直觀的判斷,他們并不是屬于同一個網段,那么如何計算呢?要想判斷兩個ip地址是不是在同一個網段,只需將ip地址與子網掩碼做與運算,如果得出的結果一樣,則這兩個ip地址是同一個子網當中。

詳細計算

將ip地址192.168.1.1轉換為二進制

11000000 10101000 00000001 00000001

將子網掩碼255.255.255.0轉換成二進制

11111111.11111111.11111111.00000000

然后將兩者相“與(and)"運算:

11000000 10101000 00000001 00000001

11111111.11111111.11111111.00000000

然后得到:

11000000 10101000 00000001 00000000

轉換成網絡號就是:192.168.1.0

將ip地址192.168.2.1轉換為二進制

11000000 10101000 00000010 00000001

將子網掩碼255.255.255.0轉換成二進制

11111111.11111111.11111111.00000000

然后將兩者相“與(and)"運算:

11000000 10101000 00000010 00000001

11111111.11111111.11111111.00000000

然后得到:

11000000 10101000 00000010 00000000

轉換成網絡號就是:192.168.2.0

很明顯,二者的結果是不一樣的,一個是網段192.168.1.0,一個是網段192.168.2.0,所以不是一個網段。

例2

ip地址1:192.168.1.1 子網掩碼:255.255.252.0

ip地址2:192.168.2.1 子網掩碼:255.255.252.0

很明顯,我們這個和上面例1的ip地址是一樣的,只是子網掩碼不一樣,如果不看子網掩碼,首先可能就判斷他們不是同一個網段。

這里面和上面例1中唯一變化就是子網掩碼從255.255.255.0換成了255.255.252.0了,那我們來看下,他們是否屬于同一個網段。

詳細計算

將ip地址192.168.1.1轉換為二進制

11000000 10101000 00000001 00000001

將子網掩碼255.255.252.0轉換成二進制

11111111.11111111.11111100.00000000

然后將兩者相“與(and)"運算:

11000000 10101000 00000001 00000001

11111111.11111111.11111100.00000000

然后得到:

11000000 10101000 00000000 00000000

轉換成網絡號就是:192.168.0.0

將ip地址192.168.2.1轉換為二進制

11000000 10101000 00000010 00000001

將子網掩碼255.255.252.0轉換成二進制

11111111.11111111.11111100.00000000

然后將兩者相“與(and)"運算:

11000000 10101000 00000010 00000001

11111111.11111111.11111100.00000000

然后得到:

11000000 10101000 00000000 00000000

轉換成網絡號就是:192.168.0.0

很明顯,二者的結果是一樣的,都是屬于192.168.0.0網段,所以他們是同屬于一個網段。

當然,如果對子網較熟了就不需要經過這些運算了,大部分的網段可以通過分析子網掩碼與ip地址就可以判斷出來是否屬于網一網段,但前提是你需要熟悉網段的原理與運算的方法。

三、如何根據ip地址子網掩碼

確定ip地址子網掩碼

大部分的情況下,我們網絡中只要不超過254臺主機的的話,子網掩碼都可以設置成255.255.255.0。那么超過了254臺主機的話怎么辦呢?

可以劃分vlan,也可以設置成一個大網段,劃分vlan我們就不說了,上面有例子,設置成一個大網段就有一個難點,如何確定這個大網段里面的子網掩碼呢?

例如

假設監(jiān)控網絡中有600個點位,我們現在也不想把它劃分vlan(實際項目中大部分是會劃分vlan的),假設只想用一個大網段把這600個點位分配ip地址,如何設置ip地址,如何確定子網掩碼?

分析:首先我們知道600個點位,可以使用3個254個ip地址段來分配。

可以使用

ip段一:192.168.0.1——192.168.0.254

ip段二:192.168.1.1——192.168.1.254

ip段三:192.168.2.1——192.168.2.254

每個網段有254個ip地址,完全夠600個點位用的。

那么問題來了,如果要使這三個ip段在同一個網段內,那么這個大網段共同的子網掩碼是多少呢?

我們來分析下:

將ip地址192.168.0.1轉換為二進制

11000000 10101000 00000000 00000001

將ip地址192.168.1.1轉換為二進制

11000000 10101000 00000001 00000001

將ip地址192.168.2.1轉換為二進制

11000000 10101000 00000010 00000001

轉換成了二進制,可以看得出,三個ip段的二進制前面22位的是不變的,那么可以將他們表示成:

ip段一:192.168.0.1/22

ip段二:192.168.1.1/22

ip段三:192.168.2.1/22

這種192.168.1.x/22形式的ip地址相信大家平時都見過,就是已經告訴了子網掩碼了。

也就是說他們共同的子網掩碼二進制前面22個都是1。

11111111 11111111 11111100 00000000

轉換成十進制,那就是255.255.252.0,所以他們共同的子網掩碼就是255.255.252.0。

當然在實際項目中,與網絡接觸較多的弱電人不需要通過一系列的換算,直接可以通過簡單的判斷估算出來這個大網段的子網掩碼,因此,今天弱電君是講原理,方便大家理解,所以所有的換算都是通過運算出來的。

文章標題:如何判斷兩個IP地址是否在同一個網段?什么是子網掩碼?
轉載來于:http://www.muchs.cn/news4/103154.html

成都網站建設公司_創(chuàng)新互聯,為您提供微信小程序網站維護、網站營銷、動態(tài)網站、做網站、定制網站

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

h5響應式網站建設