计算机网络学习笔记--网络层之IP地址与子网
IPv4地址:
我们知道在网络层(TCP/IP体系结构的网际互联层),最重要的一个协议就是IP协议,现在正处于IPv4和IPv6的过渡时期,但目前来说,IPv4仍为主流,所以主要讲Ipv4.
IP地址基本格式:
计算机内部IP地址的格式是32位的二进制数表示的,为了让人们看起来方便,通常采用点分十进制来表示IP地址,如192.168.1.25,其中用来分隔各段的那个点,也是为了方便人们阅读加上的,计算机内部并没有这个点.
公网IP地址和私网IP地址:
公网Ip地址是指可以在广域网上直接使用,直接被路由,并需要向IP地址管理机构(我国申请IP地址要通过APNIC)申请,注册,购买,且全球唯一的Ipv4地址.
私网IP地址是指仅可以在各用户自己的局域网内部使用,且不同用户可以重复使用,无需申请购买的IPv4地址.
子网掩码:
子网掩码不是一个地址,它是用来确定一个IP地址中哪一部分是网络ID,哪一部分是主机ID的,连续为1的部分代表网络ID,连续为0的部分代表主机ID.如C类网络的前24位为网络号,后8位为主机号,那么C类网的子网掩码就是255.255.255.0
IP地址的分类:
这个分类属于比较基础的知识,就不详细讲了,这里主要强调一下D类网.D类IP地址属于组播地址,又称多播地址,配合IP组播技术能有效地解决单点发送,多点接收的问题,可以节约带宽降低网络负载比如在线直播,网络电视等业务都是基于网络的组播特性的.
整个D类Ip地址的范围是224.0.0.0~239.255.255.255.根据不同的应用环境和用途又划分为了四大类:
1.预留组播地址(224.0.0.0~224.0.0.255):这些IP地址是不分配给特定用户使用的,主要分配给组播路由协议使用.使用这段组播地址的IP包不会被路由器转发.
2.公用组播地址(224.0.1.0~224.0.1.255):这些组播地址是全世界范围内都可以直接在互联网上使用的,当然需要申请和购买.
3.临时组播地址(224.0.2.0~238.255.255.255):是由企业用户在本企业局域网内部使用的组播地址,仅在本地局域网有效.就像私有IP地址一样.
4本地管理组播地址(239.0.0.0~239.255.255.255):是保留使用的,专用于局域网内部组播测试.仅在特定的本地范围内有效.
有类网与无类网:
前边将ip地址划分为ABCDE五类,这种网络就称为有类网络,或标准网络.
为了解决IP地址不足,出现了VLSM(下面讲)技术,采用了VLSM技术划分后的网络就称为无类网络.
网络地址,主机地址,广播地址:
网络地址:用来标识一个网络的地址,是对应有类网或子网中的第一个Ip地址,即主机ID部分全为0的IP地址.如在192.168.2.0这个C类网络中,192.168.2.0就是网络地址.
广播地址:是一个网络中的最后一个IP地址,即主机ID部分全为1的IP地址,如在192.168.2.0这个C类网络中,192.168.2.255,就是该网络的广播地址,使用这个地址可以进行广播通信,使该网络的所有节点都能收到同一个数据包.
主机地址:除了网络地址,广播地址这个一头一尾的地之外,其他的都是主机地址.
几个特殊的IP地址:
1: 私网IP地址(局域网专用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
2:169.254.0.0/16: 在windows系统中,如果设置的是自动获取IP地址,本地网络中又没有部署自动获取IP地址的DHCP服务器的话,主机会自动获得一个这个网段的IP地址,这就是所谓的自动专用IP地址.
3:127.0.0.1:本机地址,又称为环回地址.
4:0.0.0.0:并不是一个真正意义上的Ip地址,表示的是这样一个集合:所有不清楚的主机和目的网络.
IP子网的划分与聚合
VLSM(可变长子网掩码)技术:
为了解决IPv4地址的不足,诞生了这个技术,VLSM用于子网的划分.把一个大的网络划分成分个小的子网.基本思路就是在原来有类网的IP地址的网络ID部分像主机ID部分借位,使其变成网络ID的一部分(称为子网ID),这样一来,主机IP部分的长度变小了,也就是是对应网络中主机总数(地址总数)减少了,不过这并不是VLSM的目的,更关键的是它可以用来灵活的依据实际需求来调整所划分的子网的大小.
注意:通过这种方式划分的子网中,全0的子网,和全1的子网是可以使用.
CIDR(无类域间路由选择协议):
无类域间路由选择协议允许把多个有类网合并成一个更大的网络,称为超网.
例如把192.24,8.0~192.24.15.0这8个有类网,可以合成一个网络号为192.24.8.0,子网掩码为255.255.248.0的超网.
CIDR可以显著减少路由表中路由表项的数量.例如上例中就是把8个路由减少为1个路由,这成为路由聚合.
通过引入CIDR,再加上子网掩码,现在的网络号都可以看成是没有边界的,即无类的,
NAT(网络地址转换)技术:
前边介绍的两个技术VLSM和CIDR是通过调整子网掩码的长度来充分利用IPv4地址的,而NAT技术允许内部网络(用户当前所在的网络)中私有IP地址通过地址转换变为公网IP地址来访问Internet.NAT服务工作在路由器上.
关于具体的NAT工作原理,这一篇文章讲的比较好,可以深入看一下:http://www.tuicool.com/articles/7JFZziM
特殊IP地址:
计算机网络学习笔记--网络层之IP地址与子网的更多相关文章
- IP地址和子网划分学习笔记之《IP地址详解》
2018-05-03 18:47:37 在学习IP地址和子网划分前,必须对进制计数有一定了解,尤其是二进制和十进制之间的相互转换,对于我们掌握IP地址和子网的划分非常有帮助,可参看如下目录详文. ...
- IP2——IP地址和子网划分学习笔记之《子网掩码详解》
2018-05-04 16:21:21 在学习掌握了前面的<进制计数><IP地址详解>这两部分知识后,要学习子网划分,首先就要必须知道子网掩码,只有掌握了子网掩码这部分内容 ...
- IP地址和子网划分学习笔记之《预备知识:进制计数》
一.序:IP地址和子网划分学习笔记开篇 只要记住你的名字,不管你在世界的哪个地方,我一定会去见你.——新海诚 电影<你的名字> 在我们的日常生活中,每个人的名字对应一个唯一的身(敏)份(感 ...
- 读取本地IP地址和子网页码
#region 读取本地IP地址和子网页码 //读取本地IP地址和子网页码 NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterf ...
- IP地址与子网划分
IP地址与子网划分 目录 IP地址与子网划分 一.IP地址(Internet Protocol Address) 1.IP地址的表示 2.IP地址的组成 3.IP地址的分类 (1)A类IP地址 (2) ...
- 【计算机网络】网络层学习笔记:总结IP,NAT和DHCP
前言:这篇文章是学习网络层协议时候总结的笔记,前面的主要部分介绍的都是IP协议, 后半部分介绍NAT协议和DHCP协议 参考书籍 <计算机网络-自顶向下> 作者 James F ...
- 计算机网络网络层的IP地址划分及子码
现在在网络层,即就是TCP/IP协议里的网际互联层,最流行IP协议的就是IPV4.其中IP地址的格式是由32位二进制数字表示的,通常为了人们阅读习惯,将其转换成点分十进制来表示,如:192.168.1 ...
- 【转载】IP地址和子网划分学习笔记之《子网掩码详解》
原文地址: https://blog.51cto.com/6930123/2112748 一.子网掩码 IP地址是以网络号和主机号来标示网络上的主机的,我们把网络号相同的主机称之为本地网络,网络号不相 ...
- 计算机网络三:域名、IP地址和TCP/IP协议
一.域名 域名(Domain Name),简称域名.网域,是由一串用点分隔的字符型标志名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时 ...
随机推荐
- vue2.0实践的一些细节
最近用vue2.0做了个活动.做完了回头发现,好像并没有太多的技术难点,而自己好像又做了比较久...只能说效率有待提升啊...简单总结了一些比较细节的点. 1.对于一些已知肯定会有数据的模块,先用一个 ...
- 应用工具 .NET Portability Analyzer 分析迁移dotnet core
大多数开发人员更喜欢一次性编写好业务逻辑代码,以后再重用这些代码.与构建不同的应用以面向多个平台相比,这种方法更加容易.如果您创建与 .NET Core 兼容的.NET 标准库,那么现在比以往任何时候 ...
- 从零开始编写自己的C#框架(28)——建模、架构与框架
文章写到这里,我一直在犹豫是继续写针对中小型框架的设计还是写些框架设计上的进阶方面的内容?对于中小型系统来说,只要将前面的内容进行一下细化,写上二三十章具体开发上的细节,来说明这个通用框架怎么开发的就 ...
- js callee,caller学习
原文地址:js callee,caller学习 /* * caller 返回一个对函数的引用,该函数调用了当前函数. * 如果函数是由顶层调用的,那么 caller包含的就是 null . * 如果在 ...
- [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法
一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...
- 【Java学习系列】第3课--Java 高级教程
本文地址 可以拜读: 从零开始学 Java 分享提纲: 1. Java数据结构 2. Java 集合框架 3. Java泛型 4. Java序列化 5. Java网络编程 6. Java发送Email ...
- AutoMapper(三)
返回总目录 自定义类型转换 有时,需要完全控制一个类型到另一个类型的转换.一个类型一点都不像另一个类型,而且转换函数已经存在了,在这种情况下,你想要从一个“宽松”的类型转换成一个更强壮的类型,例如一个 ...
- Linux1 在Linux(CentOS)上安装MySql详细记录
前记: 毕业两年了,前两天换了份工作,由以前的传统行业跳到了互联网行业.之前的公司一直在用WinServer2003+Tomcat+SqlServer/Oracle这套部署环境.对于Linux+To ...
- 布里斯班Twilight Bay Run半程马拉松
自从8月3日跑了半马以后,又一鼓作气报了11月份的西昌马拉松.与第一次马拉松的只求完赛目标不同,第二次当然想取得一个更好的成绩.所以8月份练的比较猛,基本上是练2.3天休息一天,周么还要拉个长于21公 ...
- Oracle11g CentOS7安装记录
1. 操作系统环境.安装包准备 宿主机:Max OSX 10.10.5 虚拟机:Parallel Desktop 10.1.1 虚拟机操作系统:CentOS-7-x86_64-DVD-1511.iso ...