前一篇文章介绍了 DHCP 协议定义以及相关信令之间的流转, 本文主要通过 Rust 从头实现一个 DHCP 协议客户端.

环境准备

首先需要安装 Rust, 目前 Rust 官方主要提供 Rustup 这一工具管理 Rust 各版本. 如果是 Windows 可直接下载 Rustup-init.exe 运行即可, 如果是 LinuxmacOS 则可在 Shell 中运行一下命令快速安装:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Rustup 在安装 Rust 同时也会同时安装 Cargo 这一构建和包管理工具, 相对于 C/C++ 而言极大地减轻依赖和构建管理的心智负担.

在安装完 RustCargo 后由于涉及到网络报文, 因此还建议安装 Wireshark(Linux 环境下使用 tcpdump 亦可)以便后续对报文进行分析.

IDE 可以选择 VS CodeJetBrains 新发布的 RustRover, 如果选择 VS Code 的话为了进行调试还需同时安装 CodeLLDB 插件.