《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 有为网络服务 「有为网络服务」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

很多朋友多次问到什么是网关、dns、子网掩码,三层交换机,它们定位的用途;确实,因为网络技术在弱电中确实应用非常广泛,我们平时在vip技术群中也是不断的讨论到网关、vlan、三层交换机或子网掩码等问题,今天我们就一起用通俗方式一次性了解清楚。

一、什么是vlan?

VLAN中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。

听上面的概念,肯定有不少朋友是一头雾水的,什么是虚拟局域网?好好的,为什么要划分vlan?

这里举个例:通俗的了解

一所高中,新学期高一招了800个学生,这800个学生,如果放在一个班里,那肯定是管理不过来,面对800个人,老师看了也头疼,这边在授课,那边完全听不到,老师布置什么任务,也会有一些传达不到,老师要是想找某个学生的信息,要从800份信息中去找,极其麻烦,浪费时间;

而实际中,也是一样,电脑A要想要与电脑B通信,于是电脑A就需要发送arp请求,而网络中电脑众多,最终ARP请求会被转发到同一网络中的所有电脑,才能找到电脑B,如此一来,为了找到电脑B,消耗了网络整体的带宽,收到广播信息的计算机还要消耗一部分CPU时间来对它进行处理。造成了网络带宽和CPU运算能力的大量无谓消耗。

那么怎么办呢?

学校就针对这800个学生,分成了10个班,每个班80人,分别命名为高一(1)班,高一(2)班、、、、高一(10)班,每个人都会获得一个班级编号。

1101表示一班01号学生。

1102表示一班02号学生。

1201表示2班01号学生。

同一个班的学生编号尾数不同,其它的都相同。

那么这样老师再管理起来就轻松多了,可以把一班这80人管理的妥妥的,隔壁2班与3班乱成一锅粥也不管一班的事,我就要这一班80人好好上课就行。

这就是vlan,每个班就相当于一个vlan,而每个班名称,就相当于vlan的名称,而每个学生的编号就是ip地址;同班同学(同一个vlan的ip),因为同一个教室,朝夕相处,且可以相互通信,不同班的同学,若不做其它工作,很难往来通信。

所以同一个vlan间,可以相互通信;不同vlan,若不做配置,不能相互通信。

那么不同vlan如何通通信呢?就需要单臂路由与三层交换机。

二、单臂路由与三层交换机

我们知道要实现不同vlan间通信,就必须需要有路由功能,不同VLAN之间相互通信的两种方式(单臂路由、三层交换机)。

什么是单臂路由?

单臂路由的实现方式,其实就是普通二层交换机加路由器,从而实现不同vlan间的可以互相通信。

那什么是三层交换机呢?

对于小型的网络,单臂路由可以应付,但随着VLAN之间流量的不断增加,很可能导致路由器成为整个网络的瓶颈,出现掉包、或者通信堵塞。

为了解决上述问题,三层交换机应运而生。三层交换机,本质上就是“带有路由功能的(二层)交换机”。路由属于OSI参照模型中第三层网络层的功能,因此带有第三层路由功能的交换机才被称为“三层交换机”。

关于三层交换机的内部结构,可以参照下面的简图。

在一台本体内,分别设置了交换机模块和路由器模块;而内置的路由模块与交换模块相同,使用ASIC硬件处理路由。因此,与传统的路由器相比,可以实现高速路由。并且,路由与交换模块是汇聚链接的,由于是内部连接,可以确保相当大的带宽,所以对于正规的项目,需要使用三层交换机来实现网网络间的通信。

三、什么是网关

在了解了vlan与三层交换机后,能不能通信,还需要看网关是否正确。

一、什么是网关

