一、架构模型
应用层:HHTP(80)、HTTPS(443)、SMTP(25)、POP3(110)、FTP(20、21)、SSH(22)、DNS(53)、TELNET(23)、NTP(123)、DHCP(67)
传输层:TCP(6)、UDP(17)
网络层:IP、ARP、RARP、ICMP
数据链路层:PPP
物理层
TCP三次握手过程:
二、IP地址
1.组成:由32位二进制组成、分成4段,点分十进制 192.168.1.1/24
子网掩码:值为1的代表网络范围,0代表主机范围
网络部分: 用于标识网络的范围
主机部分: 用于标识此网络范围中的一个节点
网络部分越长,表示网络范围越小,网络部分越短,表示网络范围越大
2.地址分类
A类地址的表示范围为:0.0.0.0~126.255.255.255 掩码8位
B类地址的表示范围为:128.0.0.0~191.255.255.255 掩码16位
C类地址的表示范围为:192.0.0.0~223.255.255.255 掩码24位
D类地址范围: 224.0.0.1- 239.255.255.254 组播地址
E类地址范围: 240.0.01- 255.255.255.254 用于科研、备用
3.私有地址
A类: 10.0.0.0-10.255.255.255
B类:172.16.0.0-172.31.255.255
C类:192.168.0.0-192.168.255.255
- 子网划分 *** 满足不同网络对IP地址的需求
例子:网络中有67台计算机怎样划分? 192.168.1.0/24
2n-2>67 -> n=7 主机位要有7位 所以网络位32-7=25 子网掩码为25
三、ACL介绍
访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。(数据包的五元组: 源IP、目标IP、源端口、目标端口、协议)根据预先定义好的规则对包进行过滤
access-list 1 permit 10.110.10.1 0.0.255.255
access-list 2 permit 10.110.100.100 0.0.255.255
访问控制列表 1 和 2,所控制的地址范围关系是(A)
A 1和2的范围相同
B 1的范围在2的范围内
C.2的范围在1的范围内
D.1和2的范围没有包含关系
扩展:
10.110.10.1 0.0.63.255
10.110.100.1 0.0.63.255
是否在同范围?
四、NAT
NAT(Network Address Translation)是网络地址转换技术,用于在本地网络中使用私有地址,在连接互联网时转而使用全局 IP 地址。这种技术最初是为了解决IPv4地址短缺问题而开发的。
SNAT和DNAT的区别:
1.概念区分:
SNAT:源网络地址转换(Source Network Address Translation),主要用于内部网络的主机访问外部网络时。当内部主机发起对外连接时,其源IP地址会被替换为路由器或防火墙的公共IP地址。这样,外部网络看到的只是路由器或防火墙的公共IP地址,从而隐藏了内部网络的真实IP地址。
DNAT:目标网络地址转换(Destination Network Address Translation),主要用于外部网络的主机访问内部网络的服务时。当外部主机尝试连接到内部网络的服务时,其目标IP地址会被替换为内部服务的私有IP地址。这样,外部主机的连接请求就会被正确地路由到内部网络的服务上。
2.工作原理:
SNAT:当内部设备发送请求到公共网络时,SNAT会将请求的源IP地址修改为公共IP地址,以确保响应能够正确返回到内部网络。这种转换通常发生在数据包离开内网的时候,即在防火墙或路由器的POSTROUTING链中配置。
DNAT:当外部请求到达防火墙或路由器时,DNAT会在PREROUTING链中将请求的目标IP地址修改为内部网络中的特定IP地址,确保请求能够正确路由到相应的服务上。
3.使用场景
SNAT:用于实现多个内部设备共享一个公共IP地址访问互联网的情况。例如,公司内部的多台PC机可以共享一个公网IP地址进行上网。这种技术可以提高网络安全性,防止外部攻击,并控制流量分配以提高网络带宽效率。
DNAT:用于提供外部访问内部服务的情况,如Web服务器、邮件服务器等。外部用户可以通过访问防火墙的公网IP地址,经过DNAT转换后,访问到内部的特定服务。例如,企业中的Web服务器使用私有IP地址,但通过DNAT映射,外部用户可以通过公共IP地址访问该服务器
五、域名
DNS(Domain Name System)的主要作用是将人们易于记忆的域名转换为机器可读的IP地址,从而使人们能够更方便地访问互联网上的资源。这种转换过程称为域名解析。
工作原理:当用户在浏览器中输入一个域名时,系统会向本地DNS服务器发起请求,若本地DNS无法解析,则依次向上级DNS服务器(如权威域名服务器、顶级域名服务器、根域名服务器)发起请求,直到找到解析结果并返回给用户。缓存机制:解析结果会被保存在本地DNS服务器中,供后续相同请求直接使用,从而加快解析速度。
- Http和https超文本传输协议
HTTPS 其实就是建构在 SSL/TLS 之上的 HTTP 协议。可以理解为HTTPS=HTTP+SSL/TLS。
1.请求消息-request
①请求行
请求方式 请求uri 协议及版本
GET/pages/jointLaboratorvisp HTTP/1.1
②请求头
Host:请求主机域名/ip地址
Host:http://127.0.0.1/sql_test/login.html
UserAgent:告诉服务器浏览器的版本信息,供服务器解决浏览器兼容问题
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTMLlike Gecko) Chrome/89.0.4389.90 Safari/537.36
Accept:传输文件类型
Accept: text/htmlapplication/xhtml+xmlapplication/xml
Referer:告诉服务器从哪里来
Referer: http://127.0.0.1/sql_test/login.html
Cookie:储存在用户本地终端上的数据
Cookie:ccf3a130053aa89a7bd8e882378f53bda224924636fba20
2.响应消息-response
HTTP/1.1 200.0K
Server.Tenaine
Date: Tue, 30 Mar 2021 08:47:59 GMT
Content-Security-Policy: upgrade-insecure-requests;
connect-srcoContent-Type: text/htmlVary:
Accept-EncodingETag: W/"6045-1616753828000"Last-Modified: Fri 26 Mar 2021 10:17:08 GMT
Content-Encoding: gzip
3.响应状态码:服务器告诉浏览器本次请求和响应的状态
1xx,服务器接收浏览器消息未完成,发送1xx状态码
2xx:成功,200
3xx: 重定向,302,304(访问缓存)
4xx:客户端错误,404(没有找到对应资源)403405(请求方法不被允许)
5xx:服务器错误,500(服务器内部出现异常)