码迷,mamicode.com
首页 > 其他好文 > 详细

IP,子网掩码,网关,DNS的关系解析

时间:2020-07-01 12:29:23      阅读:45      评论:0      收藏:0      [点我收藏+]

标签:决定   互联网   通信   使用   获取   广播   逻辑   最大数   外网   

转至:https://www.cnblogs.com/qlqwjy/p/8436898.html

IP地址:

是给每个连接在Internet上的主机分配的一个32bit地址。

地址有两部分组成,一部分为网络地址,另一部分为主机地址。

IP地址分为A、B、C、D、E 5类。常用的是B和C两类。

网络地址的位数直接决定了可以分配的网络数;

主机地址的位数则决定了网络中最大的主机数。
A类地址: 网络位8(7)位+主机位24位,0****************************
IP范围:1.0.0.0--126.255.255.255
127网络位是本地测试地址,不能用于数据通讯。
         IP范围:127.0.0.0--127.255.255.255
B类地址:网络位16(14)位+主机位16位,10***************************
IP范围:128.0.0.0--191.255.255.255
C类地址:网络位24(21)位+主机位8位,110**************************
IP范围:192.0.0.0--223.255.255.255
D:224.0.0.0——239.255.255.255
E:240.0.0.0——255.255.255.255

子网掩码:

互联网是由许多小型网络构成的,每个网络上都有许多主机,

这样便构成了一个有层次的结构。
IP地址在设计时就考虑到地址分配的层次特点,

将每个IP地址都分割成网络号和主机号两部分,
以便于IP地址的寻址操作。 IP地址的网络号和主机号各是多少位呢?

如果不指定,就不知道哪些位是网络号、
哪些是主机号,这就需要通过子网掩码来实现。

什么是子网掩码 子网掩码不能单独存在,
它必须结合IP地址一起使用。子网掩码只有一个作用,

就是将某个IP地址划分成网络地址和主机地址两部分。

子网掩码的设定必须遵循一定的规则。与IP地址相同,

子网掩码的长度也是32位,左边是网络位,用二进制数字“1”表示;

右边是主机位,用二进制数字“0”表示。例如IP地址为“192.168.1.1”

和子网掩码为“255.255.255.0”。

其中,“1”有24个,代表与此相对应的IP地址左边24位是网络号;

“0”有8个,代表与此相对应的IP地址右边8位是主机号。

这样,子网掩码就确定了一个IP地址的32位二进制数字中哪些是网络号、

哪些是主机号。这对于采用TCP/IP协议的网络来说非常重要,

只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,

使网络正常工作。常用的子网掩码子网掩码有数百种,

这里只介绍最常用的两种子网掩码,

它们分别是“255.255.255.0”和“255.255.0.0”。

 1. 子网掩码是“255.255.255.0”的网络:

最后面一个数字可以在0~255范围内任意变化,

因此可以提供256个IP地址。

但是实际可用的IP地址数量是256-2,即254个,

因为主机号不能全是“0”或全是“1”。

 2. 子网掩码是“255.255.0.0”的网络:

后面两个数字可以在0~255范围内任意变化,

可以提供2552个IP地址。

但是实际可用的IP地址数量是2552-2,即65023个。

 IP地址的子网掩码设置不是任意的。如果将子网掩码设置过大,

也就是说子网范围扩大,那么,根据子网寻径规则,

很可能发往和本地机不在同一子网内的目的机的数据,

会因为错误的判断而认为目的机是在同一子网内,那么,

数据包将在本子网内循环,直到超时并抛弃,

使数据不能正确到达目的机,导致网络传输错误;

如果将子网掩码设置得过小,

那么就会将本来属于同一子网内的机器之间的通信

当做是跨子网传输,数据包都交给缺省网关处理,

这样势必增加缺省网关的负担,造成网络效率下降。

因此,子网掩码应该根据网络的规模进行设置。

如果一个网络的规模不超过254台电脑,

采用“255.255.255.0”作为子网掩码就可以了,

现在大多数局域网都不会超过这个数字,

因此“255.255.255.0”是最常用的IP地址子网掩码;

笔者见到的最大规模的中小学校园网具有1500多台电脑,

这种规模的局域网可以使用“255.255.0.0”。

默认子网掩码 在Windows 2000 Server中,如果给一个网卡指定IP地址,

系统会自动填入一个默认的子网掩码。

这是Windows 2000 Server为了节省用户输入时间自动产生的子网掩码。

比如,局域网最常使用的IP地址“192.168.x.x”

默认的子网掩码是“255.255.255.0”。一般情况下,

IP地址使用默认子网掩码就可以了。
 

默认网关:

按照不同的分类标准,网关也有很多种。