网关(Gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。

二、如何来理解网关

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

按照不同的分类标准,网关也有很多种。TCP/IP协议里的网关是最常用的,在这里我们所讲的“网关”均指TCP/IP协议下的网关。

三、网关的ip地址

那么网关到底是什么呢?

网关实质上是一个网络通向其他网络的IP地址,网关在网段内的可用ip中选一个,不过,一般用的是第1个和最后一个

例如

比如有网络A和网络B,

网络A:的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩255.255.255.0;

如果需要与其它网段通信,那么它的网关可以设置为192.168.1.1,当然也可以设置为网段内其它的一个ip地址。

网络B:的IP地址范为“192.168.2.1~192.168.2.254”,子网掩码255.255.255.0。

如果需要与其它网段通信,那么它的网关可以设置为192.168.2.1,当然也可以设置为网段内其它的一个ip地址。

四、网关是如何实现通信?

在没有路由器的情况下,不同的两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关

如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机(如附图所示)。网络B向网络A转发数据包的过程。

所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。

五、什么是默认网关?

如果搞清了什么是网关,默认网关也就好理解了。就好像一个房间可以有多扇门一样,一台主机可以有多个网关。默认网关的意思是一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。现在主机使用的网关,一般指的是默认网关。

四、什么是DNS

DNS是域名解析服务器(Domain Name System),是把网址变成IP地址的服务器。

DNS说白了是把域名翻译成IP地址用的,这里面举个例子,大家就很容易清楚了。

例如我们在浏览器里面输入www.baidu.com的时候,机器要跟百度这个网站进行**通信**,机器要往外面**发送**数据包,数据包里面要写百度这台服务器的**IP地址**,我们不知道IP地址是多少,那么就需要主机**问DNS服务器**,DNS服务器就自动帮我们把www.baidu.com这个域名**翻译成**了IP地址61.135.169.105。然后写到了数据包的目的IP地址里面就可以进行通信。

就跟我们写信一样,你得写个收信人的地址邮局才能给你发送吧,你给国外写信,你写中文地址邮局不认识,需要这个一个人帮你翻译成英语。这就是DNS的作用,所以你的在本地连接里面写DNS才可以正常浏览网页,如果不设置DNS,是无法正常访问网页的。

五、MAC地址

讲到MAC地址,就不得不提ip地址,这里顺便把ip地址也说下。

IP与MAC

虽然现在已经ipv6了,但我们基本用的大多数还是ipv4协议,所谓ip就是你电脑整个网络的编号。其他电脑想访问电脑就得需要这个编号。但是这个编号很多情况下是一直在变化的。唯一不变的是你的MAC地址:物理地址

MAC是网络中用来标识网卡设备的唯一网络地址。由相关硬件制造商统一分配,每台电脑的MAC地址都是唯一的。

做个比喻,你经常搬家,你没搬一次家都有一个地址,XX小区XX单元XX号,这个就是IP。但是你的名字不变,这个就是MAC,不同的是我们的MAC不允许重名。

我们的IP分为两个部分:如上图分为网络部分主机部分。网络部分好比就是你在XX省XX市XX镇,这个是国家固定下来了的。但是XX小区XX单元XX号是开发商自己定的。两个编号加起来就是你的ip了。不同的是在现实中两个编号的长度是固定的,在网络上A、B、C、D的ip地址却是变化的,这个在前天有详细讲到。

六、子网掩码

子网掩码是为了区分网络位和主机位,上面我们说到过,一个ip地址是由网络部分主机部分。正如一个人的名字由姓与名组成。

那么我们可以把IP地址比作一个人的名字,那么子网掩码就像是一份名单,可以快速的知道那些人同姓,那些人不同姓,把同姓的人分在一组,让他们之前可以互相交流。

举个例子

有一个网段是192.168.1.0-192.1.254,这个网段就像一个村子一样,就称它为安防村,此这网段有个ip地址是192.168.1.1,我们就叫他安防一,另外一个人叫安防二,它的ip地址为192.168.1.2,我们一看他们,就知道他们是同村的。

另外有一个网段,是192.168.0.0——192.168.255.254,我们叫它安村,村里有个同样有两个ip地址为92.168.1.1与192.168.1.2,也叫安防一,安防二,那么问题来了?这个时候,如何区分他们是属于那个村的?

这个时候就需要子网掩码了来判断他们是属于那个网段的,需要把安防一、安防二带到村里去认下,就知道他们是属于那个村了,安防村的网段是255.255.255.0,安村的网段是255.255.0.0。

网络中也会出现类似于“同名”“同姓”的ip地址,如何区分他们到底是属于那个网段,就需要依靠子网掩码了。

文章目录
  1. 1. 一、什么是vlan?
  2. 2. 二、单臂路由与三层交换机
  3. 3. 三、什么是网关
    1. 3.1. 一、什么是网关
    2. 3.2. 二、如何来理解网关
    3. 3.3. 三、网关的ip地址
    4. 3.4. 四、网关是如何实现通信?
    5. 3.5. 五、什么是默认网关?
  4. 4. 四、什么是DNS
  5. 5. 五、MAC地址
  6. 6. 六、子网掩码