本篇博客简单涉及到网络拓扑、OSI七层模型、TCP/IP模型、IP地址的分类、DHCP、DNS、TCP、TCP/IP应用层、ARP、主机到主机间的通信,意在扫盲。
网络拓扑
物理拓扑、逻辑拓扑
物理拓扑:反映实物连接的拓扑图
物理拓扑分三种:总线形、星形、环形、树形
逻辑拓扑:便与思维理解的拓扑图,只是表示网络中一个点到另一个点的路径,并不是具体结构。
OSI七层模型
应用层 |
表示层 |
会话层 |
传输层 |
网络层 |
数据链路层 |
物理层 |
注:1、应用层:为应用提供网络跟身份验证。
2、表示层:确保接收可读。
3、会话层:建立、管理应用程序之间的对话
4、传输层:数据传输,使用TCP、UDP协议
5、网络层:使用IP识别、网关
6、数据链路层:使用MAC地址,交换机、VALN
7、物理层:定义规范、标准各种网线设备接口
TCP/IP模型
应用层 |
传输层 |
Internet(即“网络”)层 |
数据链路层 |
物理层 |
注:1、TCP/IP模型中应用层其实实现的是OSI模型中应用层、表示层、会话层三层功能;
2、数据链路层与物理层又合称网络访问层。
IP地址的分类
IP地址分为三类:
类 |
地址范围 |
A |
1.0.0.0~127.255.255.255 |
B |
128.0.0.0~191.255.255.255 |
C |
192.0.0.0~223.255.255.255 |
其中私有IP范围:
类 |
私有IP地址范围 |
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范围:
类 |
公有IP地址范围 |
A |
1.0.0.0~9.255.255.255和11.0.0.0~127.255.255.255 |
B |
128.0.0.0~172.15.255.255和172.32.0.0~191.255.255.255 |
C |
192.0.0.0~192.167.255.255和192.169.0.0~223.255.255.255 |
127.0.0.0~127.255.255.255为环回地址
IP地址的ABC三段,由子网掩码区分
DHCP
DHCP技术:动态分配IP的技术,由DHCP服务器分配。
防范DHCP攻击的方法:设置唯一端口。
具体步骤:
1、客户端向DHCP服务器发送广播请求;
2、DHCP服务器广播回复客户端;
3、客户端向DHCP服务器单独发送请求;
4、DHCP服务器为客户端发送分配的IP。
DNS
DNS为域名解析系统。用户将一个域名发送至DNS服务器,由DNS服务器解析这个域名,得到相应的IP地址,发送到客户端,客户再由IP地址访问网站。
TCP
TCP协议是一种可靠地面向连接的有排序的准确的传输协议。其经过三次握手确定传输,比较可靠。
TCP/IP应用层
应用层协议主要包括如下几个:FTP、TELNET、DNS、SMTP、RIP、NFS、HTTP。
FTP(File Transfer Protocol)是文件传输协议,一般上传下载用FTP服务,数据端口是20H,控制端口是21H。
Telnet服务是用户远程登录服务,使用23H端口,使用明码传送,保密性差、简单方便。
DNS(Domain Name Service)是域名解析服务,提供域名到IP地址之间的转换。
SMTP(Simple Mail Transfer Protocol)是简单邮件传输协议,用来控制信件的发送、中转。
RIP (Router Information Protocol)是路由信息协议,用于网络设备之间交换路由信息。
NFS (Network File System)是网络文件系统,用于网络中不同主机间的文件共享。
HTTP(Hypertext Transfer Protocol)是超文本传输协议,用于实现互联网中的WWW服务。###ARP
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。ARP缓存中包含一个或多个表,它们用于存储IP地址及其经过解析的MAC地址。ARP命令用于查询本机ARP缓存中IP地址-->MAC地址的对应关系、添加或删除静态对应关系等。
需要注意的是,通过ARP,向目标主机发送数据包,第一个包因为寻找主机会丢失,后续包会传输成功
主机到主机的通信过程
主机A需要发送一个数据包到主机B,在整个传输流程中,源和目的IP地址是保持不变的(不考虑NAT),源和目的MAC地址是随着具体链路的变化而变化。以下分为两种情况讨论:
1、主机A和主机B不跨交换机
主机A在本机的路由表中查询匹配主机B的IP的网络号,如果能够查询到,说明主机B和主机A在同一网段(通常是在同一局域网内),则下一跳即为主机B。主机A在ARP缓存中查找主机B的MAC地址(如没有则先发送ARP广播),然后将数据包封装成帧发送至通信线路上。该帧的源MAC是主机A的MAC地址,目的MAC是主机B的MAC地址。
如果主机A和主机B是网线直连的,那么主机B直接收到主机A发来的帧。
2、主机A和主机B跨交换机
如果主机A和B是通过交换机相连的,交换机的某个端口收到主机A发来的帧,然后根据帧中的目的MAC地址在MAC地址表中查询对应的转发端口。如果找到了,直接从该端口转发出去;如果没找到,则在除了接收到数据包以外的所有端口进行转发(广播)。