IP 地址

IP 地址

IP 地址及其表示方法

  • 我们把整个因特网看成为一个单一的、抽象的网络。IP 地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符。
  • IP 地址现在由因特网名字与号码指派公司ICANN (Internet Corporation for Assigned Names and Numbers)进行分配 。

IP 层次结构

image-20200119132727256

由于当初美国国防部一开始设计TCP/IP协议的时候,没想过把全球的计算机连接起来,所以当时设计的IP 地址只有32位,发展到如今已显得不够用了。IP地址其实就是一串数字,是一个可以直接访问公网的地址,现在已成为一种资源。所以说开发个人网站要买公网IP地址。这里讲解的是IPv4版本的内容,如今慢慢地往IPv6版本转变。

  • IP地址分为网络部分(网络ID)和主机部分(主机ID),每一个网段属于以固定的网络地址,如图中的三个网段的网络ID分别为192.168.1.0192.168.2.0192.168.3.0。这样计算机只关心数据发到哪个网段的网络地址上,而不再关心具体发到某一台计算机的主机ID。就好像电话号码分区号是一样的,前面几位号码管地区,后面号码管该地区的特定用户。
  • 所以同一个网段的计算机网络ID都一样,不同的是跟在网络ID后面的各计算机的主机ID.

IP 地址的编址方法

  • 分类的 IP 地址。这是最基本的编址方法,在 1981 年就通过了相应的标准协议。
  • 子网的划分。这是对最基本的编址方法的改进,其标准[RFC 950]在 1985 年通过。
  • 构成超网。这是比较新的无分类编址方法。1993 年提出后很快就得到推广应用。

分类IP地址

  • 每一类地址都由两个固定长度的字段组成,其中一个字段是网络号 net-id,它标志主机(或路由器)所连接到的网络,而另一个字段则是主机号 host-id,它标志该主机(或路由器)。
  • 两级的 IP 地址可以记为:

image-20200119141920595

网络地址(也可以成为网络号)唯一指定了每个网络。向一网络中的每台计算机都共享相同的网络地址,并用它作为自己IP的值的一部分。

image-20200119134524663

  • 为了方便我们把32位IP地址划分为4个字节(每个字节表示8位2进制)表示的地址。即:

image-20200119134822875

  • A类地址网络号字段有8位,以0开头,主机号字段有24位,即该网段可以容纳2的24次方台计算机。
  • B类地址网络号地址有16位,以10开头,主机号字段有16位,即该网段可以容纳2的16次方台计算机。
  • C类地址网络号地址有24位,以110开头,主机号字段有8位,即该网段可以容纳2的8次方台计算机。
  • D类地址:多播使用,网络号地址以1110开始;E类地址:研究所用,网络号地址以1111开始;(都是比较少见)

**点分十进制记法 **

image-20200119142032733

  • 即每8位二进制数用一个十进制数来表示,每个十进制数之间用点隔开 来表示IP地址。

**常用的三种类别的 IP 地址 **

image-20200119142711753

  • A类地址中的127比较特殊,在运行中输入可以访问本电脑的共享资源。一般是不可用的。

    • 127.0.0.1 这个地址通常分配给 loopback 接口。loopback 是一个特殊的网络接口(可理解成虚拟网卡),用于本机中各个应用之间的网络交互。只要操作系统的网络组件是正常的,loopback 就能工作。Windows 中看不到这个接口。事实上整个 127.* 网段都算能够使用,比如你 ping 127.0.0.2 也是通的。 但是使用127.0.0.1作为loopback接口的默认地址只是一个惯例。并且localhost指向的也是127.0.0.1这个地址。

  • 表中可看出,若为A类 IP 地址,则表示 IP 地址的四个十进制数中的第一个表示网络号,后面三个十进制数表示主机号。比如:126.0.0.1.第一位十进制数在1~126之间表示,所以IP地址的第一位十进制数126表示网络号,后面的三位十进制数:0.0.1表示主机号,即1号主机。

  • B与C类 IP 地址同理;

    • 如 IP 地址:160.32.32.34;由于第一位十进制数在128~191内,故为B类 IP 地址,即前两位数160.32 为网络地址号,后两位数:32.34为主机号。
    • 如 IP 地址:221.31.31.23;由于第一位十进制数在192~223内,故为C类地址,即前三位数221.31.31 为网络地址号,第四位数:23为主机号。

    举例

    image-20200119145500232

