HCNP学习笔记之IP地址、子网掩码、网关的关系

0x00 概述

网络管理中的IP地址、子网掩码和网关是每个网管必须要掌握的基础知识,只有掌握它,才能够真正理解TCP/IP协议的设置。

以下我们就来深入浅出地讲解什么是子网掩码。  IP地址的结构 要想理解什么是子网掩码,就不能不了解IP地址的构成。

互联网是由许多小型网络构成的,每个网络上都有许多主机,这样便构成了一个有层次的结构。IP地址在设计时就考虑到地址分配的层次特点,将每个IP地址都分割成网络号和主机号两部分,以便于IP地址的寻址操作。  IP地址的网络号和主机号各是多少位呢?如果不指定,就不知道哪些位是网络号、哪些是主机号,这就需要通过子网掩码来实现。

0x01 子网掩码subnet

什么是子网掩码 子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。子网掩码的设定必须遵循一定的规则。与IP地址相同,子网掩码的长度也是32位,左边是网络位,用二进制数字“1”表示;右边是主机位,用二进制数字“0”表示。

“192.168.1.1”和子网掩码为“255.255.255.0”的二进制对照。其中,“1”有24个,代表与此相对应的IP地址左边24位是网络号;“0”有8个,代表与此相对应的IP地址右边8位是主机号。这样,子网掩码就确定了一个IP地址的32位二进制数字中哪些是网络号、哪些是主机号。这对于采用TCP/IP协议的网络来说非常重要,只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,使网络正常工作。  常用的子网掩码有数百种,这里只介绍最常用的两种子网掩码,它们分别是“255.255.255.0”和“255.255.0.0”。

 1. 子网掩码是“255.255.255.0”的网络:最后面一个数字可以在0~255范围内任意变化,因此可以提供256个IP地址。但是实际可用的IP地址数量是256-2,即254个,因为主机号不能全是“0”或全是“1”。

2. 子网掩码是“255.255.0.0”的网络:后面两个数字可以在0~255范围内任意变化,可以提供255*255个IP地址。但是实际可用的IP地址数量是255*255-2,即65023个。

IP地址的子网掩码设置不是任意的。如果将子网掩码设置过大,也就是说子网范围扩大,那么,根据子网寻径规则,很可能发往和本地机不在同一子网内的目的机的数据,会因为错误的判断而认为目的机是在同一子网内,那么,数据包将在本子网内循环,直到超时并抛弃,使数据不能正确到达目的机,导致网络传输错误;如果将子网掩码设置得过小,那么就会将本来属于同一子网内的机器之间的通信当做是跨子网传输,数据包都交给缺省网关处理,这样势必增加缺省网关的负担,造成网络效率下降。因此,子网掩码应该根据网络的规模进行设置。 如果一个网络的规模不超过254台电脑,采用“255.255.255.0”作为子网掩码就可以了,现在大多数局域网都不会超过这个数字,因此“255.255.255.0”是最常用的IP地址子网掩码;笔者见到的最大规模的中小学校园网具有1500多台电脑,这种规模的局域网可以使用“255.255.0.0”。  默认子网掩码 在Windows 2000 Server中,如果给一个网卡指定IP地址,系统会自动填入一个默认的子网掩码。这是Windows 2000 Server为了节省用户输入时间自动产生的子网掩码。比如,局域网最常使用的IP地址“192.168.x.x”默认的子网掩码是“255.255.255.0”。一般情况下,IP地址使用默认子网掩码就可以了。

0x02 网关gateway

大家都知道,从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信息,也必须经过一道“关口”,这道关口就是网关。

什么是网关 顾名思义,网关(Gateway)就是一个网络连接到另一个网络的“关口”。 按照不同的分类标准,网关也有很多种。TCP/IP协议里的网关是最常用的,在这里我们所讲的“网关”均指TCP/ IP协议下的网关。

