02.29 怎麼判斷任意兩臺計算機的ip地址屬於同一個網絡?

易安682


針對每一個問答都本著絕不大膽胡說,只管小心求證的態度,瘋評科技來解答您的提問。


要判斷任意兩臺計算機的IP地址是否屬於同一個網絡,我們需要知道的是同一個網絡裡面的計算機的子網掩碼是相同的,那究竟子網掩碼是什麼?又該如何查找計算機的真實IP地址呢?

下面就讓我一一來介紹吧。


什麼是子網掩碼?

  • 子網掩碼的表示方法及其含義

子網掩碼是採取四段點分十進制的表示方法,每一段數字的範圍是0~255,比如有一個子網掩碼是 255.255.255.0 這就是點分十進制表示法,用二進制表示則是11111111.11111111.11111111.00000000,有時我們也可以稱之為為24位掩碼。再舉一個例子,子網掩碼 255.255.240.0,其二進制表示則是11111111.11111111.11110000.00000000,可以簡稱為20位掩碼。

需要注意的是子網掩碼不會單獨出現的,它一定是跟在IP地址的後面才有意義。

  • 子網掩碼的意義

上面講了子網掩碼必須跟在IP地址後面才有意義,他有兩個作用:

①限定IP地址的直連通信範圍,就是在二層網絡環境(設備直接連接或者只經過交換機連接,包括路由器的Lan口)下,每個設備只能與子網掩碼在自己子網掩碼範圍內的設備通信(IP地址前段必須有一部分是相同的)。

舉個例子:A設備的IP地址和子網掩碼是 192.168.31.45 255.255.255.0 同一交換機下的另一個B設備是192.168.31.145 255.255.255.0,因為IP地址前三段是相同的,且子網掩碼覆蓋範圍相同,所以二者可以直接通信。


②進行子網劃分,就是將一個大掩碼的網絡劃分成幾個小掩碼的網絡。

舉個例子,將192.168.31.0 255.255.255.0 劃分成2個子網,則兩個子網分別為192.168.31.0 255.255.255.128,代表一個子網範圍是0~127,192.168.31.128 255.255.255.128,代表另一個子網範圍是128~255.


瞭解了什麼是子網掩碼後,那麼判斷兩個IP地址是否屬於同一個網絡,判定規則就很簡單:IP地址前段相同(指的二進制表示法中從最前面開始有若干連續位是相同的);兩個地址的子網掩碼相同或者能夠相互包含對方的IP地址範圍。

知道了判定規則,後面我們就可以判斷是否屬於同一個網絡了。

如何查找計算機的IP地址和子網掩碼?

私網IP的計算機直接在計算機上查找,有線網卡就在本地連接的屬性裡面點擊狀態,再點擊詳細信息就可以看到,無線網卡就是在無線網絡連接裡面進行同樣操作可以看到IP

地址。當然我們有更簡單的方法用命令行來查找,開始——運行——cmd——ipconfig


通過PPPoE撥號的計算機可以上網來查找,比如在百度搜索裡面直接輸入IP,就可得到自己的IP地址。

有時候上面兩種方法看到的ip地址不同,一般那個內網地址是計算機本來的地址,上網查的是自己出口設備所用到公網IP。


兩臺計算機的IP地址是否屬於同一個網絡?

我們在上面已經講過了判定方法和查找計算機IP的方法了。這裡就直接給出判斷方法。

①兩IP地址前面第一位就不相同,那肯定不在同一個網絡了。比如,1.1.1.1 和2.2.2.2兩個ip地址肯定不在同一個網絡。

②兩個IP地址前段有相同的,後面就看子網掩碼了。比如1.1.1.1 255.0.0.0 和 1.2.2.2 255.0.0.0 因第一位相同,子網掩碼的覆蓋範圍也一致,屬於同一個網絡。舉個反例:1.1.1.1 255.255.0.0 和 1.2.2.2 255.255.0.0則不屬於同一個網絡。

③兩個IP地址的子網掩碼不同的情況,比如,192.168.31.45 255.255.255.128 和192.168.31.55 255.255.255.0 屬於同一個網絡,前者128的掩碼覆蓋最後一位範圍是0~63,後者掩碼覆蓋最後一位範圍是0~255,兩者都在0~63區間內,所以是同一個網絡。再來一個192.168.31.38 255.255.255.248與前面兩個IP地址都不在一個網絡,因為他的子網掩碼覆蓋最後一位範圍是 32~39,前面兩個子網掩碼包含了38,但後面的子網掩碼沒有包含前面的45和55,所以不在一個網絡。



判斷兩個IP地址是否在同一個網絡,只需要IP地址和子網掩碼都拿出來比較即可,就是子網掩碼是否互相包含的問題需要注意,其它情況都比較簡單。


瘋評科技


一零chain解答

其實這個問題也簡單

通過計算得到網絡號,如果相同則在同一網段,不同則不在同一網段。

掩碼和IP的二進制式進行“與”運算,1和1=1 1和0=0 0和0=0。

