我在家庭网络中使用 Bind9 作为 DNS 服务器。此外,我使用响应策略区域来阻止某些特定的域和地址(A 到 127.0.0.1(。
是否可以只为一个特定的客户端指定这样的"黑名单"。所以一般来说:Bind9 是否支持特定于客户端的覆盖/名称解析?
此致敬意 苜蓿属
您可以使用视图在 BIND 中创建特定于客户端的区域分辨率。
view 语句是 BIND 9 的一个强大功能,它允许命名 服务器根据询问者以不同的方式回答 DNS 查询。它 对于实施拆分 DNS 设置特别有用,而无需 必须运行多个服务器。
每个视图语句定义一个 DNS 命名空间的视图,该视图将是 由一部分客户端查看。如果视图的源 IP 与视图匹配,则客户端与视图匹配 地址与视图的匹配客户端的address_match_list匹配 子句及其目标 IP 地址与address_match_list匹配 视图的匹配目标子句。如果未指定,则两者 匹配客户端和匹配目标默认为匹配所有 地址。除了检查 IP 地址匹配客户端和 匹配目标也可以采用键,这些键提供了一种机制 要选择视图的客户端。视图也可以指定为 仅匹配递归,这意味着仅来自 匹配的客户端将与该视图匹配。视图的顺序 语句很重要 — 客户端请求将在 它匹配的第一个视图的上下文。
在视图语句中定义的区域将只能由 与视图匹配的客户端。通过在 中定义同名区域 多个视图,可以将不同的区域数据提供给不同的客户端, 例如,拆分 DNS 设置中的"内部"和"外部"客户端。
选项语句中给出的许多选项也可以使用 在 View 语句中,然后仅在解析查询时应用 以这种观点。如果未给出特定于视图的值,则 选项语句用作默认值。此外,区域选项可以具有 View 语句中指定的默认值;这些特定于视图的 默认值优先于选项语句中的默认值。
视图是特定于类的。如果没有给出类,则假定类 IN。 请注意,所有非 IN 视图都必须包含提示区域,因为只有 IN 类已编译默认提示。
如果配置文件中没有视图语句,则默认视图 与任何客户端匹配的客户端都会在类 IN 中自动创建。任何区域 在配置文件的顶层指定的语句是 被视为此默认视图和选项语句的一部分 将应用于默认视图。如果任何显式视图语句是 目前,所有区域语句都必须出现在视图语句中。