为不方便自定义 ip 设备配置自动旁路由网关
在使用 dnsmasq
作为 DHCP 服务器时,可以通过配置为特定设备分配不同的网关(即旁路由)。以下是实现步骤:
1. 确定设备的 MAC 地址
首先,获取目标设备的 MAC 地址。
2. 修改 dnsmasq
配置文件
编辑 /etc/dnsmasq.conf
文件,添加如下配置:
bash
# 为特定设备分配固定 IP 和网关
dhcp-host=XX:XX:XX:XX:XX:XX,192.168.1.100,set:custom_gw
dhcp-option=tag:custom_gw,3,192.168.1.254
XX:XX:XX:XX:XX:XX
替换为目标设备的 MAC 地址。192.168.1.100
是为该设备分配的固定 IP。192.168.1.254
是旁路由的 IP 地址。
3. 重启 dnsmasq
保存并退出后,重启 dnsmasq
服务:
bash
sudo systemctl restart dnsmasq
4. 验证配置
确保目标设备获取到指定的 IP 和网关。
注意事项
- 确保旁路由已正确配置并允许流量通过。
- 如果网络中有其他 DHCP 服务器,需确保它们不会干扰
dnsmasq
的分配。
通过这些步骤,你可以为特定设备指定旁路由作为网关。
在 dnsmasq
的配置中,3
是 DHCP 选项中的一个编号,表示 默认网关(Default Gateway)。DHCP 选项是 DHCP 协议中用于传递网络配置参数的标准化方式,每个选项都有一个编号,3
是专门用于指定网关的选项。
具体解释
在你的配置中:
bash
dhcp-option=tag:custom_gw,3,192.168.1.254
tag:custom_gw
:表示这个选项仅适用于标记为custom_gw
的设备(通过dhcp-host
设置)。3
:表示 DHCP 选项中的“默认网关”。192.168.1.254
:是你要分配给设备的网关地址(旁路由的 IP 地址)。
常见的 DHCP 选项编号
以下是一些常见的 DHCP 选项编号及其含义:
1
:子网掩码(Subnet Mask)3
:默认网关(Router)6
:DNS 服务器(Domain Name Server)15
:域名(Domain Name)42
:NTP 服务器(Network Time Protocol Server)
为什么需要指定 3
?
在 DHCP 协议中,客户端(设备)会从服务器获取一系列网络配置参数,包括 IP 地址、子网掩码、网关、DNS 等。通过指定 3
,你明确告诉 dnsmasq
将 192.168.1.254
作为网关分配给特定的设备。
总结
3
是 DHCP 选项中的默认网关编号,用于指定设备的网关地址。在你的配置中,3
的作用是将旁路由的 IP 地址(192.168.1.254
)作为网关分配给特定的设备。