子網掩碼是用來判斷任意兩臺計算機的IP地址是否屬於同一子網絡的根據。

判斷是否處於同一子網的簡單易懂法:

1、打開網絡鄰居,查看工作組計算機,如果在裡面能看到對方的計算機名稱。那麼兩臺電腦同屬於一個局域網。

2、連接同個交換機或者路由器,而且都能上網,那麼肯定是同個局域網。

3、用局域網查看工具來查,出現的電腦為同個局域網。

如果是在b類網的基礎上,就不用看160.162段了,就看第三段,192轉換成2進制就是11000000,說明第三段的前2位是網絡號;

再看2個ip,將他們的第三段轉換成2進制,分別是00000011和10101100,看他們的前面2位,如果一樣的話就是處於同一個子網,顯然這2個ip前面2位不一樣,所以他們不在同一個子網。

專業知識計算法:

把兩臺電腦的IP地址與子網掩碼轉成二進制,然後相應位進行相與運算,得出的結果相同(結果再轉成10進制更方便判斷),就是屬於同一子網。

相與運算是兩個條件同時為1結果才為1,否則為0(1與1=1,1與0=0,0與0=0)。








一零chain


通過計算得到網絡號,如果相同則在同一網段,不同則不在同一網段。

掩碼和IP的二進制式進行“與”運算,1和1=1 1和0=0 0和0=0。

子網掩碼是用來判斷任意兩臺計算機的IP地址是否屬於同一子網絡的根據。

判斷是否處於同一子網的簡單易懂法:

1、打開網絡鄰居,查看工作組計算機,如果在裡面能看到對方的計算機名稱。那麼兩臺電腦同屬於一個局域網。

2、連接同個交換機或者路由器,而且都能上網,那麼肯定是同個局域網。

3、用局域網查看工具來查,出現的電腦為同個局域網。

如果是在b類網的基礎上,就不用看160.162段了,就看第三段,192轉換成2進制就是11000000,說明第三段的前2位是網絡號;

再看2個ip,將他們的第三段轉換成2進制,分別是00000011和10101100,看他們的前面2位,如果一樣的話就是處於同一個子網,顯然這2個ip前面2位不一樣,所以他們不在同一個子網。

專業知識計算法:

把兩臺電腦的IP地址與子網掩碼轉成二進制,然後相應位進行相與運算,得出的結果相同(結果再轉成10進制更方便判斷),就是屬於同一子網。

相與運算是兩個條件同時為1結果才為1,否則為0(1與1=1,1與0=0,0與0=0)。


窮Sao


判斷兩臺或以上計算機的ip是否屬於同一個網絡有一下幾種方法:

第一種方法:打開電腦按下win+R鍵,輸入cmd點擊確定,輸入ipconfig 敲回車,即可找到IP地址。

第二種方法:ping IP地址,比喻你知道的一臺電腦IP地址是 192.168.66.8,那你就用:ping 192.168.66.8 即可知道。(如下圖)

不難看出192.168.66.8已經通了,代表在同一局域網中。 192.168.66.3不通代表這個IP沒有使用或線路不通。


李叔愛數碼,如您愛家;每天分享數碼/電腦領域乾貨,歡迎你與我交流互動。若你有其他問題,歡迎留言你的觀點。


李叔數碼之家


所有連接到網絡中的計算機都需要一個唯一的IP地址,如果想要直接通訊,那麼兩臺計算機的IP地址需要在同一網段,那麼怎麼判斷是不是同一網段呢?

當然是IP地址的某一部分。他們相同則屬於同一網段,不同則屬於不同的。IP地址用二進制表示有32位,通常是我們用點分十進制的方式來表示一個IP地址的比如常見的192.168.1.1。在默認情況下192.168.1屬於網絡位,最後的.1屬於主機位,如果有另一個主機的網絡位和上面的相同,那麼我們可以說它們處在同一個網段。而判斷網絡位的位置依靠的是子網掩碼。

在二進制的形式下,子網掩碼的表現形式為從左側開始連續為1的形式。上面的網絡位之所以是192.168.1,因為默認情況下它的子網掩碼是255.255.255.0。換算成二進制則是11111111.11111111.11111111.00000000,我們把192.168.1.1也換算成二進制位,和子網掩碼的二進制位作邏輯與的運算1和1得1,0和0得0,1和0得0,最終得出來的結果就是網絡位。

那麼默認子網掩碼在255.255.255.0的情況下,192.168.1.1和192.168.1.5就在同一網段!但如果子網掩碼是255.255.255.252的情況下還在嗎?你可以手動算下,也可以利用網上的子網掩碼計算器!


風來了156


兩臺計算機的ip地址屬於同一個網絡?這問有點不太理解

你問的是這兩臺計算機使用的是不是同一個ISP網絡供應商的意思嗎?

如果是的話,你可以訪問以下地址來查看,相同的就是:

www.ip138.com

在這裡你就可以查到自己的公網IP,如下圖:


還是問:兩臺計算機在不在同一個局域網內?

