一、DHCP
1.1 DHCP是什么
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种网络协议,用于自动分配 IP 地址和其他网络配置信息给网络中的设备
1.2 DHCP的好处
自动化: 减少了手动配置 IP 地址和网络参数的工作量,提高了网络管理的效率
灵活性: 可以动态地分配 IP 地址,适应网络中设备的变化和移动
减少冲突: 自动分配 IP 地址可以减少因手动配置错误而导致的 IP 地址冲突
1.3 DHCP服务的基本工作原理
(1)客户机请求 IP 地址 当一个 DHCP 客户机启动时,客户机还没有 IP 地址,所以客户机要通过 DHCP 获取一个合法的地址。此时DHCP客户机以广播方式发送 DHCP Discover 发现信息来寻找 DHCP 服务器
(2)服务器响应 当 DHCP 服务器接收到来自客户机请求 IP 地址的信息时,它就在自己的 IP 地址池中 查找是否有合法的 IP 地址提供给客户机。如果有,DHCP 服务器就将此 IP 地址做上标记, 加入到 DHCP Offer 的消息中,然后 DHCP 服务器就广播一则 DHCP Offer 消息
(3)客户机选择 IP 地址 DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP 服务器将该地址保留,这样该地址就不能再分配给另一个 DHCP 客户机。之后 DHCP 客户 机会向服务器发送 DHCP Request 消息
(4)服务器确定租约 DHCP 服务器接收到 DHCP Request 消息后,以 DHCP ACK 消息的形式向客户机广播成功确认,该消息包含有 IP 地址的有效租约和其他可配置的信息。当客户机收到 DHCP ACK 消息时,它就配置了 IP 地址,完成 TCP/IP 的初始化
1.4 更新租约
租期达到50%(T1)时,DHCP客户端会自动以单播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP ACK报文,则租期更新成功(即租期从0开始计算);如果收到DHCP NAK报文,则重新发送DHCP DISCOVER报文请求新的IP地址
当租期达到87.5%(T2)时,如果仍未收到DHCP服务器的应答,DHCP客户端会自动以广播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP ACK报文,则租期更新成功(即租期从0开始计算);如果收到DHCP NAK报文,则重新发送DHCP DISCOVER报文请求新的IP地址
IP 地址续约和释放:
客户端在租用的 IP 地址租期即将过期之前,会自动向 DHCP 服务器发送 DHCP Request 报文,请求续约租用期限
DHCP 服务器可以同意续约,更新租期,或者拒绝续约,要求客户端重新申请 IP 地址。
当客户端不再需要 IP 地址时(例如设备离开网络或关机),它会发送一个 DHCP Release 报文通知 DHCP 服务器释放该 IP 地址,以便其他设备可以使用
二、FTP
2.1 FTP是什么
FTP(File Transfer Protocol,文件传输协议)是一种用于在网络上进行文件传输的协议。FTP 是一种基于客户端-服务器架构的协议,通常用于在不同计算机之间上传、下载和管理文件
2.2 FTP的基本原理
FTP 协议工作在 TCP/IP 协议栈的应用层,使用两个不同的端口进行通信:
- 控制连接(控制通道):用于传输 FTP 命令和服务器的响应,默认使用 TCP 端口 21
- 数据连接(数据通道):用于传输实际的数据(文件内容),默认使用 TCP 端口 20
2.3 FTP的两种操作模式
FTP 有两种工作模式:主动模式(Active Mode)和被动模式(Passive Mode)
2.3.1 主动模式
主动模式(Active Mode)
- 在主动模式下,FTP 客户端在建立控制连接时向服务器发送自己的 IP 地址和一个端口号。
- 服务器使用自己的数据端口(默认是端口 20)主动连接到客户端提供的端口。
- 这种模式下,客户端需要打开防火墙以允许服务器的连接
2.3.2 被动模式
被动模式(Passive Mode)
- 在被动模式下,FTP 服务器在控制连接建立后发送一个 PASV 命令,告知客户端服务器的 IP 地址和用于数据传输的端口号。
- 客户端使用这些信息主动连接到服务器的指定端口。
- 这种模式下,客户端发起所有连接,更适合于客户端在防火墙或 NAT(网络地址转换)后面的情况
总结:
主动模式:服务器主动发起数据连接
被动模式:服务器被动等待数据连接