细说ip地址与同一网段

来源:互联网 发布:php格式的图片怎么打开 编辑:程序博客网 时间:2024/06/04 19:04

同一网段

大学的时候有上过计算机网络的课程,IP这块也有一些接触,但向来不是很好学的我,对于一些问题似是而非的态度,感觉知道,但具体的又说不上,今天就花了点时间彻底把这个问题搞清楚,写在这也算是做个记录吧!接下来我们举例说明,如何去判断A和B两个IP是否在同一网段。

同一网段指的是IP地址和子网掩码相与得到相同的网络地址。想在同一网段,必需做到网络标识相同。各类IP的网络标识算法都是不一样的,需要根据子网掩码的位数来判断。

想在同一网段,必需做到网络标识相同,那网络标识怎么算呢?各类IP的网络标识算法都是不一样的。需要根据子网掩码的位数来判断。

   A IP:202.194.128.9   B IP:202.194.128.14   子网掩码:255.255.255.0

1.把A和B的地址转换为二进制的

      A:1100 1010.1100 0010.1000 0000.0000 1001      B:1100 1010.1100 0010.1000 0000.0000 1101掩码 :1111 1111.1111 1111. 1111 1111 .0000 0000

2、要判断两个IP是否在同一网段,主要是看看他们的网络标识是否一样,其实一个IP的网络标识也就是他的IP和子网掩码AND之后的结——比如上面两个AND以后的结果如下:

      A:11001010.1100 0010.1000 0000 .0000 0000 转化为十进制:202.194.128.0      B:1100 1010.1100 0010.1000 0000.0000 0000 转化为十进制:202.194.128.0

这说明两个IP的网络标识相同,也就是说他们在同一子网。
3、有的时候我们还想知道,两个IP各自的主机标识,先将子网掩码取反,再和IP做AND.

            A:1100 1010.1100 0010.1000 0000.0000 1001            B:1100 1010.1100 0010.1000 0000.0000 1101掩码取反:0000 0000.0000 0000.0000 0000.1111 1111

AND 之后结果:

           A0000 0000.0000 0000.0000 0000.0000 1001 转化为十进制:9           B:0000 0000.0000 0000.0000 0000.0000 1101 转化为十进制:14

也就是说A和B的主机标识为9和14。

IP地址介绍

再说说ip地址。

所谓IP地址就是给每个连接在互联网上的主机分配的一个32位地址。
IP地址就好像电话号码(地址码):有了某人的电话号码,你就能与他通话了。同样,有了某台主机的IP地址,你就能与这台主机通信了。

按照TCP/IP(Transport Control Protocol/Internet Protocol,传输控制协议/Internet协议)协议规定,IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节。例如一个采用二进制形式的IP地址是一串很长的数字,人们处理起来也太费劲了。为了方便人们的使用,IP地址经常被写成十进制的形式,中间使用符号“.”分开不同的字节。于是,上面的IP地址可以表示为“10.0.0.1”。IP地址的这种表示法叫做“点分十进制表示法”,这显然比1和0容易记忆得多。

有人会以为,一台计算机只能有一个IP地址,这种观点是错误的。我们可以指定一台计算机具有多个IP地址,因此在访问互联网时,不要以为一个IP地址就是一台计算机;另外,通过特定的技术,也可以使多台服务器共用一个IP地址,这些服务器在用户看起来就像一台主机似的。

将IP地址分成了网络号和主机号两部分,设计者就必须决定每部分包含多少位。网络号的位数直接决定了可以分配的网络数(计算方法2^网络号位数);主机号的位数则决定了网络中最大的主机数(计算方法2^主机号位数-2)。然而,由于整个互联网所包含的网络规模可能比较大,也可能比较小,设计者最后聪明的选择了一种灵活的方案:将IP地址空间划分成不同的类别,每一类具有不同的网络号位数和主机号位数。
IP地址是IP网络中数据传输的依据,它标识了IP网络中的一个连接,一台主机可以有多个IP地址。IP分组中的IP地址在网络传输中是保持不变的。

基本格式
如今的IP网络使用32位地址,以点分十进制表示,如192.168.0.1。
地址格式为:IP地址=网络地址+主机地址或 IP地址=网络地址+子网地址+主机地址。

