要学习防火墙的知识,首先,我们需要了解标准网络,我们不需要OSI的7层架构,我们只需要了解TCP/IP的标准就可以了
应用层:
常用的应用层通信协议包括HTTP,HTTPS,SMTP,POP3及FTP等,这些协议的主要共性就是从客户端与服务端进行交互,例如我们常用的邮件收发使用的POP3
传输层:
传输层主要定义了数据的传输方法,主要的两种协议就是大家熟知的TCP协议和UDP协议
其中,TCP协议会在传输的过程中检查数据的完整性,所以TCP是可靠的,不会丢失的。UDP协议主要是满足效率方面的要求,堆数据的正确性不做要求
网络层:
使用IP(Internet Protocl)地址来定位网络上的每一台计算机,并采用路由的方法来决定数据的传输路径
链路层:
链路层,又称数据链路层,它是网络的基础设施,可以是以太网,光纤,无线网络等
数据包的传输
数据的传输其实和我们日常的货运差不多,把整段的信息切割成一个个的小碎片,然后发送出去
例如我们通过http协议去访问一个网站,我们首先使用的HTTP协议来get信息,这个过程是不允许有丢失的,所以我们使用的是TCP协议来传输数据。而TCP层的数据有两个很重要的内容:
1:Source Port 源端口
2:Destination port 目标端口
选择好了TCP协议之后,我们只是知道了端口信息,仍然无法找到主机,我们下面通过IP层来找到目标主机
IP层也有两个重要的参数:
1:Source 来源 192.168.1.2
2:Destination 目的 192.168.1.1
这个两个IP地址能让我们的数据在网络上正常的传输,但是这样是不够的,因为这个ip地址可能是个路由器,不可能每个IP都是对应一个服务器,很多时候,一个IP后边隐藏了一个甚至多个子网络
这个时候,我们就需要数据层的MAC地址帮助我们找到具体的目标了
ARP通信协议
IP和MAC地址都是网络上唯一的标识,但是MAC地址只能在相同的路由器中进行操作,不能够跨越路由器,但是在刚开始的时候,两台全新的主机是如何知道局域网中IP地址和MAC地址的对应关系呢? 这个时候ARP通信协议就出现了
如果你去ping一台主机的ip,由于是全新的,所以双方都不知道对方的MAC地址,只有发送端知道接收端的IP地址,这个时候, 发送端会发一个ARP的请求数据包,这个包是一个广播的形式,也就是说,所有的局域网的主机都会受到这条arp请求,这个ARP请求是由2个IP和MAC字段组成,不过接受端只有IP地址,MAC地址为空,(00:00:00:00:00:00),而发送端的IP地址和MAC地址它是知道的,然后只有接受IP正确的主机会处理这个请求。其实就是在群里吼一嗓子: 哪个孙子叫 张三,有人叫李四的,电话是110,找你的电话,不是张三的一看不是找自己,直接忽略,张三看见了,然后就会处理这个请求了。不过就不是在群里说了,而且是单独联系李四了,因为张三已经互道李四的电话了,这样,他俩一打电话,双方就知道姓名和电话的对应关系了
Latest posts by Zhiming Zhang (see all)
- aws eks node 自动化扩展工具 Karpenter - 8月 10, 2022
- ReplicationController and ReplicaSet in Kubernetes - 12月 20, 2021
- public key fingerprint - 5月 27, 2021