文档章节

IP地址分类及原因

H
 Hubor
发布于 2016/07/27 13:18
字数 844
阅读 90
收藏 0

1、为什么需要IP地址分类

        当广域网IP  A寻找另一个广域网IP  Z的时候,势必会进行网络路由的查找,而这种查找就通过路由节点(软硬件)来实现。

        路由机制:当第一次寻找路径时,A找到附近的路由节点B,问B是不是Z,如果不是Z,就会问知不知到Z在哪里。在A找B的同时,A还找了C,问C关于Z的消息,C不知道。然后B、C分别往下找。这里面有一个TTL的变量,被赋予了一个初始值,当走完一个节点时,TTL减1,当TTL减到0时还没找到,就丢弃数据包。TTL的建立确保了不会一直寻找。在多分支寻找时,某个路由第一时间找到了Z,这时TTL不为0,建立通路,路由寻址结束。(一个路由节点附近的路由节点是什么?)

        我们深挖一下,每个路由节点是怎么知道目的IP的消息呢?这里面存在一个路由表的机制。每个路由节点维护了一个路由表。该路由表存储了一些IP地址及与IP相关的路径。

        我们假想一下,如果每个路由器里面包含了所有的广域网IP地址的话,那么作为广域网IP的路由节点不用找就知道目标IP的地址了。但是为什么不这么操作呢?因为IPv4总共有2^32个IP,都存起来的话,一个路由节点需要多少的存储单元?又得需要多大的成本?

        为了简化路由表的存量,我们将IP分类。

        这样的话,原IP找目标IP的话,只需要关心网络号就行了。主机号对于路由节点透明。

        至于局域网A里的主机找局域网B里的主机,是通过局域网A的网关来找局域网B的网关来实现的。这时网关起的作用就是代理作用,且网关在广域网中有一个IP,在局域网中也有一个IP。而局域网的主机在广域网中没有获取IP,再重复一遍,局域网中的主机访问广域网是通过局域网中的主机来实现的。局域网外的IP不能直接访问该局域网内的主机。

2、IP地址分类

注意:此处的IP包括局域网IP和广域网IP。

A:
    0xxx xxxx.X.X.X  0.0.0.0 127.255.225.255 
             默认掩码:255.0.0.0      网络数量:128    主机数量:2^24 - 2 
    120.2.5.7 >>网络号 120.0.0.0  主机号:0.2.5.7   120.255.255.255(广播地址,只能用于局域网)
B:
    10xx xxxx.X.X.X  128.0.0.0 ~191.255.255.255 
             默认掩码:255.255.0.0    网络数量:65536 主机号:2^16 - 2
C:  

     110x xxxx.X.X.X  192.0.0.1 ~223.255.255.255 
             默认掩码:255.255.255.0  网络数量:2^24 主机数量 256 - 2 = 254

D:  

     1110 xxxx.X.X.X  224.0.0.0 ~ 239.255.255.255  组播地址

E:   

     1111 0xxx.X.X.X  保留用于网络测试

3、局域网IP和广域网IP

局域网IP地址不能在广域网出现。

局域网IP地址:
    192.168.x.x  
    172.16.x.x  ~ 172.32.x.x
    10.x.x.x    

广域网IP地址:

    局域网IP的补集就是广域网IP。

        

 

© 著作权归作者所有

H
粉丝 0
博文 1
码字总数 844
作品 0
郑州
私信 提问
TCP-IP协议详解(14) CIDR与NAT

IPv4由于最初的设计原因,长度只有32位,所以只提供了大约40亿个地址。这造成了IPv4地址的耗尽危机。随后,IPv6被设计出来,并可以提供足够多的IP地址。但是IPv4与IPv6并不兼容,IPv4向IPv6的...

炎黄V之怒
2018/04/13
0
0
计算机网络学习总结----IP地址分类+子网划分+地址解析

计算机网络学习总结----IP地址分类+子网划分+地址解析 ================================================================================ 第一部分 IP地址分类 ========================...

doublelinux
2017/10/18
0
0
计算机网络基础(一)——网络通信参考模型及IP地址简要介绍

一、网络通信参考模型 OSI 模型: 应用层:网络服务与最终用户的一个接口 表示层:数据的表示、安全、压缩 会话层:建立、管理、终止会话 传输层:定义传输数据的协议端口号,以及控制和差错...

神奇的小哈
2018/06/29
0
0
Linux Socket学习--地址转换函数

一个IP地址是由小数点分开的十进制数表示的,我们称之为点分十进制表示法。其中每一个十进制数代表一个字节的无符号数值(按照网络字节序)因为每个字节都是无符号的8位数值,这就限制了每一...

泳泳啊泳泳
2017/12/27
0
0
Docker网络管理(bridge、docker自定义网络以及Flannel方案)-笔记4

1、容器内部通信 Docker容器和服务如此强大的原因之一是在通过网络可以将它们连接在一起,或者将它们连接到非Docker工作负载。Docker容器和服务甚至不需要知道它们部署在Docker上,或者它们的...

张晨chat
2018/08/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

将博客搬至CSDN

https://blog.csdn.net/qq_38157006

Marhal
4分钟前
0
0
unicode Java中求字符串长度length()和codePointCount()的区别

在计算字符串长度时,Java的两种方法length()和codePointCount()一度让我困惑,运行书上例子得到的长度值是相等的,那为什么要设定两个方法呢? 对于普通字符串,这两种方法得到的值是一样的...

泉天下
4分钟前
0
0
uin-app 一、学习理由

选择uni-app 理由 别人的理由 1. 5+ 有HTML5+和Native.js技术,HTML5+包含常用的跨平台的几百个API,能满足常规开发需求,而Native.js把40w原生api映 射成js对象,这样js可以直接调原生。HTM...

轻轻的往前走
6分钟前
0
0
方括号及其在命令行中的不同用法介绍

通配 方括号最简单的用法就是通配。你可能在知道“ Globbing”这个概念之前就已经通过通配来匹配内容了,列出具有相同特征的多个文件就是一个很常见的场景,例如列出所有 JPEG 文件: ls *.j...

Linux就该这么学
12分钟前
0
0
vecty 基础

gopherjs 是把 go 编译为 js 的工具。 vecty 是基于 gopherjs 的一种类似 React 的开发框架。 安装 gopherjs 和 vecty go get -u github.com/gopherjs/gopherjsgo get -u github.com/gopher......

electricface
12分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部