网络地址是因特网协会的ICANN(the Internet Corporation for Assigned Names and Numbers)分配的,下有负责北美地区的InterNIC、负责欧洲地区的RIPENIC和负责亚太地区的APNIC 目的是为了保证网络地址的全球唯一性。主机地址是由各个网络的系统管理员分配。因此,网络地址的唯一性与网络内主机地址的唯一性确保了IP地址的全球唯一性。

地址分配
根据用途和安全性级别的不同,IP地址还可以大致分为两类:公共地址和私有地址。公用地址在Internet中使用,可以在Internet中随意访问。私有地址只能在内部网络中使用,只有通过代理服务器才能与Internet通信。

IP查询
ipconfig详解

Windows操作系统下
开始—运行,输入cmd—在弹出的对话框里输入ipconfig /all (网协配置、参数变量为全部),然后回车出现列表.
其中有一项:ip address就是ip地址
Linux操作系统下
运行ifconfig(网协配置)其中以太网下面 inet地址即为IP地址

IP地址的分类

IP地址分为五类,A类保留给政府机构,B类分配给中等规模的公司,C类分配给任何需要的人,D类用于组播,E类用于实验,各类可容纳的地址数目不同。
A、B、C三类IP地址的特征:当将IP地址写成二进制形式时,A类地址的第一位总是0,B类地址的前两位总是10,C类地址的前三位总是110。

A类地址
(1)A类地址第1字节为网络地址,其它3个字节为主机地址。它的第1个字节的第一位固定为0.
(2)A类地址网络号范围:1.0.0.0—126.0.0.0
(3)A类地址中的私有地址和保留地址:
① 10.X.X.X是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址)。
范围(10.0.0.0—10.255.255.255)
② 127.X.X.X是保留地址,用做循环测试用的。

B类地址
(1) B类地址第1字节和第2字节为网络地址,其它2个字节为主机地址。它的第1个字节的前两位固定为10.
(2) B类地址网络号范围:128.0.0.0—191.255.0.0。
(3) B类地址的私有地址和保留地址
① 172.16.0.0—172.31.255.255是私有地址
② 169.254.X.X是保留地址。如果你的IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器。就会得到其中一个IP。
191.255.255.255是广播地址,不能分配。

C类地址
(1)C类地址第1字节、第2字节和第3个字节为网络地址,第4个字节为主机地址。另外第1个字节的前三位固定为110。
(2)C类地址网络号范围:192.0.0.0—223.255.255.0。
(3) C类地址中的私有地址:
192.168.X.X是私有地址。(192.168.0.0—192.168.255.255)

D类地址
(1) D类地址不分网络地址和主机地址,它的第1个字节的前四位固定为1110。
(2) D类地址范围:224.0.0.0—239.255.255.255

E类地址
(1) E类地址不分网络地址和主机地址,它的第1个字节的前五位固定为11110。
(2) E类地址范围:240.0.0.0—255.255.255.254
IP地址如果只使用ABCDE类来划分,会造成大量的浪费:一个有500台主机的网络,无法使用C类地址。但如果使用一个B类地址,6万多个主机地址只有500个被使用,造成IP地址的大量浪费。因此,IP地址还支持VLSM技术,可以在ABC类网络的基础上,进一步划分子网。

无类地址
除ABCDE以外的IP地址段划分方式,如:192.168.1.0 255.255.255.252等分成C段划分的地址

实体IP
在网络的世界里,为了要辨识每一部计算机的位置,因此有了计算机 IP 位址的定义。一个 IP 就好似一个门牌!例如,你要去微软的网站的话,就要去『 64.4.11.42 』这个 IP 位置!这些可以直接在网际网络上沟通的 IP 就被称为『实体 IP 』了。

虚拟IP
不过,众所皆知的,IP 位址仅为 xxx.xxx.xxx.xxx 的资料型态,其中, xxx 为 1-255 间的整数,由于计算机的成长速度太快,实体的 IP 已经有点不足了,好在早在规划 IP 时就已经预留了三个网段的 IP 做为内部网域的虚拟 IP 之用。这三个预留的 IP 分别为:
A级:10.0.0.1 - 10.255.255.254
B级:172.16.0.1 - 172.31.255.254
C级:192.168.0.1 - 192.168.255.254

