How to Configure DNS Forwarding with Microsoft AD DS and Dnsmasq
How to Configure DNS Forwarding with Microsoft AD DS and Dnsmasq
问题
在芯片研发环境,
- 有些EDA tools会后台发送使用数据至其公司后台,给公司带来信息安全风险(安全)。
- EDA tools在使用时访问一个无法通信的地址时,会等待,导致工具性能低下(性能)。
分析
安全方面,业界的做法是防火墙隔离。当不可避免地需要在上网环境使用时,则可以针对其公司的二级域名及其子域名,全部劫持解析到一个不能访问的地址,以此降低风险。一般的做法是,穷举其用到的(二级、三级)域名并在DNS服务器加上A记录,但这样的做法是不完善的:
- 一方面无法保证穷举是否完全;
- 另一方面,EDA tool vendor也可能会在新版本更新子域名导致已添加的DNS A记录未覆盖到。
性能方面,需要确保访问无法通信的地址能立即拒绝,提升工具性能。
因此需要一个能自适应,或者覆盖完全的解决方案。
架构
这里设计一个架构,能够覆盖synopsys.com及其子域名的所有域名解析。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
+-----------------------+ +------------------------+
| | | |
| 客户端 (Client) | 请求: synopsys.com | Microsoft AD DNS |
| +------------------------->| Server |
| | | |
+-----------------------+ +------------------------+
| | |
| | 转发查询 |
| v |
+------------------------+
| |
| Forwarder 配置 |
| synopsys.com -> |
| dnsmasq Server |
| |
+------------------------+
|
| 请求解析
v
+------------------------+
+-----------------------+ | |
| | | dnsmasq Server |
| 客户端 (Client) | 返回: 127.0.0.1 | 解析 synopsys.com 和 |
| |<------------------------ | *.synopsys.com -> |
+-----------------------+ | 127.0.0.1 |
+------------------------+
This post is licensed under CC BY 4.0 by the author.