TCP/IP的那些事--子网掩码
当前互联网使用的主要是IPv4协议,它是第一个被广泛使用,构成现今互联网的基础的协议。但是,随着用户数量的增多,IPv4包含的IP资源在不断减少。或许你会想,不是还有IPv6吗?IPv6的容量足以应付这种情况。的确,IPv6是可以完全实现实名制的。但是,IPv6也才正在崛起中。为了解决现有的这些问题,人们提出一个非常聪明的办法:子网掩码。今天,我们就来聊聊它的二三事。
先说说子网吧。什么是子网?略去百度、wiki那详细的解释,简单来说就是主机下的网络岛。主机使用一个IP地址,但可以和路由器分出许多接口,便产生了网络岛。同一主机下,不同网络岛是可以直接进行沟通的。但如果是不同主机呢?怎么鉴别?也可以进行直接沟通吗?这里就运用到网关了。我们稍后再谈。
子网掩码,或者说是子网络掩码、网络掩码,它的主要作用,就是划分一个IP地址的网络地址和主机地址(对于子网划分后的IP地址,就是网络号+子网号+子网主机号)。网络地址,是ISP申请并用户随机获得的。也是区分不同主机的首要方式。网络号不同,代表着主机的不同。网络号确定,管理员可以安排自己的子网。简单打个比方,一个单位无权决定自己在所属城市的街道名称和门牌号,但可以自主决定本单位内部的各个办公室编号一样。管理员可以设置不同的子网,每个子网下可以多个主机。这样,对IP地址的利用就大大提高了。但只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,使网络正常工作。子网掩码也可以判别该IP地址是在局域网或是远程网上。
对于A类IP地址,子网掩码默认为255.0.0.0;对于B类IP地址,子网掩码默认为255.255.0.0;对于C类IP地址,子网掩码默认为255.255.255.0。读者可以试试将这些数字转化成二进制,会有奇妙的发现喔。(〃'▽'〃)这里就揭晓吧。子网掩码的长度是32位(IPv4的长度也是32位),左边是网络位,用二进制数字“1”表示,1的数目等于网络位的长度;右边是主机位,用二进制数字“0”表示,0的数目等于主机位的长度。这样就能很轻易地算出主机数啦。但注意的是,2的主机位数次方需要减去2.(主机号全为1时,是该网络的广播地址;主机号为0,是该网络的网络号)。
那么,怎么定义子网掩码?首先先确定你要求的IP地址是哪种类型的。下来,你要确定需要的子网数。举个例子吧。比如说,你需要14个子网,可能需要16个。那么,16=2^4.所以,就在第四个字节的前四位设为1,第四节就是“11110000”。把前三个字节补上,转化成二进制就是“11111111 11111111 11111111 11110000”。十进制的形式就是255.255.255.240.所以说,很简单吧。
你可以根据子网数和主机数来计算子网掩码。我这里说说子网数的计算办法。首先,把你需要的子网数减去1(因为计算机是从0开始的),再转化成二进制。记下它的位数,后面非常有用。取得该IP地址的类子网掩码,把主机部分前N(也就是你刚才记录的位数)设为1,便得出你所需子网掩码。来个例子。你的IP地址是168.195.0.0,需要20个子网。减去1转化成二进制,是1011.好,位数是4。B类IP地址子网掩码是255.255.00。B类地址的主机位包括后两个字节,所以这里要把第三个字节的前4位设为1。即255.255.240.0。主机数同理。
判断该IP地址是否是局域网,就把两台计算机各自的IP地址与子网掩码进行AND运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。就这么简单随意。
关于子网掩码的详细知识,请参考百度、google、wiki。本人才疏学浅,如有错误,敬请谅解。
TCP/IP的那些事--子网掩码的更多相关文章
- CCNA第三章子网划分,变长子网掩码(VLSM)和TCP/IP排错考试要点学习笔记
1. 子网划分的好处 缩减网络流量; 优化网络性能; 简化管理; 可以更为灵活地形成大覆盖范围的网络. 2. 如何创建子网的步骤 首先,确认所需要的网络ID数; 其次,确认每个子网中所 ...
- TCP/IP——内外网IP+子网掩码作用+PING(网络总结)
目录: 1.如何区分内网IP和外网IP? 保留字段 2.子网掩码是起什么作用的? 将DNS和IP异或,表示哪段起作用 3.ping到底起什么作用? ping本地.ping远程 下面针对上面三个问题分别 ...
- TCP/IP学习笔记13--IP地址的构成,广播地址,IP多播,子网掩码
现在,我是蔚蓝的 :在此岸或彼岸,我都是蔚蓝的. ---李瑾 IP对应的是OSI模型中的网络层,TCP对应的是传输层.每一个参与通信的主机都会有一个IP地址. IP地址(IPv4地址)含4个字节,每 ...
- 网络TCP/IP分层、子网掩码等基本概念
一.TCP/IP分层: OSI七层网络模型 TCP/IP四层概念模型 对应网络协议 应用层(Application) 应用层 HTTP.TFTP, FTP, NFS, WAIS.SMTP 表示层(Pr ...
- CCNA 第五章 变长子网掩码、汇总和TCP/IP故障排除
1:VLSM:即变长子网掩码,使用长度不同的子网掩码将大型网络划分为众多子网,以满足不同类型的网络设计. 2:运行老式的路由器和例如:RIP V1协议的网络不能使用VLSM,因为它使用分类路由器选择. ...
- 子网划分、变长子网掩码和TCP/IP排错__IP寻址排错
1.Cisco推荐使用的排错四步曲: ping环回地址:ping NIC:ping默认网关和ping远端设备. 1. 打开DOS窗口并ping127.0.0.1.这是一个诊断或环回地址,如果你得到一个 ...
- TCP/IP协议栈概述
TCP/IP协议栈概述 这篇文章虽然只是很粗浅的介绍了ISO/OSI 网络模型,但确实把握住了关键点,某种意义上,简单回顾一下就可以加深对TCP/IP协议栈的理解. 原作者:阮一峰 链接: http: ...
- 计算机网络及TCP/IP知识点(全面,慢慢看)
TCP/IP网络知识点总结 一.总述 1.定义:计算机网络是一些互相连接的.自治的计算机的集合.因特网是网络的网络. 2.分类: 根据作用范围分类: 广域网 WAN (Wide Area Networ ...
- TCP/IP网络知识点总结
学完了计算机网络是时候整理一篇总结了,温故知新.注意:这篇博客很长长长(2.5万字+50图). TCP/IP网络知识点总结 一.总述 1.定义:计算机网络是一些互相连接的.自治的计算机的集合.因特网是 ...
随机推荐
- Xilinx FPGA LVDS应用
最近项目需要用到差分信号传输,于是看了一下FPGA上差分信号的使用.Xilinx FPGA中,主要通过原语实现差分信号的收发:OBUFDS(差分输出BUF),IBUFDS(差分输入BUF). 注意在分 ...
- 深入学习JS执行--单线程的JS
一.介绍 随着js不断学习,你可能会慢慢的好奇,用了这么久的js,却不知道这js在浏览器怎么被执行的,很尴尬.所以,我查阅很多资料来总结JS的执行过程,也分享出来,和大家一起学习. 本篇主要讲单线程的 ...
- short s1 = 1; s1 = s1 + 1;有错而short s1 = 1; s1 += 1正确。为何?
如果你认为表达式(x += i)只是表达式(x = x + i)的简写方式,这并不准确.这两个表达式都被称为赋值表达式.第二个表达式使用的是简单赋值操作符(=),而第一个表达式使用的是复合赋值操作符. ...
- python基础教程——函数
定义函数 //abstest.py def my_abs(x): if x >= 0: return x else: return -x 在该文件的当前目录下启动python解释器,用 from ...
- Vim常用操作-合并行。
刚接触 Vim 会觉得它的学习曲线非常陡峭,要记住很多命令.所以这个系列的分享,不会教你怎么配置它,而是教你怎么快速的使用它. 在开发时为了代码美观,经常会把属性用换行的方式显示. <el-di ...
- 记一次改造react脚手架的过程
公司突然组织需要重新搭建一个基于node的论坛系统,前端采用react,上网找了一些脚手架,或多或少不能满足自己的需求,最终在基于YeoMan的react脚手架generator-react-webp ...
- mssql执行计划查看的一些知识
在MSSQL中,查看较慢语句的执行计划,就是一个比较直观的方式, 如果查看执行计划呢: 1.从右到左,从上到下的顺序阅读执行计划2.执行计划中每个图标代表一个运算符,总开销为100%3.数据从右向左在 ...
- jQuery开发自定义插件 $.extend()与$.fn.extend()
jQuery extend()和jQuery.fn.extend() jQuery提供两个用于封装扩展的方法: 1.$.extend(); 扩展jQuery类方法,即jQuery全局方法 (在全局可直 ...
- 在cmd中运行android.bat报出空指针异常
因启动SDK manager和启动AVD manager 都发生闪退现象,网上很多方法都无法解决 又在cmd 中执行运行 D:\Program Files\Android_SDK\sdk\tools& ...
- 缓存与ABP Redis Cache
缓存与ABP Redis Cache 为什么要用缓存 为什么要用缓存呢,说缓存之前先说使用缓存的优点. 减少寄宿服务器的往返调用(round-trips). 如果缓存在客户端或是代理,将减少对服务器的 ...