IP地址之IPv4

一、概述

  IP地址有IPv4和IPv6两个版本,目前我们通常所说的IP地址是指IPv4。

  IP地址由32位的二进制数组合而成,为了方便人类记忆,将二进制转换成4个十进制的数值。

  在这32位数据中分为网络号与主机号两个部分。

二、IP的分级

  IP网段分为五个等级,其定义如下:

  A类:规定前面8位为网络地址,后面的24位为主机地址,并且网络地址必须以0开头。如下所示:

    二进制表示:0xxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx

    十进制表示:0.xx.xx.xx – 127.xx.xx.xx

  B类:规定前面16位为网络地址,后面16位为主机地址,并且网络地址必须以10开对。如下所示:

    二进制表示:10xxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx

    十进制表示:128.xx.xx.xx – 191.xx.xx.xx

  C类:规定前面24位为网络地址,后面8位为主机地址,并且网络地址必须以110开对。如下所示:

    二进制表示:110xxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx

    十进制表示:192.xx.xx.xx – 223.xx.xx.xx

  D类:网络地址必须以1110开对。如下所示:

    二进制表示:1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx

    十进制表示:224.xx.xx.xx – 239.xx.xx.xx

  E类:网络地址必须以1111开对。如下所示:

    二进制表示:1111xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx

    十进制表示:240.xx.xx.xx – 255.xx.xx.xx

  常用的只有A、B、C三个等级,D类用于组播,E类是保留网段。

  另外,A类中127.0.0.0这个网段用于测试操作系统,称为环回地址。

三、私有IP

  为了满足企业内部IP地址使用的需求,IPv4规划了三段私有IP地址,这些IP地址不能在公网上使用,只能用于局域网内部。

  A类:10.0.0.0-10.255.255.255

  B类:172.16.0.0-172.31.255.255

  C类:192.168.0.0-192.168.255.255

四、子网掩码

  IP是有等级的,如果我们使用A类的网段,此网段可容纳的主机数量为2^24-2台主机,先不考虑企业是否有这么多台主机,假设真的将这么多台主机接入到一个局域网中,这个网络基本上没有办法正常工作了,因为会有大量的广播包会在网络中传输。

  我们可以将一个大的IP段划分为多个小的IP段还分隔广播域。可以从主机地址中借位来充当网络地址,从而划分出多个子网,这时就要借助于子网掩码了。

  子网掩码也是由32位二进制数组成,其中1代表网络位,0代表主机位。例如:C类地址192.168.0.255其二进制格式为:

  IP:    11000000.10101000.00000000.11111111

  子网掩码:11111111.11111111.11111111.00000000

  将其转换成十进制数为:255.255.255.0

  上例中的192.168.0.255这个IP地址的主机位全部为1,这种主机位全部为1的IP地址称做广播地址,与其对应的是主机为全部为0的IP址(192.168.0.0),称做网络地址。

  每个网络段中都有一个主机地址和一个网络地址,这两个地址是不可以使用的,所有每个网段可用IP是数量是2^n-2,n表示主机位数。

五、子网划分

  了解了子网掩码的概念后,就可以进行子网划分了。前面介绍了子网划分其实就是向主机位借位划分多个网络的过程。

  以192.168.0.0/255.255.255.0这个网段为例,将它划分成2个子网的方法如下:

  2个子网其含义是子网掩码要向主机位借的位数只需要有两种变化即可,即2^n=2,可以得到n=1,这个n就是借位的数量。由此可知,子网划分的数量都是能2的n次方计算的。

  192.168.0.0  => 11000000.10101000.00000000.00000000  

  255.255.255.0 => 11111111.11111111.11111111.00000000

  由上面的计算结果可知,需要向主机位借一位,借位顺序为由左至右,第一个子网为:

  11000000.10101000.00000000.00000000 => 192.168.0.0

  11111111.11111111.11111111.10000000 => 255.255.255.128

  第二个子网为:

  11000000.10101000.00000000.10000000 => 192.168.0.128

  11111111.11111111.11111111.10000000 => 255.255.255.128

  上面使用二进制的方法进行计算,其实还可以直接使用十进制方法进行计算。用十进制方法计算上面的例子:

  以256为标准进行计算,主机段分为两个子网就用256/2=128,这个128就是第二个子网的网络地址了。

  如果将192.168.0.0/255.255.255.0划分出4个子网也就是子网掩码有26位的情况,直接用256/4=64,得到每个子网有64个IP地址,那么这4个子网分别为:

  192.168.0.0/255.255.255.192

  192.168.0.64/255.255.255.192

  192.168.0.128/255.255.255.192

  192.168.0.192/255.255.255.192

六、无类别域间路由CIDR

  CIDR的目的是将一组子网信息合并为一条较大的网络段,其目的是减少路由的条目。

  以192.168.0.0/255.255.255.0为例,其CIDR的写法为:192.168.0.0/24

  在上面的划分子网的例子中,四个子网的CIDR写法为:

    192.168.0.0/26

    192.168.0.64/26

    192.168.0.128/26

    192.168.0.192/26

原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/10948

(1)
petmasterpetmaster
上一篇 2016-02-14
下一篇 2016-02-14

相关推荐

  • chrony、sudo、rsyslog

    chrony 程序环境: 配置文件:/etc/chrony.conf 主程序文件:chronyd 工具程序:chronyc unit file: chronyd.service 配置文件:chrony.conf server:指明时间服务器地址; allow NETADD/NETMASK allow all:允许所有客户端主机; deny NETADDR/N…

    Linux干货 2017-06-13
  • 文件处理工具及正则表达式练习

    本节练习均在centos7系统下实现,部分练习只截取部分截图,另外排版的事情我已经放弃了! 1.找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行 注:^ 行首, . 匹配任意单个字符,* 匹配前面的字符任意次 突然发现前面解法错误,没有排除空格后加小括号的情况,下面是正确做法 2.统计last命令中…

    Linux干货 2017-07-29
  • 马哥教育网络版22期+第10周作业

    week10 1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 2、为运行于虚拟机上的CentOS 6添加一块新硬件,提供两个主分区;   (1) 为硬盘新建两个主分区;并为其安装grub;   (2) 为硬盘的第一个主分区提供内核和ramdisk文件;&nbsp…

    Linux干货 2016-10-29
  • Mysql之主从复制

    Mysql之主从复制 节点一 修改配置文件设置唯一ID开起二进制日志 [root@node1 ~]# vim /etc/my.cnf 增加以下内容     [mysqld]     log-bin=master_bin &nbsp…

    Linux干货 2016-07-19
  • Linux上的文件管理类命令

    N27-第二周作业

    2017-10-08
  • DNS 及 bind的简单配置

    bind的简单配置 摘要:DNS  bind简单配置        FQDN        http://www.178linux.com.  WWW是主机名  .178linux.COM.是私有域名&nbsp…

    Linux干货 2015-10-18