Administrator
发布于 2025-10-10 / 179 阅读
0
0

immortalwrt之配置dhcp-option

# /etc/config/dhcp 文件中的一个配置块
config host
        option name 'M2006J10C'
        option ip '10.89.2.241'
        list mac '34:1C:F0:47:13:A4'
        option leasetime 'infinite'
        list dhcp_option '6,223.5.5.5,114.114.114.114'    # DNS 服务器
        list dhcp_option '3,10.89.2.10'   # 网关

这段配置的作用是,为MAC地址为 34:1C:F0:47:13:A4 的客户端,分配一个固定的IP地址 10.89.2.241,并强制其使用 223.5.5.5和114.114.114.114 作为DNS服务器,以及 10.89.2.10 作为其默认网关。配置的最后两行用到了所谓的dhcp-option。具体定义可以参考文末表格,一般而言3(网关地址)和6(DNS服务器)最常用。

2025年10月13日 更新:

经测试,上述配置无效。reddit上Custom DNS for each client through DHCP这篇帖子里也遇到了同样问题,解决办法是新建tag并引用,经过修改,配置文件如下:

# /etc/config/dhcp 文件中的一个配置块
config tag 'customoption'
        list dhcp_option '6,223.5.5.5,114.114.114.114'
        list dhcp_option '3,10.89.2.1'
config host
        option name 'M2006J10C'
        option ip '10.89.2.241'
        list mac '34:1C:F0:47:13:A4'
        option leasetime 'infinite'
        option tag 'customoption'

该配置实测有效,客户端正确获取了下发的223.5.5.5和114.114.114.114客户端,至于下发的网关地址与默认相同,应该也生效了。使用tag的一大好处是方便复用,在LUCI界面中可以为其他客户端直接应用该tag。(不过LUCI中无法声明或查看标签内容)

Options 号 Options 作用
1 设置子网掩码选项。
3 设置网关地址选项。
6 设置DNS服务器地址选项。
12 设置DHCP客户端的主机名选项。
15 设置域名后缀选项。
33 设置静态路由选项。该选项中包含一组有分类静态路由(即目的地址的掩码固定为自然掩码,不能划分子网),客户端收到该选项后,将在路由表中添加这些静态路由。如果存在Option121,则忽略该选项。
44 设置NetBios服务器选项。
46 设置NetBios节点类型选项。
50 设置请求IP选项。
51 设置IP地址租约时间选项。
52 设置Option附加选项。
53 设置DHCP消息类型。
54 设置服务器标识。
55 设置请求参数列表选项。客户端利用该选项指明需要从服务器获取哪些网络配置参数。该选项内容为客户端请求的参数对应的选项值。
58 设置续约T1时间,一般是租期时间的50%。
59 设置续约T2时间。一般是租期时间的87.5%。
60 设置厂商分类信息选项,用于标识DHCP客户端的类型和配置。
61 设置客户端标识选项。
66 设置TFTP服务器名选项,用来指定为客户端分配的TFTP服务器的域名。
67 设置启动文件名选项,用来指定为客户端分配的启动文件名。
77 设置用户类型标识。
121 设置无分类路由选项。该选项中包含一组无分类静态路由(即目的地址的掩码为任意值,可以通过掩码来划分子网),客户端收到该选项后,将在路由表中添加这些静态路由。

评论