TCP/IP协议里的网关是最常用的,在这里我们

所讲的“网关”均指TCP/IP协议下的网关。

那么网关到底是什么呢?

网关实质上是一个网络通向其他网络的IP地址。

比如有网络A和网络B,

网络A的IP地址范围为“192.168.1.1~192.168.1.254”,

子网掩码为255.255.255.0;

网络B的IP地址范围为“192.168.2.1~192.168.2.254”,

子网掩码为255.255.255.0。

在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,

即使是两个网络连接在同一台交换机(或集线器)上,

TCP/IP协议也会根据子网掩码(255.255.255.0)

判定两个网络中的主机处在不同的网络里。

而要实现这两个网络之间的通信,则必须通过网关。

如果网络A中的主机发现数据包的目的主机不在本地网络中,

就把数据包转发给它自己的网关,再由网关转发给网络B的网关,

网络B的网关再转发给网络B的某个主机(如附图所示)。

网络B向网络A转发数据包的过程也是如此。

所以说,只有设置好网关的IP地址,

TCP/IP协议才能实现不同网络之间的相互通信。

那么这个IP地址是哪台机器的IP地址呢?

网关的IP地址是具有路由功能的设备的IP地址,

具有路由功能的设备有路由器、启用了路由协议的服务器

(实质上相当于一台路由器)、

代理服务器(也相当于一台路由器)。

 
 什么是默认网关

  如果搞清了什么是网关,默认网关也就好理解了。

就好像一个房间可以有多扇门一样,

一台主机可以有多个网关。

默认网关的意思是一台主机如果找不到可用的网关,

就把数据包发给默认指定的网关,由这个网关来处理数据包。

现在主机使用的网关,一般指的是默认网关。

意思是:所有的需要转发的数据包,都经过默认网关的IP(接口)

 发送出去,当然返回也是从那里经过

 

 

----------------------------另一种理解--------------------------------

 

1.比喻介绍IP和网关,DNS之间的关系 
假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关。当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。 
但是你不被允许走出大门,你想与外界发生的一切联系,都必须由门口的李大爷(网关)用电话帮助你联系。假如你想找你的同学小明聊天,小明家住在很远的另外一个院子里,他家的院子里也有一个看门的王大爷(小明的网关)。但是你不知道小明家的电话号码,不过你的班主任老师有一份你们班全体同学的名单和电话号码对照表,你的老师就是你的DNS服务器。于是你在家里拨通了门口李大爷的电话,有了下面的对话: 
小不点:李大爷,我想找班主任查一下小明的电话号码行吗? 
李大爷:好,你等着。(接着李大爷给你的班主任挂了一个电话,问清楚了小明的电话)问到了,他家的号码是211.99.99.99 
小不点:太好了!李大爷,我想找小明,你再帮我联系一下小明吧。 
李大爷:没问题。(接着李大爷向电话局发出了请求接通小明家电话的请 求,最后一关当然是被转接到了小明家那个院子的王大爷那里,然后王大爷把电话给转到小明家) 就这样你和小明取得了联系。 
这里是个形象的比喻,下面来些实际的,其实,网关一般就是你路由器的地址,负责转接你对外网络的通信。DNS就是一个域名解析器,比如你在浏览器栏里输入一个域名,由DNS服务器解析成IP地址再进行连接。一般来说,DNS也是一个地址,是自动获取的,如果需要手动配置,那么先拔起切换成自动配置,然后命令行输入ipconfig /all进行查看DNS服务器,然后再手动输入。 

2.IP地址 

  IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式。其中,a,b,c,d都是0~255之间的十进制整数。例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)。 
IP地址分为A、B、C、D、E 5类。 
A类地址

   网络位8位+主机位24位。由于A类地址的首位必须是0(二进制下),0XXXXXXX.YYYYYYYY.YYYYYYYY.YYYYYYYY。所以网络位的8位实际只有7位可以配置,所以网络位共有2^7=128位,十进制下就是0-127,二进制就是(00000000)-(01111111)。但是第一个8位组全0(00000000)表示所有网络不可用,第一个8位组为全1(01111111),表示回环地址,作为测试TCP/IP协议的地址,也不使用,所以A类IP地址的范围通过第一个字段查看的话是1–126。 
因为后面24位是主机标识,所以主机数应该是2的24次幂 16777216,扣除两个保留地址后,主机最大数应该是16777214个。 

B类地址

  网络位16位+主机位16位。B类地址的首位必须是10(二进制下),所以网络位的首8位只有6位可以配置,所以2^6=64,转变成十进制的首位是128-191。 
因为后面16位是主机标识,所以主机数应该是2的16次幂 65536,扣除两个保留地址后,主机最大数应该是65534个。 