那么网关到底是什么呢?网关实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192. 168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机。网络B向网络A转发数据包的过程也是如此。而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机。网络B向网络A转发数据包的过程也是如此 所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。  什么是默认网关 ?如果搞清了什么是网关,默认网关也就好理解了。就好像一个房间可以有多扇门一样,一台主机可以有多个网关。默认网关的意思是一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。现在主机使用的网关,一般指的是默认网关。  如何设置默认网关 一台电脑的默认网关是不可以随随便便指定的,必须正确地指定,否则一台电脑就会将数据包发给不是网关的电脑,从而无法与其他网络的电脑通信。默认网关的设定有手动设置和自动设置两种方式。  1。手动设置:手动设置适用于电脑数量比较少、TCP/IP参数基本不变的情况,比如只有几台到十几台电脑。因为这种方法需要在联入网络的每台电脑上设置“默认网关”,非常费劲,一旦因为迁移等原因导致必须修改默认网关的IP地址,就会给网管带来很大的麻烦,所以不推荐使用。在Windows 9x中,设置默认网关的方法是在“网上邻居”上右击,在弹出的菜单中点击“属性”,在网络属性对话框中选择“TCP/IP协议”,点击“属性”,在“默认网关”选项卡中填写新的默认网关的IP地址就可以了。需要特别注意的是:默认网关必须是电脑自己所在的网段中的IP地址,而不能填写其他网段中的IP地址。  2. 自动设置:自动设置就是利用DHCP服务器来自动给网络中的电脑分配IP地址、子网掩码和默认网关。这样做的好处是一旦网络的默认网关发生了变化时,只要更改了DHCP服务器中默认网关的设置,那么网络中所有的电脑均获得了新的默认网关的IP地址。这种方法适用于网络规模较大、TCP/IP参数有可能变动的网络。另外一种自动获得网关的办法是通过安装代理服务器软件(如MS Proxy)的客户端程序来自动获得,其原理和方法和DHCP有相似之处。由于篇幅所限,就不再详述了。  通过简单的实验深入透析子网掩码,网关与ARP协议的作用子网掩码,网关与ARP协议的概念和工作原理是学习网络知识的初学者首先遇到的几个重要的知识点,其中子网掩码与ARP协议的作用和基本工作原理更是思科网络技术学院教程Semester 1中的重点与难点,初学者往往难以一下子掌握这些抽象复杂的机理。因此很有必要通过实验来帮助学员更加深入直观地了解子网掩码,网关与ARP协议的基本概念与工作原理。在对实验进行讲解之前,首先对子网掩码,网关与ARP协议的基本知识进行概述子网掩码子网掩码的主要功能是告知网络设备,一个特定的IP地址的哪一部分是包含网络地址与子网地址,哪一部分是主机地址。网络的路由设备只要识别出目的地址的网络号与子网号即可作出路由寻址决策,IP地址的主机部分不参与路由器的路由寻址操作,只用于在网段中唯一标识一个网络设备的接口。本来,如果网络系统中只使用A、B、C这三种主类地址,而不对这三种主类地址作子网划分或者进行主类地址的汇总,则网络设备根据IP地址的第一个字节的数值范围即可判断它属于A、B、C中的哪一个主类网,进而可确定该IP地址的网络部分和主机部分,不需要子网掩码的辅助。  但为了使系统在对A、B、C这三种主类网进行了子网的划分,或者采用无类别的域间选路技术(Classless Inte r-Domain Routing,CIDR)对网段进行汇总的情况下,也能对IP地址的网络及子网部分与主机部分作正确的区分,就必须依赖于子网掩码的帮助。  子网掩码使用与IP相同的编址格式,子网掩码为1的部分对应于IP地址的网络与子网部分,子网掩码为0的部分对应于IP地址的主机部分。将子网掩码和IP地址作"与"操作后,IP地址的主机部分将被丢弃,剩余的是网络地址和子网地址。例如,一个IP分组的目的IP地址为:10.2.2.1,若子网掩码为:255.255.255.0,与之作"与"运算得:10.2.2.0,则网络设备认为该IP地址的网络号与子网号为:10.2.2.0。

0x03 IP地址 IP address

IP地址英文IP address是分配给主机的32位地址,它标识了在网络上的一个节点,并且指定了在一个互连网络上的路由信息.  INTERNET上的每台主机(HOST)都有一个唯一的IP地址.  但我们这些拨号上见用户,或ISDN用户,网络接入商为节约资源,一般采用动态IP,即是说:你每次拨号上网ISP就分配一个IP给你.  IP,通俗,不规范的说:它相当于你家的电话号码,或是你家的地址.所以除特殊情况外,不要随便告诉你的IP给别人知道.  (可想知道现在网上什么人都有.IP炸弹乱飞.一不小心你就PK啦!说不好你的机有安全漏洞,别人黑啦你.)  IP协议就是使用这个地址的主机之间传递信息,这是INTERNET能够运行的基础.  IP地址的长度为32位,分为4段,每段8位,用十进制数字表示,每段数字范围为1~254,段与段之间用点隔开.例如:202.103.44.194.  IP地址有两部分组成,一部分为网络地址,另一部分为主机地址.IP地址分为A,B,C,D,E5类.常用的是B和C两类. 

