前言:
      本文不是来讲述IP地址的发展、划分及计算,因为这类文章太多太多了,网上随便一搜就是一大堆,而且讲的都很不错。这里只想说说平时比较容易混淆的几个概念,和IP地址相关的。
 
通过本文,你可以了解到
 
◆如何理解网络ID和主机ID
◆是否有192.168.1.0这样的IP地址
◆子网掩码的作用是什么
◆如何判断2个IP是否处在同一网段
 
一、网络ID和主机ID
      我们以一个小型局域网的地址划分为例子,一共有3台PC机,IP地址分别是192.168.1.1、192.168.1.2、192.168.1.3。
      这个网络规模非常小,当然使用默认掩码也就是255.255.255.0 最方便。请大家注意,麻雀虽小,五脏俱全。 这个网络中,一样有网络ID,和主机ID。网络ID 192.168.1.0主机ID是什么呢?? 可能有的朋友此时会脱口而出,192.168.1.1、192.168.1.2、192.168.1.3,是这些咯!
       其实,这样说并不是很准确,我们知道,一个完整的IP地址由两部分组成,网络ID和主机ID,前者决定你当前是处在那一个网络当中,请注意,我说的是网络,而不是网络地址,192.168.1.0是一类网络地址的代表,也可以说的是网络ID。后者就决定了具体是指代的哪一个网络节点,这个节点可能是台PC,也可能是网络打印机,也可能是其他的网络设备,那么,在192.168.1.0这个网络下面PC或是其他网络设备的网络ID,就应该是1、2或者3。 这才是真正的主机ID。两者合起来,即表示一个完整的IP地址,如192.168.1.1。那192.168.1.0 具体又代表什么呢?这个地址是否存在呢?
一起来看两个例子:
1、我现在处于192.168.1.0的网络中,本机的IP地址为192.168.1.50。
我们来ping一下192.168.1.0,结果如下图:
 浅谈IP相关的几个基本概念_职场
我们可以看到,在ping192.168.1.0的时候,系统提示Destination specified is invalid
什么意思? 意思是说指定的目标无效。 OK,什么叫无效?难道是这个地址所在的设备无效?还是说这个地址根本没有分配到任何设备上??显然后者更确切些。
为什么这样?? 就是这样,192.168.1.0没有被指定给任何网络设备,当然就ping不通。其实,它表示的是192.168.1 这个网络段的网络,只是个代指。再比如说,192.168.1.0 好比一个省份的名称,比如广东,而192.168.1.1好比广州。在火车时刻表上,只可能看到北京—广州这样表示起始站点的方式,而不可能看到北京—广东这样表示一样的道理,广州,这里特指某一个存在可达的站点,而并没有广东这样一个实际存在且可达的站点。
同样,通常情况下不允许将192.168.1.0这样的地址分配给一个网卡,如下图:
 浅谈IP相关的几个基本概念_职场_02
请注意我用红色方框标记的地方
无效的IP地址:是说我填入的10.0.0.0 这个地址无效?为什么?原因见上面的描述。
子网掩码合并:这是什么意思??? 什么叫“子网掩码合并”??在句末,又一次提到了“合并”二字,有什么含义呢???? 这就引出了我们今天要讨论的第二个关键词,子网掩码及合并。
 
二、子网掩码和合并计算
         子网掩码,简单来说就是在两台主机通信时,系统或网络设备会对各自标记的IP地址还有携带的子网掩码进行AND也就是“与逻辑运算”,来确定各自的Network ID是否一致,则直接可以通讯,否则就需要另外的设备进行转换,比如路由器等。这样的过程,我们成为合并,就是IP地址和自己子网掩码,两者必须成对出现。IP地址的A、B、和C类都有各自默认的子网掩码,也就是我们在填写完IP后,之后用TAB自动输入的掩码。
再来说说“合并”,IP地址到底怎么合并呢?
我们来举个例子
现在网络里有两个IP地址,192.168.0.5  和192.168.5.20,掩码均为默认的255.255.255.0
此时,两者为不同的网络中,显然无法互访。
那如果我把掩码都改成255.255.248.0后,它们能不能互访呢
先别急这猜测,我们来“合并”一下,看看是不是同一样网络ID,就知道答案了
这里的合并,就是指把IP地址和自己的掩码进行“与逻辑运算”,OK,来一起做吧
1、首先,将IP和掩码都转换成二进制,方法不详述,网上有很多教程。
192.168.0.5 的二进制:
11000000.10101000.00000000,00000101
192.168.5.20 的二进制:
11000000.10101000.00000101,00010100
掩码地址255.255.248.0的二进制:
11111111.11111111.11111000.00000000
与逻辑运算的法则很简单,1 与 0=0      1 与 1= 1        0 与 0=0
OK,知道计算法则,我们来计算一下
192.168.0.5和255.255.248.0进行与运算,如下图:
 浅谈IP相关的几个基本概念_休闲_03
192.168.5.20和255.255.248.0进行与运算,如下图:
 浅谈IP相关的几个基本概念_浅谈IP相关的几个基本概念_04
请大家对比一下结果,两者的网络ID都是192.168.0.0,可见,这两个看似不在同一网段的IP,在255.255.248.0这个子网掩码的配合下就可以互相通信,其实不止这两个IP可以,还也有很多,如192.168.4.50和192.168.1.29,只要是在192.168.0.1---192.168.7.255之间任意两个ip,只要是使用这个掩码都处在同一网段。具体什么原因,分析一下上面的图就知道为什么了。
 
先到这里,关于IP方面还有很多东西值得认真讨论,这些也仅仅是冰山一角。
如果文中有什么错误的地方,请大家指正,谢谢。