有时候会碰到需要修改手机hosts的情况,可是IOS没越狱实在是不好办。之前的解决方法是,修改电脑hosts,然后手机设置代理到电脑,间接实现了hosts的修改,然而这也是件很麻烦的事,所以决定利用docker环境手动搭建一个DNS服务器。
1.配置容器
1 | docker search dnsmasq |

这里选择andyshinn/dnsmasq的docker镜像
1 | 下载andyshinn/dnsmasq镜像 |
查看,容器启动成功。

2.配置DNS服务
- 为 dnsmasq 配置一个真正的dns服务器地址:
1 | vim /usr/share/dnsmasq/resolv.conf |
- 配置本地解析规则:
1 | vim /usr/share/dnsmasq/dnsmasqhosts |
- 修改dnsmasq配置文件,指定使用上述两个我们自定义的配置文件:
因为我们在启动docker的时候设置了挂载卷-v /usr/share/dnsmasq:/etc/dnsmasq,所以我们只需要进入dns-server的命令行,就会看到dns-server内部对应路径文件夹内出现了刚刚配置的两个文件
1 | docker exec -it dns-server /bin/sh |

1 | vi /etc/dnsmasq.conf |
- 回到宿主,重启
dns-server容器服务。
1 | docker restart dns-server |
- 记得开放服务器的
53/tcp和53/udp
3.通过本机验证
修改本机dns服务器地址:

通过ping命令查看配置是否生效:
1 | ping master |
