网络安全基础知识笔记-1

看小码哥教育李明杰版块和华为官网的精品课中所获得的一些知识。

1. NAT技术

(1)NAT技术就是将私有的ip地址转换为公有ip地址,用于访问公网。

(2)比如下图所示,内网用户10.1.1.1要访问外网123.3.2.3,就会先经过防火墙技术转换成本区域(如本学校)的公网IP123.3.2.1之后,再去访问外网。外网返回的流程也是一样的,先发给防火墙,防火墙做进一步的解析,把数据发给内网用户。

网络安全基础知识笔记-1_第1张图片

(3)当然以上这种转换方式,如果内网又1000个用户,那么就需要1000各公网IP,这种是不现实的,对于解决ipv4地址短缺来说没有效果,所以要加上端口号。端口号可以让外网区分到底发给哪个内网用户。

(4)备注:

  • NAT地址转换可以布置在防火墙上,也可以布置在路由器上。网上有个说法:“路由器对NAT的支持,不如防火墙,如果两个都有,一般都做在防火墙上。”
  • 如果网警想要找到你的IP,一开始找到的是肯定是公网IP,但是也能顺着运营商找到你的私网IP。
  • NAT可以静态转换(手动配置NAT映射表,一对一转换)、动态转换(定义外部地址池,动态随机转换,一对一转换)、PAT(端口地址转换,多对一转换,最大程度的节约公网IP资源,采用端口多路复用方式,如图所示,通过端口号标识不同的数据流,是目前应用最广泛的NAT实现方式。)

2. 客户端到服务器的请求过程:

端口号:分为TCP和UDP头部,由于服务器里面有很多个端口号,不同的端口号对应不同的功能,所以运输层需要加上端口号,只有找到正确的端口号,才能知道到了服务器之后应该找哪个应用。

IP地址

MAC地址:也就是网卡地址,因为一台服务器/主机上面可能有多个网卡,所以需要确定

端口号+IP地址+MAC地址=准确的找到传输信息的对方。(如果没有MAC,则是广播)

二进制流:物理层的

路由器(帮助找到主机/服务器)拿到包的时候也会层层解包,解包到网络层的时候,就可以知道包内的IP地址.

网络安全基础知识笔记-1_第2张图片

 3. TCP和UDP的区别

TCP是可靠的传输,可靠在它不会丢掉信息,比如百度搜索框就是TCP的传输,信息虽然有延迟,但是信息的内容不会丢掉;

UDP是不可靠的传输,不可靠在它会丢信息内容,比如视频聊天和看直播的时候,网络不好的情况下经常15:21分发出的信息,可能15:41才收到信息。

网络安全基础知识笔记-1_第3张图片

 补充:前面的三次是建立连接的三次握手,后面的四次是释放连接的四次挥手。

4.  编程的模式

客户端访问服务器,首先通过客户端的IP地址找到客户端的MAC地址(网卡地址),然后通过客户端的MAC地址找到服务器的MAC地址,然后通过MAC地址找到服务器的IP地址。(一个客户端可能有很多个网卡地址,所以外部的网络是先通过网卡地址然后再找到IP地址的。)

客户端有很多种软件,比如说QQ、微信、王者荣耀等,然后服务器上也有很多服务器软件,每一个服务器软件上有很多软件对应的后台。如果客户端要下载一个文件,那么就要向服务器发送请求,必须先找到80端口,然后服务器里面的服务器软件会根据发过来的请求(比如请求QQ文件)找到对应的QQ项目的代码,然后去处理问题。

网络安全基础知识笔记-1_第4张图片

如果说开发人员的Java代码去处理客户端的请求,或者客户端发来一个请求,那么必须通过服务器上的某个端口,然后到达服务器,服务器启动JVM,然后JVM启动加载一个服务器软件(Java里面的服务器软件就是Tomcat),然后Tomcat软件执行Java代码。

网络安全基础知识笔记-1_第5张图片

假设客户端要去访问8080端口的QQ,那么客户端需要输入网址:http://IP地址:端口号/项目。【其中http是一种协议,表示客户端通过http协议去访问;IP地址确定唯一的服务器;服务器里面有很多个服务器软件,到底是哪个服务器软件,要通过端口号来识别;找到服务器软件之后,要找哪个项目,比如QQ项目;】

网络安全基础知识笔记-1_第6张图片

所以说,编程的时候,要先设置一个服务器,可以在自己电脑上安装一个服务器软件,然后客户端是自己,服务器也是自己。Java开发必须安装的软件有JDK、Tomcat、IntelliJ IDEA UItimate(其中的JDK文件就是上图所说的JVM)。

5. 计算机之间的通信基础

网络安全基础知识笔记-1_第7张图片 