可见在指定 IP 地址过程中,只要输入IP地址,子网掩码就会根据 IP地址中的第一个十进制数判断出是哪类IP 地址,并自动完善相应地址。比如图中的132开头的 IP 地址被判断为B类地址,前两个十进制数表示网络号。

实际上 IP 地址是标志一个主机(或路由器)和一条链路的接口。

互联网中的 IP 地址

  • 在同一个局域网上的主机或路由器的IP 地址中的网络号必须是一样的。(一个路由器与若干接线器和若干计算机连接形成的网络就是一个局域网)
    图中的网络号就是 IP 地址中的 net-id,可见同一个局域网内它们 IP 地址的网络号都为222.1.2(由开头的222可知是C类 IP 地址,所以前三位数是网络号)。

image-20200119150640989

  • 由于路由器每个端口连接不同的网段,所以路由器总是具有两个或两个以上的 IP 地址。
    路由器的每一个接口都有一个不同网络号的 IP 地址。

image-20200119150851749

  • 两个路由器直接相连的接口处,可指明也可不指明 IP 地址。如指明 IP 地址,则这一段连线就构成了一种只包含一段线路的特殊“网络” 。常不指明 IP 地址。

特殊的几个地址

  • 127.0.0.1:本地环回地址,localhost地址。

  • 169.254.0.0:(169.254*)改地址为没有人给Windows分配IP地址,或者Windows请求不到地址后,自动给自己生成的凑合着用IP 地址。虽然显示能上网,但是这个网是指由多台一样申请不到IP地址,使用自分配的,以169.254开头的IP地址的计算机组成的网段,该网段内可以通信,但是无法访问公网。

  • 保留的私网地址:在互联网上这些地址没有给服务器用,可以给企业或学校来用。

    • 保留的A类地址:10.0.0.0;

    • 保留的B类地址:172.16.0.0——172.31.0.0;(由于为B类 IP 地址,前两位为网络号,即保留了16个B类 IP 地址);例如本机的学校IPv4地址就是172.26.105.78;即供学校等用的保留地址。

    • 保留的C类地址:192.168.0.0——192.168.255.0;(由于为C类 IP 地址,前三位为网络号,即保留了256个C类 IP 地址);

    • 由于保留的私有地址不在互联网上公开,这些地址属于校园网或企业内网,所以用户无法通过互联网访问这些 IP 地址。(因为这些地址不存在于互联网,互联网上的路由器不知道怎么走,所以无法访问)

      公网地址:存在于互联网上,并且被统一规划的地址,任何地方的任何用户都能访问。

子网掩码

作用

  • 子网掩码(subnet mask)又叫做网络掩码、地址掩码,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。

  • 子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。

  • 如果一台计算机的IP地址配置为172.16.122.204,子网掩码为255.255.0.0(例子见上)。将其IP地址和子网掩码都写陈二进制,进行与(&&)操作,即只有1和1运算才得1,其余得0.这样经过IP地址和子网掩码做完与运算后。主机位不管是什么值都归零,网络位的值保持不变,这样就得到该计算机所处的网段为:172.16.0.0。

    • 例如计算机A:

      IP地址:192.168.80.123;

      子网掩码为:255.255.255.0;

      网关地址为:192.168.80.1;

      计算机B IP地址为:192.168.90.123;

      • A的子网掩码与B 进行与运算,并主机位归零得:192.168.90.0与A的192.168.80.0不在一个网段,A向B发数据会交由网关192.168.80.1处,由网关寻求其他路径传输到B。
      • 若A的子网掩码改为255.255.0.0(子网掩码可以自动分配也可以手动指定),再进行上述操作,得到192.168.0.0与A在一个网段。则A可不经网关直接给B发送数据。
  • 与运算如下

image-20200119164447366

  • 由于子网掩码四个十进制数中若不为0就是255,而255二进制表示全是1,所以255与任何数的二进制做与运算都能使原数不变。
  • 如果子网掩码写错了,会导致与运算出错,从而导致通信故障。因此子网掩码也需要正确地配置。
posted @ 2020-01-23 15:19  AhuntSun  阅读(2472)  评论(0编辑  收藏  举报