C类地址:

  网络位24位+主机位8位,C类地址的首位必须是110(二进制下),所以网络位的首8位只有5位可以配置,2^5=32,转变成十进制的首位就是192-223。 
因为后面8位是主机标识,所以主机数应该是 2的8次幂 256,扣除两个保留地址后,主机最大数应该是254个。 

D类地址:

  第一个八位组前4位是1110,该类别地址作为多目广播使用,表示一组计算机。 

E类地址:

  第一个8位组前5位为11110,该类别地址作为科学研究,所以留用。 

3.IP和子网掩码 
  之所以把这两个概念放在这里讲,是因为子网掩码是依赖于IP地址存在的,单独的子网掩码毫无意义,它是用于标志IP地址的网络地址(也叫网络标识)和主机地址(也叫主机标识)的一种方式。 
子网掩码也是32位二进制表示,它是标志IP地址的网络地址位数和主机地址位数的,子网掩码中连续的1表示网络地址,如默认情况A类地址的子网掩码为255.0.0.0,B类地址的子网掩码是255.255.0.0,C类地址的子网掩码为255.255.255.0,因为255转成二进制就是11111111,A类有连续8个1,代表首8位是网络地址。 
网络中或一个子网中,需要用IP地址和子网掩码进行逻辑与运算,任何二进制与11111111运算仍然为其本身,任何二进制与00000000仍然为00000000。 
查看某个主机在哪个子网中需要将IP地址与子网掩码进行逻辑与运算,结果就是子网地址,也可以叫子网号。但是有些情况,如:172.16.0.8 子网掩码为255.255.255.0与172.16.0.9子网掩码为255.255.0.0,乍一看进行IP地址和子网掩码相与后得到的网络地址都是172.16.0.0似乎可以通讯,但事实上不在一个网络里,所以为了表示清楚将采用表示方法172.16.0.0/24和172.16.0.0/16来区分这样的问题,24表示24位网络地址,16表示16位网络地址。 
  子网掩码的变长可以将一个大的包含很多主机的网络,通过将子网掩码变长(表示网络的地址向表示主机的地址进行借位),从而使网络数量变多,而每个网络的主机数量变少。有些子网掩码:如255.255.255.224转变成二进制之后是11111111.11111111.11111111.11100000,如此连续的1有27位,向主机位借了3位,如此子网可以有2^3=8个子网,而主机数本来有256-2=254个,现在只有2^5=32-2=30个了。这个就是向主机地址借位。 
子网中的第一个地址为子网号,代表整个子网所有计算机,子网中最后一个地址为子网广播,子网地址是通过IP地址和子网掩码进行相与得到的,而广播地址是将子网掩码中表示主机的二进制位全部置1,换算为十进制再与子网地址相加得出,主机地址为网络号与广播地址中间包含的地址,可以给计算机配置其中的地址。 
例题: 
(1)求IP地址位201.222.10.60子网掩码为255.255.255.248的地址子网号是什么?广播地址是什么? 
答:子网掩码:11111111.11111111.11111111.11111000,与IP地址11001001.11011110.00001010.00111100相与得到:11001001.11011110.00001010.00111000,十进制下为201.222.10.56(即为子网地址)。广播地址:主机位是3位,全部置1,换算成十进制是7,56+7=63,因此广播地址为:201.222.10.63。主机的范围是子网号与子网广播之间的IP为 
201.222.10.57;201.222.10.58;201.222.10.59;201.222.10.60;201.222.10.61;201.222.10.62一共有六个IP,也只有这六个IP可以给计算机进行配置。 
(2)计算33.26.155.89/20此IP地址所在的子网号,子网掩码是多少?并且该子网中共有多少主机IP地址可以分配给计算机,子网广播地址是多少?此子网的上一个子网是什么?下一个子网是什么?可以划分多少个子网? 
答:该地址属于A类地址,默认子网掩码:255.0.0.0,当前表示网络的位数为20位,说明网络位向主机位借位12位,所以子网掩码为255.255.240.0;子网号为33.26.144.0;广播地址按照计算原则计算出为33.26.159.255;子网的主机数量2^12-2,子网数量2^12个;上一个子网为 33.26.128.0 ,下一个子网33.26.159.255。 
(3)如果把一个网络40.15.0.0分为两个子网,第一个子网是40.15.0.0/17,那么第二个子网将会是()。 
答:A类IP地址,子网掩码默认是255.0.0.0,第一个子网向主机借位9位,第二个子网同样是9位:40.15.128.0/17,这就是最终结果。

IP,子网掩码,网关,DNS的关系解析

标签:决定   互联网   通信   使用   获取   广播   逻辑   最大数   外网   

原文地址:https://www.cnblogs.com/caiya/p/13218488.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!