传输数据的时候,如果ping过,那么对方的IP地址和MAC地址能够获取,此时能够通过ICMP协议通信。如果不ping的话,只知道对方IP地址而不知道对方的网卡信息,是不能够发送消息给对方的,如果必须发送消息,那就通过ARP协议(广播)来找到对方,注意ARP协议只在同一个网段中才有用,ARP协议的作用是通过IP地址找到对方的MAC地址。不知道对方MAC地址的情况下传输数据的过程如下图所示。(有6条数据但是仅有两个回合,一是计算机0通过ARP协议获取对方MAC地址,然后是通过ICMP协议正常的一次请求信息。第一条数据表示从计算机0开始,第二条数据表示0-->1,第三条数据是1-->0)

网络安全基础知识笔记-1_第8张图片

6. 集线器

集线器是没有智商的,集线器需要在同一个网段。集线器上的某一台电脑需要发送消息给另一台电脑的时候,会广播发送给同一个集线器里面的所有电脑,同样回复过来的信息也会发送给所有电脑。第一次在不知道接受放MAC地址的时候,是这样广播的,通过ARP协议;但是之后(会有缓存MAC地址,往后所有发送消息时都知道对方的IP和MAC)以ICMP协议发送消息的时候还是以广播的形式发送数据包,这是因为集线器没有智商,没有缓存(计算机才有缓存,能记录下IP和MAC)。

知道自己电脑的IP和MAC命令:arp -a

网络安全基础知识笔记-1_第9张图片

集线器产生的问题:如果集线器群之间连接的电脑有1000台,那么这1000台电脑都得对发过来的数据包进行操作。解决办法就是集线器。

7. 网桥

特点:能够通过学习来得知每个接口另一侧的MAC地址,从而起到隔绝冲突域的作用(网桥两边自成一个冲突域)。

如图所示,最开始IP和MAC没有绑定的时候,是执行ARP协议,网桥0的接口有MAC地址表,左边会记录自计算机6的MAC地址,然后发送消息到集线器0,最终到达计算机2;回消息的时候,网桥右边会记录来自计算机2的MAC地址,一来一回之后,使用的就是ICMP协议,就能够记住到底应该发往哪个集线器。

网络安全基础知识笔记-1_第10张图片

