我运行的是 Ubuntu 16.04 LTS。
我想将来自某个 ip[-range] 的 DNS 请求重定向到另一个dnsmasq
on实例port 1995
。为此,我在/etc/dnsmasq.conf
文件中添加了以下几行:
dhcp-range=set:red,10.10.10.11,10.10.10.222,255.255.255.0,12h
dhcp-option=tag:red,6,10.10.10.10:1995
但是当我重新启动时dnsmasq
它失败了Bad IP address on line ...
我也试过
dhcp-option=tag:red,6,10.10.10.10#1995
这也失败了,因为Bad IP Address
现在,请告诉我如何指定其他 DNS 服务器的端口号dhcp-option
?
答案1
归根结底,这里的问题不是那么多,dnsmasq
而是 DHCP 协议本身。
选项 6 没有用于保存任何端口的字段,只有 4 个八位字节/字节(32 位)的 IPv4 地址序列。
从RFC2132:DHCP 选项和 BOOTP 供应商扩展:
3.8. Domain Name Server Option
The domain name server option specifies a list of Domain Name System
(STD 13, RFC 1035 [8]) name servers available to the client. Servers
SHOULD be listed in order of preference.
The code for the domain name server option is 6. The minimum length
for this option is 4 octets, and the length MUST always be a multiple
of 4.
Code Len Address 1 Address 2
+-----+-----+-----+-----+-----+-----+-----+-----+--
| 6 | n | a1 | a2 | a3 | a4 | a1 | a2 | ...
+-----+-----+-----+-----+-----+-----+-----+-----+--
除非您要改变整体方法,否则您需要将不同的名称服务器放在不同的地址上,而不是不同的端口上。