计算机网络模型
网络、密码学
# WEB常用的加密算法
非对称加密(一个密钥双方用):RSA、DSA
对称加密(公钥私钥加密、签名):DES、AES
散列算法(生成固定长度值):MD5、SHA、Base64
# 网络七层协议
应用层:RDP、HTTP、FTP、Telnet、FTP、SMTP
表示层
会话层
传输层:TCP、UDP
网络层:IP、ICMP
链路层:ARP
物理层
# 网络设备
传输层/应用层:网关、防火墙
网络层:路由器
链路层:网桥,交换机
物理层:中继器、集线器
常见端口
# 常见端口
20/21 # FTP
22 # SSH
23 # Telnet
25 # SMTP
53 # DNS
80 # HTTP(Apache、Nginx、IIS)
110 # POP3
443 # HTTPS
7001 # Weblogic
8080 # JBoss、Tomcat
# 数据库
1433 # MsSQL(SQL Server)
1521 # Oracle
3306 # MySQL
6379 # Redis
27017 # MongoDB
HTTPS 建立过程
三次握手四次挥手
# 三次握手
1. 第一次握手:客户端发送一个SYN码给服务器,请求建立连接
2. 第二次握手:服务器会返回一个 SYN+ACK 给客户端,表示可以建立连接
3. 第三次握手:客户端再次发送ACK给服务器,服务器验证ACK没有问题,则建立起连接
三次握手成功,就可以进行数据传输了(中断连接可以是客户端也可以是服务端)
# 四次挥手
1. 第一次挥手:客户端发送FIN报文,通知服务器数据已经传输完毕
2. 第二次挥手:服务器接收到之后,会发送ACK给客户端,告诉客户端数据还没有传输完成
3. 第三次挥手:等服务器已经传输完毕之后,再次发送FIN通知客户端,表示数据已经传输完毕
4. 第四次挥手:客户端再次发送ACK,进入TIME_WAIT状态,服务器和客户端关闭连接
ARP 协议
# ARP 也叫(地址解析协议),负责完成 IP地址 向 MAC地址 的动态映射。ARP是通过一个缓存表来执行这种转换的。
# 当在ARP缓存中没有找到地址时,则向网络发送一个广播请求,网络上所有的主机和路由器都接收和处理这个ARP请求。
# 但是只有相同IP地址主机或路由器,才会发回一个ARP响应,应答中包含它的IP地址和物理地址。
# 这个响应保存在请求主机的ARP缓存中。其他主机或路由器都丢弃此响应。
# ARP 欺骗
1.A 要和 C 通信,A 发出ARP包询问谁是 C? 请回复 A
2.这时 B 在疯狂的向 A 回复,我是C,我的地址是 C的地址
3.由于ARP协议不会验证回复者的身份,造成 A 错误的将 C 的MAC映射为 B 的地址。
VMWare 三种网卡
# Bridged(桥接模式)
在物理机中虚拟出一个交换机,所有桥接设备(包括物理机)都连接到这个虚拟交换机上,网卡为VMnet0。
桥接模式下的虚拟机在局域网中独占一个局域网的IP,每增加一个虚拟机就相当于再局域网中多加了一台计算机。
这种模式不适用于缺少IP的网络环境。
# NAT(网络地址转换)
net是VMware默认的网络连接模式,网卡为VMnet8,相当于在物理机上创建一个虚拟局域网。
虚拟机IP地址由虚拟DHCP服务器分发,虚拟机上网时通过虚拟路由器对虚拟机IP进行转换,转换后虚拟机和主机是共享一个IP的。
默认情况下,外网无法访问到具体的虚拟机。但可以通过端口转发功能,将外网发送的数据转发到物理机指定端口,然后再转发到指定的虚拟机上。
适合用于缺少IP的网络环境。
# Host-Only(仅主机模式)
默认情况下不能上网,但可以通过加路由、挂代理、物理机共享网卡给 VMnet1 来实现上网。
Cookie 和 Session 的区别
# 安全性
Session:存储服务器端,安全性高
Cookie:存储浏览器端,安全性低
# 数据大小
Cookie:的数量和大小都有限制
Session:数据存储不限
# 可用数据类型
Cookie:只能存储简单数据,数值 字符串
Session:可以存储复杂数据(自动序列化)
# 保存位置
Cookie:保存在浏览器上
Session:保存在服务器上