8. 交换机 

  • 特点:集线器+网桥的功能。相当于接口更多的网桥,带有智商,有好多的接口,都可以记住MAC地址,学习数据应该发往哪条线路。全双工通信(你发消息给我的同时,我也可以发消息给你)
  • 当然一开始交换数据也是用ARP广播,然后在交换机记住之后,就用ICMP协议。
  • 比集线器安全。这一点是因为如果使用集线器,那么可以在一台电脑上使用抓包工具,那么就能够从包的信息里面破译数据(猜测!!!
  • 但是如果全球的计算机都用交换机链接,说明全球的交换机都在同一个网段。显然不行。并且如果我要发消息到A国,那么首次发信息需要广播,此时全球的计算机都能收到我的信息。

交换机接口的基本配置:

其中,在命令前加undo关键字,即为undo命令行。 undo命令行一般用来恢复缺省情况、禁用某个功能或者删除某项配置。

网络安全基础知识笔记-1_第11张图片

 

9. 交换技术热冗余带来的回环问题--STP操作

网络安全基础知识笔记-1_第12张图片 

网络安全基础知识笔记-1_第13张图片

 10. 路由器

跨网段必须用到路由器

(1)特点:严禁广播风暴。在不同网段之间转发数据,并隔绝广播域。

(2)如果此时计算机2需要发消息到计算机5。

首先,主机大数据之前,会判断目标IP地址是否跟自己在同一个网段。

然后同一个网段,发ARP广播(交换机或集线器);不在同一个网段,用网关(由路由器提供网关,下图所示的路由器有左右两个网关)传递到对应的网关。

最后,路由器左边的网关和左边处于同一个网段,一般是*.*.*.1。

网络安全基础知识笔记-1_第14张图片

 

所以计算机2发送消息到计算机5的时候,必须在计算机2上配置网关信息,才能保证发消息给不同网段的计算机时,信号能够传输到路由器上,此时计算机2上配置的网关信息就是路由器左边的网关。

网络安全基础知识笔记-1_第15张图片

 

不同网段的计算机发送消息,首次也是ARP协议,因为计算机需要知道网关的MAC地址,此时网关也算是一个口。然后网关返回MAC地址。之后再计算机2使用ICMP协议发送消息到路由器。。。此时路由器也是需要找到计算机5的MAC,所以还是ARP协议,等计算机5返回其MAC地址后,再把数据包用ICMP协议传到计算机5。总之经过路由器发送消息时的协议是ARP-ICMP-ARP-ICMP-ICMP-ICMP……

(3)网关:需要合理的IP地址,网关设置不是固定的,只要保证在同一个网段就成。

(4)默认情况下,路由器只知道跟它直连的网段,非直连的网段需要通过静态路由、动态路由告诉它。其中静态路由适合于小规模的网络,由管理员手动添加路由信息;动态路由适用于大规模网络,通过路由选择协议如RIP、OSPF自动获取路由信息。

(5)计算机通过路由器发消息的过程。

A。一般情况下直接发送到对应交换机:如图所示,共有5个网段(上下左右中间),计算机0想要发消息给计算机3,那么需要配置路由器0的静态路由(网络193.169.2.0,掩码255.255.255.0,下一跳194.170.1.2;命令配置用ip route 193.169.2.0 255.255.255.0 194.170.1.2),从配置可以看出,路由网络是计算机3所在的网段,下一跳地址是路由器1左边的网关。

网络安全基础知识笔记-1_第16张图片

 

路由器配置上的FastEthernet口是以太网口用于连接交换机的,Serial口是表示串口,连接其它路由器的。

B。指定固定IP地址:如果计算机0访问计算机4,由于之前路由器0已经配置了静态路由193.169.1.0,所以可以直接访问,如果说配置的静态路由是193.169.1.11(如下图所示),那么就是指定IP地址将信息发送到计算机4.

网络安全基础知识笔记-1_第17张图片

 

C。发消息到对应路由器上所有IP:配置静态路由的为193.169.0.0 255.255.0.0 194.170.1.2

(6)总结路由器配置的几种方式

特定主机路由:193.169.1.10 255.255.255.255 194.170.1.2【子网掩码全1】

网络路由:    193.169.1.0  255.255.255.0   194.170.1.2【网段】

汇总路由:     193.169.0.0  255.255.0.0      194.170.1.2【路由器上全网段】

                    193.0.0.0    255.0.0.0         194.170.1.2【路由器上全网段】

默认路由:    0.0.0.0       0.0.0.0           194.170.1.2【路由器不知前路】

越精确,优先级越高。实在不知道怎么走,才会选择默认路由。

(7)案例,配置如图所示的路由表。

路由器0:193.169.1.0/24-->200.0.0.2

          194.170.1.0/24-->200.0.0.2

          196.171.1.0/24-->200.0.0.2

路由器1:192.168.1.0/24-->200.0.0.1

0.0.0.0/0      -->200.0.1.2

(因为右边路由器比较多,因此右边统一默认路由,左边仅有一个,因此配特定路由)

网络安全基础知识笔记-1_第18张图片

 

11. MAC地址

(1)每一个网卡的物理MAC地址都是唯一的,但是MAC可以篡改。

有些地方会在交换机上设置允许上网的MAC地址,比如单位将IP地址和MAC地址绑定。如果不绑定的话,可以将自己电脑的MAC改成交换机可上网列表内的MAC,就可以蹭网,当然一旦两台一样的MAC出现在网段中,肯定有一台电脑不能上网

(2)

网络安全基础知识笔记-1_第19张图片

(3)

(4)一旦IP对应的网卡地址换了,则会自动重新ARP一次。

(5)网段计算工具:https://www.sojson.com/convert/subnetmask.html

12. 域名

备注:根域名其实就是一个点。如baidu.com.。最后一个点是根域名,com是顶级域名,baidu是二级域名。

网络安全基础知识笔记-1_第20张图片

 13. DNS

应用层协议。

进行域名解析的时候,首先是

网络安全基础知识笔记-1_第21张图片

网络安全基础知识笔记-1_第22张图片 

 

14. 静动态ip地址

(1)动态ip地址是通过DHCP协议来完成的。

◼DHCP(Dynamic Host Configuration Protocol),译为:动态主机配置协议

pDHCP协议基于UDP协议,客户端是68端口,服务器是67端口

◼ DHCP服务器会从IP地址池中,挑选一个IP地址“出租“给客户端一段时间,时间到期就回收它们

平时家里上网的路由器就可以充当DHCP服务器,分配给自己ip地址(如192.168.3.1是如下截图的网关,192.168.3.3是图示的自己的ip地址。)

网络安全基础知识笔记-1_第23张图片

(2)DHCP分配IP的过程

网络安全基础知识笔记-1_第24张图片

 

(3)细节补充

◼ DHCP服务器可以跨网段分配IP地址么?(DHCP服务器、客户端不在同一个网段)

p可以借助DHCP中继代理(DHCP Relay Agent)实现跨网段分配IP地址

◼ 自动续约

p客户端会在租期不足的时候,自动向DHCP服务器发送REQUEST信息申请续约

◼ 常用命令

pipconfig /all:可以看到DHCP相关的详细信息,比如租约过期时间、DHCP服务器地址等

pipconfig /release:释放租约

pipconfig /renew:重新申请IP地址、申请续约(延长租期)

  1. HTTP

(1)设计HTTP最初的目的是:提供一种发布和接收HTML页面的方法,由URI来标识具体的资源(比如下图所示,上一行的html仅能在自己电脑上定位资源;而下一行的内容能在全网定位资源,其输出是全网唯一的)。后面用HTTP来传递的数据格式不仅仅是HTML,应用非常广泛。

你可能感兴趣的:(web安全,网络,网络协议)