A类: 
A类IP地址的第一段数字范围为1~127,第个A类地址可连接16387064台主机,INTERNET上有126个A类地址 
B类: 
第一段数字范围为128~191,每个B类地址可连接64516台主机,INTERNET上有16256个B类地址。 
C类: 
192~233,可接254台主机,有2054512个 
D: 
224~239,D类地址用作多目的的地信息的传输,作备用 
E: 
240~254。E类地址保留,仅作为INTERNET的实验和开发之用。 

仅仅靠WINDOWS不能打开网页。如果想办到,必须用IIS等软件辅助。 

0x04 DNS Domain Name Service

DNS 全名叫 Domain Name Server,中文俗称“域名服务器”,在说明 DNS Server 之前,可能要先说明什么叫 Domain Name(域名)。正如上面所讲,在网上辨别一台电脑的方法是利用 IP地址,但是 IP用数字表示,没有特殊的意义,很不好记,因此,我们一般会为网上的电脑取一个有某种含义又容易记忆的名字,这个名字我们就叫它“Domain Name"。 例如:对著名的YAHOO!搜索引擎来说,一般使用者在浏览这个网站时,都会输入[url]http://www.yahoo.com[/url],很少有人会记住这台Server的 IP 是多少?所以[url]http://www.yahoo.com[/url]就是YAHOO!站点的 Domain Name。这正如我们在跟朋友打招呼时,一定是叫他的名字,几乎没有人是叫对方身份证号码的吧!但是由于在 Internet 上真实  辨认机器的还是IP,所以当使用者在浏览器中输入Domain Name 后,浏览器必须先到一台有 Domain Name 和 IP 对应信息的主机去查询这台电脑的 IP,而这台被查询的主机,我们称它为 Domain Name Server,简称 DNS,例如:当你输入[url]http://www.yahoo.com[/url]时,浏览器会将[url]http://www.yahoo.com[/url]这个名字传送到离它最近的 DNS Server 去做辨认,如果查询到结果,则会传回这台主机的 IP地址,进而跟它发生连接,但如果没有查询到,就会出现类似 DNS NOT FOUND 等告警信息。所以一旦你的电脑的DNS Server 设置不正确,就好比是路标错了,电脑也就不知道该把信息送到哪里。  由于ISP的拨号服务器一般都有缺省的DNS,所以你可以不用设置DNS,如果你需要指定一台DNS,你一定要了解这台DNS的准确IP(比如福州的163用户的DNS为202.101.98.55)。DNS设置方法如下:在“控制面板”下打开“网络”里的“TCP/IP"的“属性”,在“DNS设置”栏目选择“启用DNS",并将DNS的IP地址添加即可。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏电光石火

windows server 2008解决无法PING通问题

今天安装服务器(server 2008),配置完IP地址后,发现局域网其它电脑无法PING通服务器,测线仪测试链路都正常,网线接别的电脑也正常,以为是网卡问题,...

24770
来自专栏hrscy

socket的概念与网络通信要素

网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端成为一个 socket。

13640
来自专栏Play & Scala 技术分享

快速阅读:MongoDB 3.6 新特性

22940
来自专栏Petrichor的专栏

ping检测

网上有很多这样的 站长工具网站 ,随便找一个,在 ping检测搜索框 敲入 ping <ip> :

21730
来自专栏Java架构沉思录

再谈分布式ID生成方案

昨天沉思君分享了一篇关于分布式ID生成方案的文章《分布式ID常见解决方案》,文中介绍了几种常见的分布式ID生成方案,并讨论了其优缺点。刚好最近沉思君在看李艳鹏老...

15740
来自专栏技术博文

Linux系统管理员的命令行工具箱目录

系统管理员(sysadmins)负责日常维护生产系统和服务。其中一个关键任务就是保证功能性服务能24小时工作。为了这个,他们得很小心地计划备份方式,灾难管理策略...

508100
来自专栏phodal

你的 GitHub 子域名可能已被劫持

昨晚,在我快睡觉的时候,收到了一堆友善的警告邮件。大意是,我指向 GitHub 的子域名被劫持了。

19320
来自专栏程序员宝库

webpack 4 升级指北

2018年2月25日,刚过完年webpack就给了一个加班红包。webpack4经过1个月的缓冲期,终于发布了正式版,那么抛给广大开发者的问题又来了,我是不是要...

75770
来自专栏PHP在线

在Mac下使用MAMP Pro环境

以前,我使用Windows作为自己的工作系统,后来,改用Mac作为自己的主要工作系统了。 在Windows下,快速搭建*AMP环境,使用xampp或者WAMP之...

83770
来自专栏小文博客

网站“动静分离”分析及实战

78030

扫码关注云+社区

领取腾讯云代金券