你可以通過以下方法來查看,如果兩個IP地址的前三個字段是一樣的,那就是相同的:

第一步在我們的電腦上按win+R鍵,打開運行,輸入cmd,點擊確定,進去命令提示符,如下圖所示:

第二步進去命令提示符之後,我們輸入ipconfig,按回車鍵,進行查看電腦的ip地址,如下圖所示:

如:你的IP和對方的IP,這三個字段一樣:192.168.1.···;那你們就是同一個局域網


紀老修


如果你在一個大公司的辦公網絡下,有很多方法判斷你在不在同一個IP下面,最簡單的方法,直接在兩臺電腦運行裡面輸入ipconfig

看他們顯示的IP段是不是在同一個網段,如果是在同一個網段,那肯定是在同一個IP上面,比如都是192.168.1.……,如果不是一個網段,那可能有可能是在兩個路由器或者多個路由器下面,比如一臺192.168.1.12而另一臺192.198.3.23。那這明顯就不在一個IP下面


WUTANGHUANG


你好,很高心可以回答你的問題。

希望可以對你有所幫助!

子網掩碼是用來判斷任意兩臺計算機的IP地址是否屬於同一子網絡的根據。

最為簡單的理解就是兩臺計算機各自的IP地址與子網掩碼進行AND運算後,如果得出的結果是相同的,則說明這兩臺計算機是處於同一個子網絡上的,可以進行直接的通訊。就這麼簡單。

請看以下示例:

運算演示之一:

IP地址:192.168.0.1

子網掩碼:255.255.255.0

AND運算

轉化為二進制進行運算:

IP地址:11010000.10101000.00000000.00000001

子網掩碼:11111111.11111111.11111111.00000000

AND運算:11010000.10101000.00000000.00000000

轉化為十進制後為: 192.168.0.0

運算演示之二:

IP地址:192.168.0.254

子網掩碼:255.255.255.0

AND運算

轉化為二進制進行運算:

IP地址:11010000.10101000.00000000.11111110

子網掩碼:11111111.11111111.11111111.00000000

AND運算:11010000.10101000.00000000.00000000

轉化為十進制後為:192.168.0.0

通過以上對兩臺計算機IP地址與子網掩碼的AND運算後,我們可以看到它運算結果是一樣的。均為192.168.0.0,所以這二臺計算機可視為是同一子網絡。

接口說明

原型:

int IsSameSubNetwork(char * pcIp1, char * pcIp2, char * pcSubNetworkMask);

輸入參數:

char * pcIP1: 計算機1的IP地址,格式:“192.168.0.254”

char * pcIP2: 計算機2的IP地址,格式:“192.168.0.1”

char * pcSubNetworkMask: 子網掩碼,格式:“255.255.255.0”

返回值:

0:IP1與IP2不屬於同一子網絡。

1:IP1與IP2屬於同一子網絡。

代碼:

#include "OJ.h"

#include<iostream>

using namespace std;

/*

功能: 判斷兩臺計算機IP地址是同一子網絡。

原型:

int IsSameSubNetwork(char * pcIp1, char * pcIp2, char * pcSubNetworkMask);

輸入參數:

char * pcIP1: 計算機1的IP地址,格式:“192.168.0.254”;

char * pcIP2: 計算機2的IP地址,格式:“192.168.0.1”;

char * pcSubNetworkMask: 子網掩碼,格式:“255.255.255.0”;

返回值:

0:IP1與IP2不屬於同一子網絡;

1:IP1與IP2屬於同一子網絡;

*/

int IsSameSubNetwork(char * pcIp1, char * pcIp2, char * pcSubNetworkMask)

{

/*在這裡實現功能*/

if(!pcIp1||!pcIp2||!pcSubNetworkMask)

return 0;

int ip1[4]={0};

int ip2[4]={0};

int ip3[4]={0};

sscanf_s(pcIp1,"%d.%d.%d.%d\

小玖說科技


我覺得你應該說的是查看計算機網絡是不是處於同一網段吧。

以win7為例,右鍵點擊桌面網絡圖標,選擇屬性。點擊本地連接,選擇詳細信息,裡面看到IPV4地址,格式如下192.168.1.10,就是你的網絡處在192.168.1.1-192.168.1.254網段中。

如果另外一臺電腦的IP地址也是這個格式,比如另外一臺電腦網絡地址是:192.168.1.128,那麼,這兩臺電腦在同一網段。他們之間可以進行網絡共享,比如打印機,圖片共享等操作。





悠閒的昀


同一個網絡的說法有點兒不明確。

如果你想確定這兩個計算機是不是處於聯通的網絡,電信網絡還是移動的網絡,你可以打開ip138.com這個網址上面會直接把你的外網IP地址羅列出來,就可以判斷你們是否處於同一個網絡內。

如果你想確定兩個計算機的內網地址是不是處於一個網段內,可以在電腦命令行中輸入ipconfig命令,系統會同樣輸出你的IP內網地址,一樣可以判斷這兩個電腦是否處於一個局域網的同一個網段內。


分享到:


相關文章: