目录
通信基础
前言
广播域与冲突域
计算机之间的连接方式
网线直连(交叉线)
同轴电缆
集线器
网桥
前言
举例(计算机6向计算机7相互通信)
交换机
交换机原理
路由器
路由器与其他设备区别:
注意:
举例:以计算机0向计算机3发送数据为例
物理分割与逻辑分割
VLAN
为什么需要vlan
vlan的实现
vlan的成员模式
路由
前言:
静态路由
需求:计算机0向计算机2发送数据
动态路由
路由表
路由表特殊案例
网络基础知识
网络互联网与因特网的关系
ISP
网络的分类
上网方式
1.电话线入户
2.光纤入户
3.网线入户
家用无线路由器的逻辑结构
NAT协议
NAT协议特点
NAT的实现方式
SNAT协议
理解:以电脑1向电脑3通信为例
DNAT协议
代理服务器
特点
正向代理与反向代理
正向代理作用:
反向代理作用:
内网穿透
架构图:
CDN
前言
使用CDN请求流程
cdn的分发流程
VPN
前言
VPN分类
站点——站点
客户端——站点
网络爬虫
网络爬虫原理
网络爬虫之搜索引擎
robots.txt
在互联网中,若两台机器需要进行通信那么就需要知道对方的ip地址,通过arp协议来知道对方的mac地址;最终根据mac地址(网卡地址),输送数据到网卡,被网卡接收;若网卡发现数据的目标mac地址是自己,就会将数据传递给上一层进行处理;若网卡发现数据的目标mac地址不是自己,就会将数据丢弃,不会传递给上一层进行处理
注意:
注意:两台计算机分别设置同一网段的IP地址,后打开一个计算机的命令行界面,通过ping另外一台计算机的方式来检测双方计算机之间的连通性。
注意:
含义:集线器的英文称为“Hub”。集线器的主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。它工作于OSI参考模型第一层,即“物理层”。集线器与网卡、网线等传输介质一样,属于局域网中的基础设备,采用CSMA/CD(即带冲突检测的载波监听多路访问技术)介质访问控制机制。集线器每个接口简单的收发比特,收到1就转发1,收到0就转发0,不进行碰撞检测。
注意:
若集线器连接了1000台设备,若集线器中的一台设备想给另外一台设备发消息,那么一开始的arp广播将会发给1000台设备,若该设备通过arp已经直到了对方的mac地址,此时发数据又得发给1000台设备,但最终只有目标设备接收到此消息,其他设备都将此消息丢弃,那么很长时间都会占用带宽。
含义:网桥是根据物理地址过滤和转发数据包的连接设备,它工作于OSI 模型的数据链路层(对应于TCP/IP 网络的网络访问层)。
首先计算机6不知道计算机7的mac地址,那么会通过计算机7的ip地址来发送arp广播,当该arp广播经过网桥时,网桥便记录了左边接口的计算机6的mac地址,但是网桥此时并不清楚计算机7的mac地址是什么,在那个接口,就会导致该arp广播在整个网段中的所有设备之间进行传播,此时只有计算机7得到该报文没将该报文丢掉,计算机7开始对计算机6进行回应,目标mac地址为计算机6的mac地址,向整个网段的所有设备进行广播,当该报文经过网桥时,网桥记录计算机7的mac地址在左边的接口,并且发现该报文的目标mac地址在自己的左边接口,那么就会阻断该报文流向右边接口,最终计算机6得到报文
注意:
含义:(switch)意为开关是一种用于光电信号转发的网络设备,他的主要作用是把数据包发送到正确的位置。
交换机根据数据包中的目标mac地址直接找到她所对应的物理端口,一台交换机有很多端口,他们都有自己的编号,计算机的网卡通过网线连接到交换机的端口上,这个端口就是一个确定的物理位置,如果知道某个网卡的mac地址我们就能正确的将数据包发送给他,所以在交换机中维护着一张端口与mac地址的映射关系表(mac地址表),想要与某个mac地址通讯时只需要查询一下这个mac地址在哪个端口上然后从对应的端口发送出去即可。
当交换机收到发来的数据帧后查看帧头部,首先查看源MAC地址有没有记录在自己的MAC表中,如果有,那么记录;继续查看目标MAC地址,如果没有,就直接从除了自己以外的所有接口群发(广播),只有是此MAC地址的计算机做出回应给交换机,其他计算机丢弃。交换机后发现目标mac地址对应在1号端口上,那么将此mac地址记录在mac表中,直接从1号口进行转发出去。
注意:
前言:若全球的计算机都用交换机相互连接,那么,由于交换机所连接的设备处于同一网段,那么就会出现广播风暴,后果不堪设想
含义:连接两个或多个网络的硬件设备,在网络间起着网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性网络设备。
计算机0要向计算机3发送消息,首先要获取计算机3的mac地址,因为计算机3和计算机1处于不同的网段,所以计算机1将会通过arp获得网关左接口mac地址(因为设的网关为左接口);计算机0得到网关左接口的mac地址后将消息发送到路由器(源IP:192.168.1.10,目标IP:192.169.2.11;源mac:计算机0mac,目标mac:网关左接口mac),路由器收到该报文后发现目的IP在右接口,进而在右接口发送arp报文来获得电脑3的mac地址,获得电脑3的mac后将数据发送给电脑3(源IP:192.168.1.10,目标IP:192.169.2.11;源mac:网关右接口mac,目标mac:计算机3mac),计算机3收到报文后响应给网关(源IP:192.169.2.11,目标IP:192.168.1.10;源mac:计算机3mac,目标mac:网关右接口mac),网关收到数据后响应给计算机0(源IP:192.169.2.11,目标IP:192.168.1.10;源mac:网关左接口mac,目标mac:计算机0mac)。
含义:VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。VLAN内的主机间可以直接通信,而VLAN间不能直接通信,从而将广播报文限制在一个VLAN内。
将交换机的接口根据业务需要添加到不同的vlan中,从而实现二层隔离
注意:
含义:管理员手动向路由表内添加路由信息
注意:路由器0和路由器1中互相连接的serial接口(串口)必须在同一个网段,主要用于路由器之间的跳转
理解:网络地址下面的框就是记录所谓的路由表,其中193.169.2.0/24 via 194.170.1.2代表当自己请求的目标主机在193.169.1.0/24网段时,那么自己的请求将会路由到194.170.1.2地址中,而静态路由上面的3个选框就是为了添加路由表信息(路由器0请求193.169.2.0/24这个网段时的下一跳是194.170.1.2)
含义:路由器通过路由选择协议(RIP,OSPF)自动获取路由信息
动态路由理解:路由器通过动态路由协议就可以识别自己的网络路径的走法,首先,每个路由器都知道跟自己直连的网段有哪些,若需要了解自己需要走的路径,那么只需要路由之间相互通信即可,询问对方路由有没有自己需要的网段,有则直接将该信息添加到路由表。
关于静态路由与动态路由理解:静态路由为静态添加路由表,动态路由为动态添加路由表
含义:各路由之间相互跳转的依据
含义:(Internet Service Provider)Internet服务提供商,比如移动、电信、网通、铁通等
理解:我们的电脑之所以能够连接到Internet,主要是我们使用了Internet服务提供商所提供的服务,Internet服务提供商去铺设网线、光缆、电话线、路由器等,将这些铺设好之后,我们去买他们的服务,他们就能帮助我们将网络连接到世界各地
注意:我们平时拉的宽带都是通过ISP连接到Internet的
猫:也叫调制解调器,主要作用就是进行数字信号和模拟信号之间的转换
注意:电话线传递的是模拟信号,计算机传递的是数字信号
光猫:光调制解调器,主要进行数字信号和光信号之间的转化
含义:NAT协议是将IP数据报头中的IP地址转换为另外一个IP地址的过程, 主要用于实现私有网络访问公有网络的功能。这种通过使用少量的IP地址代表较多的私有IP地址的方式,将有助于减少IP地址空间的枯竭
注意:NAPT是使用最普遍的一种转换方式,在HomeGW中也主要使用该方式。它又包含两种转换方式:SNAT和DNAT。
含义:(source network address translation)源地址转换是内网地址向外访问时,发起访问的内网ip地址转换为指定的ip地址(可指定具体的服务以及相应的端口或端口范围),这可以使内网中使用保留ip地址的主机访问外部网络,即内网的多部主机可以通过一个有效的公网ip地址访问外部网络。
电脑3指定257端口提供服务
当电脑1与电脑3通信时,电脑1开启随机端口(如255)打开连接准备与电脑3建立——(源IP:192.168.1.2,目标IP:30.0.0.2;源端口:255,目标端口:257),因为电脑1的ip为内网ip不能在公网上进行通信,因此到达路由器进行协议地址转换之后路由器将源ip改为自己的公网ip将源端口改为自己的随机端口(如256)——(源IP:30.0.0.1,目标IP:30.0.0.2;源端口:256,目标端口:257)向电脑3发送信息,电脑3收到信息后准备向30.0.0.1地址的256端口进行回复——(源IP:30.0.0.2,目标IP:30.0.0.1;源端口:257,目标端口:256)该地址的路由器收到了回复找到256端口对应的电脑以及对应的端口(192.168.1.2:255)也就是电脑1,将信息发给电脑1,电脑1收到信息后与电脑3断开连接。
含义:(destination network address translation)目标地址转换,作用是将一组本地内部的地址映射到一组全球地址。
如果我们的内网计算机对外提供服务,则公网上发的请求不能直接到达内网计算机,因此就需要路由器用DNAT技术帮我们转发请求。
例子:192.168.1.10对外提供服务,监听80端口
访问公网(路由器具体的公网地址:221.8.14.91)的8080端口则转到192.168.1.10的80端口,当访问数据包从wan口进入后路由器执行DNAT修改目标ip为192.168.1.10,修改目标端口为80进而把数据包发给了计算机。
正向代理:代理的对象是客户端(帮客户端办事情)
反向代理:代理的对象是服务器(帮服务器办事情)
理解:正向代理是代理服务器代替系统内部来访问外部网络的过程,反向代理是外部请求访问系统时通过代理服务器转发到内部服务器的过程。
作用:用于外网设备访问内网资源
理解:首先准备一台公网IP的服务器,然后在本地开启一个服务,同时该服务与那台服务器进行TCP连接,同时将本地服务所在内网的IP和端口与公网服务器的IP和端口形成映射,那么别人只要访问公网服务器的IP和端口就能直接穿透到本地的内网的IP和端口。
含义:(Content Delivery Network)内容分发网络,通过在现有的internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络边缘,使用户可以就近取得所需的内容,提高用户访问网站的响应速度。
理解:其利用最靠近每位用户的服务器更快的将音乐、图片、视频等资源文件(一般是静态资源)传递给用户。
注意:
理解:如今我想访问资源,首先我们请求DNS服务器来询问自己的域名所对应的IP地址是什么,网站DNS服务器内部是有记录的,他看到我们的域名比较特殊(对应的是CDN服务相关的服务器)没办法直接给我们相应的IP地址,进而请求了CDN的DNS服务器进而CDN的DNS服务器告诉我们IP地址,此时我们拿到的IP地址为CDN全局负载均衡服务器的IP地址,这台服务器根据我们的IP地址来判断那一台节点离我们最近,之后告诉我们去请求那一台的CDN节点,若这台缓存服务器没有我们想要的目标资源,那么缓存服务器便会向源站请求,最终把获取到的内容缓存到缓存服务器,最终把内容发给用户。
push:源服务器把静态内容提前备份给cdn
pull:cdn向源服务器索取相应的静态内容
cdn的加速:cdn不仅会使用户访问服务器距离变近,加载速度变快,同时在文件层面上也会帮你把文件进行最小化或者压缩文档来提升传输效率
含义:虚拟专用网(Virtual Private Network,VPN)是一种利用公共网络来构建的专用网络技术。
核心原理:为了使发送发与接收方可以相互通信,那么两个地方分别配置一个VPN服务器(VPN集线器),发送方发送的数据要经过发送方VPN服务器进行加密,加密的数据通过自己的ISP(互联网服务提供商)进入互联网,之后加密的数据抵达接收方的VPN服务器后进行解密,然后再将数据分配到指定的主机;(发送方与接收方位置可以互相调换)
理解虚拟专线:它不是真正的专线,但是它却实现了专线的功能,发送的数据与接受的数据被加密,在这其中的数据只有两端联通的人才可以看到,而且它也可以突破路由器内网的限制,实现“跳墙”。
过程:发送方开始向接收方发送数据,数据到达发送方服务器时数据会被加密(由于数据被加密,所以在中间人看来就只是两个集线器之间相互通信)当该数据到达接收方服务器时数据会被解密,进而将数据发送到数据接收方
注意:站点对站点意味着两端或多端地点相对固定,链接不间断
过程:首先数据通过ISP的网络发送到VPN服务器(前提需要安装VPN客户端软件,进而在发送数据时,数据会被自动加密),然后VPN服务器再把数据解密发送到真实的服务器那边
注意:这种类型VPN相对灵活,比较适合不需要长时间进行链接的方式
含义:网络爬虫也叫网络蜘蛛,其可以模拟人类使用浏览器操作页面的行为,对页面进行相关操作
理解:爬虫内部有多线程下载器,其可以开多条线程去爬(下载)网站上的网页,下载完网页后其会将网页上的文本数据和图片数据下载到本地,下载完后其会继续分析该网页上有没有其他稳定的链接;若分析出它下面有新的链接,其就会把分析到的url放到一个队列里面去;这个队列就会不断地取出url来处理,该url又会输送到多线程下载器内,多线程下载器便会根据该url又下载一个网页,如此循环往复。
理解:我们在搜索引擎中可以搜索到多个网站,这主要是爬虫在私底下24小时不停的爬数据,当它爬到网页的时候,其就会建立索引进而将数据放到数据库,当用户搜索的时候,其就会用到排名算法去数据库里面查询相关的数据,最终把结果交给用户。
含义:robots.txt是存放在网站根目录下的文本文件,比如https://www.baidu.com/robots.txt
作用:用来告诉爬虫,那些内容是不应该被爬取的,那些是可以被爬取的
注意: