引言
我先抛出一个简单的问题。
我所在的公司启用的是独立IP地址,公司下的所有电脑都在一个局域网内,然从每台计算机上查询公网ip地址,都显示的是同一个公网。
这个现象很简单,我继续抛出第二个问题。
手机移动端,查询自己手机的ip地址,查出的ip地址均是省会的一个ip地址,并且可能在某一片区不在同一局域网内的两台计算机显示的公网ip地址是相同的。
带着这样的疑惑,请看下面的叙述。
公网IP地址
公网ip指的是上网的计算机的IP地址是Internet上的非保留地址,在公网上的计算机和Internet上的计算机都可以随意的互相访问。
NAT是用来网络地址的转换,它可以实现内网的IP地址与公网的地址之间的相互转换,将大量的内网IP地址转换为一个或者少量的公网IP地址,减少对公网IP地址的占用
局域网是指在某一区域内由多台计算机互联成的计算机组。局域网能够实现文件管理、打印机共享的功能。局域网是封闭型的,可以由两台计算机组成,也可以由上千台计算机组成。
公网IP地址可以分为以下几类:
1、A类(1.0.0.0 到 127.255.255.255),主要是分配给有许多主机并且局域网网络数量较少的大型网络。
2、B类(128.0.0.0 到191.255.255.255 ),主要是分配给国际性大公司和政府机构。
3、C类(192.0.0.0 到223.255.255.255),主要是分配给小公司校园网研究机构。
4、D类(224.0.0.0 到 239.255.255.255 ),主要是分配给广播地址。
5、E类(240.0.0.0 到255.255.255.255 )。
公网、内网是两种Internet的接入方式。
内网接入方式:上网的计算机得到的IP地址是Inetnet上的保留地址,保留地址有如下3种形式:
1、A 类:10.0.0.0~10.255.255.255
2、B 类:172.16.0.0~172.31.255.255
3、C 类:192.168.0.0~192.168.255.255
内网的计算机以NAT(网络地址转换)协议,通过一个公共的网关访问Internet。内网的计算机可向Internet上的其他计算机发送连接请求,但Internet上其他的计算机无法向内网的计算机发送连接请求。
公网接入方式:上网的计算机得到的IP地址是Inetnet上的非保留地址。公网的计算机和Internet上的其他计算机可随意互相访问。
公网IP和私有IP的区别
在百度直接搜索IP会显示公网IP,在cmd中输入ipconfig,或者在Linux终端下输入ifconfig,会显示出私有ip,这两个ip是不一样的,那么到底有什么区别呢?
公网IP一般是运营商分配的,公网ip才能上网,但是不可能给每一个电脑分配一个IP,ipv4肯定是不够的。所以需要私有IP,这种ip一般是用于局域网的管理,不能直接连上互联网,必须通过公网ip上网。
在很早的时候就预料到了ipv4可能不足,所以在每一类的ip地址中都预留了一部分地址作为私有ip
类型 | ip范围 | 私有地址范围 |
---|---|---|
A | 1.0.0.0~126.255.255.255 | 10.0.0.0~10.255.255.255 |
B | 128.0.0.0~191.255.255.255 | 172.16.0.0~172.31.255.255 |
C | 192.0.0.0~223.255.255.255 | 192.168.0.0~192.168.255.255 |
这也是为什么大多数时候,你使用ipconfig
查到的一般就只是以172.开头的b类私有Ip,或者以192.168开头的c类私有Ip.简单的说,私有ip有下面的几个限制:
- 私有 IP 的路由信息不能对外散播 (只能存在内部网络);
- 使用私有 IP 作为来源或目的地址的封包,不能透过 Internet 来转送 (不然网络会混乱);
- 关于私有 IP 的参考纪录(如 DNS),只能限于内部网络使用 (一样的原理啦)
具体的上网流程
比如在一个小区内的电信用户的公网ip都是相同的,所以我们将数据发送给路由器,然后路由器通过公网ip访问互联网查询到数据,然后路由器再将查询到的数据传递到私有ip地址。这就算我们的上网过程
IP地址、子网掩码、网关、DNS的关系
1、什么是IP地址
所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit
地址。按照TCP/IP协议规定,IP地址用二进制来表示,每个IP地址长32bit
,比特换算成字节,就是4个字节
。
例如一个采用二进制形式的IP地址是“00001010000000000000000000000001”,这么长的地址,人们处理起来也太费劲了。为了方便人们的使用,IP地址经常被写成十进制
的形式,中间使用符号“.
”分开不同的字节。于是,上面的IP地址可以表示为“10.0.0.1”。IP地址的这种表示法叫做“点分十进制表示法”,这显然比1和0容易记忆得多。
2、什么是子网掩码
子网掩码
(subnet mask)又叫网络掩码、地址掩码、子网络遮罩,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。
3、什么是网关
网关
(Gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互连,也可以用于局域网互连。 网关是一种充当转换重任的计算机系统或设备。在使用不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求
。同时,网关也可以提供过滤
和安全
功能。大多数网关运行在OSI 7层协议的顶层--应用层。
4、什么是DNS
DNS
是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
5、IP地址、子网掩码、网关、DNS的关系
IP地址
,标示你电脑的身份!
子网掩码
,可以标示子网划分的情况,所属子网。
默认网关
,数据包默认选择的出口!一般是你的路由器地址!
DNS服务器
,把网站的域名转换成计算机能看懂的IP地址!
简单来说,子网掩码
就是判断两个IP地址,是不是在同一个网段(或称子网),在同一网段的两个地址,可以直接通信。不管是通过IP地址也好,还是通过“计算机名”,都是可以的。如果两个IP地址,不在同一网段,这时候,要想通过IP地址访问另一网段的计算机(也是IP地址),就需要网关地址
。网关地址
就是出口的地址,而且,网关地址,是你最近的一个出口的地址。网关地址总是与你的计算机的IP地址是同一网段的。这一点是非常重要的。如果两台计算机,不在同一网段,如果想使用计算机名(就是类似于compute1、cp2之类的名称,称为NetBIOS名称),这时候,必须要使用WINS服务器来解析(或者手动编辑本机的hosts文件),这就是WINS服务器的做用。
IP地址、子网掩码、网关的关系深入解析
子网掩码是每个网管必须要掌握的基础知识,只有掌握它,才能够真正理解TCP/IP协议的设置。以下我们就来深入浅出地讲解什么是子网掩码。
IP地址的结构:要想理解什么是子网掩码,就不能不了解IP地址的构成。
互联网是由许多小型网络构成的,每个网络上都有许多主机,这样便构成了一个有层次的结构。IP地址在设计时就考虑到地址分配的层次特点,将每个IP地址都分割成网络号
和主机号
两部分,以便于IP地址的寻址操作。
IP地址的网络号
和主机号
各是多少位呢?如果不指定,就不知道哪些位是网络号、哪些是主机号,这就需要通过子网掩码来实现。什么是子网掩码?子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址
和主机地址
两部分。子网掩码的设定必须遵循一定的规则。与IP地址相同,子网掩码的长度也是32位,左边是网络位,用二进制数字“1”表示;右边是主机位,用二进制数字“0”表示。附图所示的就是IP地址为“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”。
子网掩码是“255.255.255.0”的网络:最后面一个数字可以在0~255范围内任意变化,因此可以提供256个IP地址。但是实际可用的IP地址数量是256-2,即254个,因为主机号不能全是“0”或全是“1”。
子网掩码是“255.255.0.0”的网络:后面两个数字可以在0~255范围内任意变化,可以提供2552个IP地址。但是实际可用的IP地址数量是2552,即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地址使用默认子网掩码就可以了。
网络管理之网关篇大家都知道,从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信息,也必须经过一道“关口”,这道关口就是网关
。什么是网关顾名思义,网关(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转发数据包的过程也是如此。所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。
那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。
什么是默认网关
?如果搞清了什么是网关,默认网关也就好理解了。就好像一个房间可以有多扇门一样,一台主机可以有多个网关。默认网关的意思是一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。现在主机使用的网关,一般指的是默认网关。
如何设置默认网关 一台电脑的默认网关是不可以随随便便指定的,必须正确地指定,否则一台电脑就会将数据包发给不是网关的电脑,从而无法与其他网络的电脑通信。默认网关的设定有手动设置和自动设置两种方式。
手动设置:手动设置适用于电脑数量比较少、TCP/IP参数基本不变的情况,比如只有几台到十几台电脑。因为这种方法需要在联入网络的每台电脑上设置“默认网关”,非常费劲,一旦因为迁移等原因导致必须修改默认网关的IP地址,就会给网管带来很大的麻烦,所以不推荐使用。在Windows 9x中,设置默认网关的方法是在“网上邻居”上右击,在弹出的菜单中点击“属性”,在网络属性对话框中选择“TCP/IP协议”,点击“属性”,在“默认网关”选项卡中填写新的默认网关的IP地址就可以了。需要特别注意的是:默认网关必须是电脑自己所在的网段中的IP地址,而不能填写其他网段中的IP地址。
自动设置:自动设置就是利用DHCP服务器来自动给网络中的电脑分配IP地址、子网掩码和默认网关。这样做的好处是一旦网络的默认网关发生了变化时,只要更改了DHCP服务器中默认网关的设置,那么网络中所有的电脑均获得了新的默认网关的IP地址。这种方法适用于网络规模较大、TCP/IP参数有可能变动的网络。
在Internet中的网关一般是指用于连接两个或者两个以上网段的网络设备,通常使用路由器
(Router)作为网关。在TCP/IP网络体系中,网关的基本作用是根据目的IP地址的网络号与子网号,选择最佳的出口对IP分组进行转发,实现跨网段的数据通信。