安装dhcp
sudo apt update
sudo apt install isc-dhcp-server
编辑配置:
sudo vim /etc/dhcp/dhcpd.conf
末尾添加配置,这里只指定ip和掩码,192.168.1.100/24,对于网关可以不用指定,如果指定得不妥当可能出现无法上网的情况。
# 定义子网
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200; # 可分配 IP 范围
option subnet-mask 255.255.255.0; # 子网掩码
}
配置静态ip:
sudo vim /etc/network/interfaces
末尾添加,eh0为实际的网卡型号。
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
设置监听接口:
sudo vim /etc/default/isc-dhcp-server
修改INTERFACESv4
:
INTERFACESv4="eth0"
重启网络服务:
sudo systemctl restart networking
查看是否配置成功:
sudo ifconfig
开启dhcp服务并查看运行状态:
sudo systemctl restart isc-dhcp-server
sudo systemctl status isc-dhcp-server
安装ftfp服务
sudo apt update
sudo apt install tftpd-hpa
开启ftfp服务并查看运行状态:
sudo systemctl restart tftpd-hpa
sudo systemctl status tftpd-hpa
放行端口
sudo apt update
sudo apt install iptables
放行dhcp
# 允许 DHCP 服务端接收请求(UDP 67)
sudo iptables -A INPUT -p udp --dport 67 -j ACCEPT
# 允许 DHCP 客户端响应(UDP 68)
sudo iptables -A INPUT -p udp --dport 68 -j ACCEPT
# 允许 DHCP 服务端向外发送响应(可选,确保出站正常)
sudo iptables -A OUTPUT -p udp --sport 67 -j ACCEPT
sudo iptables -A OUTPUT -p udp --sport 68 -j ACCEPT
放行ftfp
# 允许 TFTP 服务端接收请求(UDP 69)
sudo iptables -A INPUT -p udp --dport 69 -j ACCEPT
# 允许 TFTP 服务端向外发送数据(可选)
sudo iptables -A OUTPUT -p udp --sport 69 -j ACCEPT
保存规则
# 安装持久化工具
sudo apt install iptables-persistent
# 保存当前规则
sudo netfilter-persistent save
sudo netfilter-persistent reload
# 验证规则
sudo iptables -L -n -v | grep -E '67|68|69'
Comments NOTHING