上述中最常用的是192.168.0.0这一组。不过,由于是虚拟 IP ,所以当您使用这些地址的时候﹐当然是有所限制的,限制如下:
私有位址的路由信息不能对外散播
使用私有位址作为来源或目的地址的封包﹐不能透过Internet来转送
关于私有位址的参考纪录(如DNS)﹐只能限于内部网络使用
由于虚拟 IP 的计算机并不能直接连上 Internet ,因此需要特别的功能才能上网。不过,这给我们架设IP网络提供了很大的方便﹐比如﹕您的公司还没有连上Internet﹐但这不保证将来不会。使用公共IP的话﹐如果没经过注册﹐在以后真正连上网络的时候﹐就很可能和别人冲突了。也正如前面所分析的﹐到时候再重新规划IP的话﹐将是件非常头痛的问题。这时候﹐我们可以先利用私有位址来架设网络﹐等到真要连上internet的时候﹐我们可以使用IP转换协定﹐如 NAT (Network Addresss Translation)等技术﹐配合新注册的IP就可以了。

掩码
为了标识IP地址的网络部分和主机部分,要和地址掩码(Address Mask)结合,掩码跟IP地址一样也是32 bits,用点分十进制表示。IP地址网络部分对应的掩码部分全为“1”,主机部分对应的掩码全为“0”。
缺省状态下,如果没有进行子网划分,A类网络的子网掩码为255.0.0.0,B类网络的子网掩码为255.255.0.0,C类网络的子网掩码为255.255.255.0。利用子网,网络地址的使用会更加有效。
有了子网掩码后,IP地址的标识方法如下:
例:192.168.1.1 255.255.255.0或者标识成192.168.1.1/24(掩码中“1”的个数)

固定IP与动态IP
基本上,这两个东西是由于网络公司大量的成长下的产物,例如,你如果向中国电信申请一个商业型态的 ADSL 专线,那他会给你一个固定的实体 IP ,这个实体 IP 就被称为『固定 IP 』了。而若你是申请计时制的 ADSL ,那由于你的 IP 可能是由数十人共同使用,因此你每次重新开机上网时,你这部计算机的 IP 都不会是固定的!于是就被称为『动态 IP』或者是『浮动式IP』。基本上,这两个都是『实体IP』,只是网络公司用来分配给用户的方法不同而产生不同的名称而已!

特殊地址

在IP地址空间中,有的IP地址不能为设备分配的,有的IP地址不能用在公网,有的IP地址只能在本机使用,诸如此类的特殊IP地址众多:

组播地址

注意它和广播的区别。从224.0.0.0到239.255.255.255都是这样的地址。224.0.0.1特指所有主机, 224.0.0.2特指所有路由器。这样的地址多用于一些特定的程序以及多媒体程序。如果你的主机开启了IRDP(Internet路由发现协议,使用组播功能)功能,那么你的主机路由表中应该有这样一条路由。
169.254.x.x
如果你的主机使用了DHCP功能自动获得一个IP地址,那么当你的DHCP服务器发生故障,或响应时间太长而超出了一个系统规定的时间,Windows系统会为你分配这样一个地址。如果你发现你的主机IP地址是一个诸如此类的地址,很不幸,十有八九是你的网络不能正常运行了。

受限广播地址
广播通信是一对所有的通信方式。若一个IP地址的2进制数全为1,也就是255.255.255.255,则这个地址用于定义整个互联网。如果设备想使IP数据报被整个Internet所接收,就发送这个目的地址全为1的广播包,但这样会给整个互联网带来灾难性的负担。因此网络上的所有路由器都阻止具有这种类型的分组被转发出去,使这样的广播仅限于本地网段。

广播地址
直接广播地址
一个网络中的最后一个地址为直接广播地址,也就是HostID全为1的地址。主机使用这种地址把一个IP数据报发送到本地网段的所有设备上,路由器会转发这种数据报到特定网络上的所有主机。
注意:这个地址在IP数据报中只能作为目的地址。另外,直接广播地址使一个网段中可分配给设备的地址数减少了1个。

源IP地址

若IP地址全为0,也就是0.0.0.0,则这个IP地址在IP数据报中只能用作源IP地址,这发生在当设备启动时但又不知道自己的IP地址情况下。在使用DHCP分配IP地址的网络环境中,这样的地址是很常见的。用户主机为了获得一个可用的IP地址,就给DHCP服务器发送IP分组,并用这样的地址作为源地址,目的地址为255.255.255.255(因为主机这时还不知道DHCP服务器的IP地址)。
NetID为0的
当某个主机向同一网段上的其他主机发送报文时就可以使用这样的地址,分组也不会被路由器转发。比如12.12.12.0/24这个网络中的一台主机12.12.12.2/24在与同一网络中的另一台主机12.12.12.8/24通信时,目的地址可以是0.0.0.8。

