子网掩码的作用和意义

  以前链接路由器配置静态IP的时候只是知道将子网掩码改成255.255.255.0,IP地址前三个数字和网关一样最后一个数字改成未被占用的IP就好了,一直没有理解子网掩码到底代表什么意思。之前上《计算机网络》这门课的时候好像听老师讲过,没怎么仔细听,只知道网络地址和主机地址什么的.

  今天看了《TCP/IP详解》才对子网掩码有所了解。下面做个总结。

  子网掩码其实是为了分割网络,比如一个A类地址能容纳的主机数有2^24-2个主机,一般一个组织是不可能用到这么多地址的,势必会造成浪费。但是我们可以通过子网掩码来将一个A类地址划分成多个子网,根据IP和子网掩码可以判断同一个网络地址下的主机是否在同一个网段.

  子网掩码会将IP地址分成三部分,网络号、子网号、主机号。网络号可以直接从IP地址得到,子网号则是IP和子网掩码作&运算减去网络号,剩下的一部分就是主机号.可以根据网络号和子网号来确定两个主机是否处在同一网段

如A机Ip为192.168.1.2,B机Ip为192.168.1.126,子网掩码都是255.255.255.224。

转换成16进制如下:

A机:11000000  10101000  00000001  00000010  &运算后:  11000000  10101000  00000001  00000000

B机:11000000  10101000  00000001  01111110  &运算后:  11000000  10101000  00000001  01100000

掩码: 11111111  11111111  11111111  11100000

&运算后得到的结果不同,所以可以得出A机和B机并不在同一个网段内.

当A机发送数据给B机时,会先将B机的IP与子网掩码进行&运算查看是否在同一个网段,如果不在同一网段内则会把数据发送给网关,在同一个网段的可以直接在数据链路层通信。

时间: 2024-11-03 05:44:35

子网掩码的作用和意义的相关文章

子网掩码的作用和设置方法

子网掩码是每个网管必须要掌握的基础知识,只有掌握它,才能够真正理解TCP/IP协议的设置.以下我们就来深入浅出地讲解什么是子网掩码. IP地址的结构 要想理解什么是子网掩码,就不能不了解IP地址的构成.互联网是由许多小型网络构成的,每个网络上都有许多主机,这样便构成了一个有层次的结构.IP地址在设计时就考虑到地址分配的层次特点,将每个IP地址都分割成网络号和主机号两部分,以便于IP地址的寻址操作. IP地址的网络号和主机号各是多少位呢?如果不指定,就不知道哪些位是网络号.哪些是主机号,这就需要通

指针变量前面类型的作用和意义

1 #include <stdio.h> 2 /* 3 程序功能:理解指针变量前面类型的作用和意义. 4 指针变量前面的类型代表:指针变量内存放地址的寻址能力. 5 */ 6 int main(void) 7 { 8 int a = 0X12345678; 9 10 int *p = &a; 11 12 printf("%X\n",*p);//打印结果为:12345678 原因 :p 是 int * 类型.即:p 的寻址能力为int,也就是4个字节,所以*p 打印1

(linux运维学习总结)IT事业者必须清醒意识到计算机系统在宇宙人生中的本质作用和意义

IT事业者,是从事IT相关事业的人员,比如计算机学院的老师和学生,计算机企业和网络企业的老板员工,通信公司企业的各种人员,等等.由于IT技术已经深入到各行各业各领域,所以: 不光是IT事业者,就是所有正常的人都应该了解认识计算机系统在宇宙人生中的准确作用和意义. 尤其是伴随着第四次工业革命的到来,计算机系统普及越来越全面广泛深入,更要认识到人们发明和使用计算机系统的初心是什么.只有这样做以后,才不会在IT事业的学习和工作当中迷茫无知. 粗略举例来说,现代计算机系统包括: 科研院所国防超算等部门的

定义serialVersionUID的作用与意义整理

实现java.io.Serializable这个接口是为序列化,serialVersionUID 用来表明实现序列化类的不同版本间的兼容性.如果你修改了此类, 要修改此值.否则以前用老版本的类序列化的类恢复时会出错. 实现后如果你用的是工具的话会出来警告,他会提示你,可以自动生成private static final long serialVersionUID = 1L; 为了在反序列化时,确保类版本的兼容性,最好在每个要序列化的类中加入private static final long se

企业建设网站有什么作用和意义——企业公司必看!!!

1,企业形象的展示与提升有利于提升企业形象企业网站的作用更类似于企业在报纸和电视上所做的宣传 企业本身及品牌的广告.不同的是,企业网站的容量较大,企业可以把任何客户想 要的信息和公众的内容放到网站上.此外,企业网站的投资比其他广告方式的投资 要低得多.随着全球化进程的加快,企业越来越多地与行业内外进行信息交流.当 时机成熟时,这种信息交流将成为一种潜在的交易.因此,行业内总会有一些展销 会和展览.在互联网上,信息的交流非常方便,非常便宜,甚至比传统方式更丰富 (如电话.传真).我们不再需要大量的

【转】Android APK的数字签名的作用和意义

1. 什么是数字签名? 数字签名就是为你的程序打上一种标记,来作为你自己的标识,当别人看到签名的时候会知道它是与你相关的 2. 为什么要数字签名? 最简单直接的回答: 系统要求的. Android系统要求每一个Android应用程序必须要经过数字签名才能够安装到系统中,也就是说如果一个Android应用程序没有经过数字签名,是没有办法安装到系统中的! Android通过数字签名来标识应用程序的作者和在应用程序之间建立信任关系,不是用来决定最终用户可以安装哪些应用程序. 这个数字签名由应用程序的作

android 中context的具体作用和意义

context在android中是非常重要的一个类,此类一般用于activity之中 从字面意思来看,这是环境变量,内部实现了一些方法,但是此类也可以看做是一个句柄,用来唯一标示activity 举个例子: context就是一只手,可以有很多行为,也可以操作很多工具,这只手的主人就是持有此context的activiy,这只手可以通过行为操作很多工具,就是用context来操作各个组件等等 所以,综上所述 context即是环境变量,内部有方法,也是句柄,用来标识activity

关于system(”pause“);的作用和意义

注意:不要再return 的语句之后加,那样就执行不到了. system() 是调用系统命令:pause 暂停命令: 如果加有  system(”pause“): 这样在运行到此处时,会显示“Press any key to continue . . .” 也就是 “按任意键继续...”: 在VC 6.0下,要添加如下的头文件! #include <stdlib.h> 在c++  程序中用#include<iostream>也可以

string.xml 的作用以及意义——国际化应用

为什么需要把应用中出现的文字单独存放在string.xml文件中呢? 一:是为了国际化,当需要国际化时,只需要再提供一个string.xml文件,把里面的汉子信息都修改为对应的语言(如,English),再运行程序时,android操作系统会根据用户手机的语言环境和国家来自动选择相应的string.xml文件,这时手机界面就会显示出英文.这样做国际化非常的方便. 二:为了减少应用的体积,降低数据的冗余.假设在应用中要使用"我们一直在努力"这段文字1000次,如果在每次使用时直接写上这几