环回地址
127网段的所有地址都称为环回地址,主要用来测试网络协议是否工作正常的作用。比如使用ping
127.0.0.1就可以测试本地TCP/IP协议是否已正确安装。另外一个用途是当客户进程用环回地址发送报文给位于同一台机器上的服务器进程,比如在浏览器里输入127.1.2.3,这样可以在排除网络路由的情况下用来测试IIS是否正常启动。

专用地址
IP地址空间中,有一些IP地址被定义为专用地址,这样的地址不能为Internet网络的设备分配,只能在企业内部使用,因此也称为私有地址。若要在Internet网上使用这样的地址,必须使用网络地址转换或者端口映射技术。
这些专有地址是:
10/8 地址范围:10.0.0.0到10.255.255.255 共有2的24次方个地址
172.16/12 地址范围:172.16.0.0至172.31.255.255 共有2的20次方个地址
192.168/16 地址范围:192.168.0.0至192.168.255.255 共有2的16次方个地址

子网掩码

IP默认分配的子网掩码每段只有255或0
A类的默认子网掩码 255.0.0.0 一个子网最多可以容纳1677万多台电脑
B类的默认子网掩码 255.255.0.0 一个子网最多可以容纳6万台电脑
C类的默认子网掩码 255.255.255.0 一个子网最多可以容纳254台电脑
要想在同一网段,只要网络标识相同就可以了,那要怎么看网络标识呢?首先要做的是把每段的IP转换为二进制。
把子网掩码切换至二进制,我们会发现,所有的子网掩码是由一串连续的1和一串连续的0组成的(一共4段,每段8位,一共32位数)。

255.0.0.0 11111111.00000000.00000000.00000000255.255.0.0 11111111.11111111.00000000.00000000255.255.255.0 11111111.11111111.11111111.00000000

这是A/B/C三类默认子网掩码的二进制形式,其实,还有好多种子网掩码,只要是一串连续的1和一串连续的0就可以了(每段都是8位)。如11111111.11111111.11111000.00000000,这也是一段合法的子网掩码。子网掩码决定的是一个子网的计算机数目,计算机公式是2的m次方,其中,我们可以把m看作后面0的个数。如255.255.255.0转换成二进制,那就是11111111.11111111.11111111.00000000,后面有8个0,那m就是8,255.255.255.0这个子网掩码可以容纳2的8次方(台)电脑,也就是256台,但是有两个IP是不能用的,那就是最后一段不能为0和255,减去这两台,就是254台。

计算方法

00 把将其转换为二进制的四段数字(每段要是8位,如果是0,可以写成8个0,也就是00000000)
11111111.1111111.11111000.00000000
然后,数数后面有几个0,一共是有11个,那就是2的11次方,等于2048,这个子网掩码最多可以容纳(2048-2)=2046台电脑。
我们再来看看这个改为默认子网掩码的B类IP
如IP:188.188.0.111,188.188.5.222,子网掩码都设为255.255.254.0,在同一网段吗?
先将这些转换成二进制
188.188.0.111 10111100.10111100.00000000.01101111
188.188.5.222 10111100.10111100.00000101.11011110
255.255.254.0 11111111.11111111.11111110.00000000
分别AND,得
10111100.10111100.00000000.00000000
10111100.10111100.00000100.00000000
网络标识不一样,即不在同一网段。
判断是不是在同一网段,你会了吧,下面,我们来点实际的。
一个公司有530台电脑,组成一个对等局域网,子网掩码和IP设多少最合适?
子网掩码不说了,前面算出结果来了11111111.11111111.11111100.00000000,也就是255.255.252.0
我们需要确定的是IP如何分配,首先,选一个B类IP段,这里就选188.188.x.x吧
这样,IP的前两段确定的,关键是要确定第三段,只要网络标识相同就可以了。我们先来确定网络号。(我们把子网掩码中的1和IP中的 对就起来,0和*对应起来,如下:)
255.255.252.0 11111111.11111111.11111100.00000000
188.188.x.x 10111100.10111100. .****
网络标识 10111100.10111100. 00.00000000
由此可知, *处随便填(只能用0和1填,不一定全是0和1)

原创粉丝点击