如何让手机设备访问内网服务器之 dnsmasq 的安装

如何让手机设备访问内网服务器?

  • 应用场景: app 测试需要访问到内网服务器,或者手机自适应页面测试时也需要使用手机访问。
  • 手机连接局域网wifi然后修改host也可以访问到内网测试服务器,Android root后的设备可以修改hosts,Iphone是无法修改的。

1.dnsmasq 安装

sudo apt-get install dnsmasq

sudo service dnsmasq start 

2.如何配置(首先打开文件目录,去掉 #)

sudo vi /etc/dnsmasq.conf

#conf-dir=/etc/dnsmasq.d

3.指定域名解析到特定的IP上

cd /etc/dnsmasq.d/

sudo vi dns 

address=/www.dahao.de/10.0.0.20
address=/api.dahao.de/10.0.0.20
address=/s.dahao.de/10.0.0.20

sudo service dnsmasq restart 

4. 测试机的地址为 10.0.0.20,所以我们只需把 DNS 测试服务器,然后访问页面时会根据域名做跳转,访问到测试机的网站,从而实现了局域网内部的访问。连接 wifi 时选择高级模式,然后ip设置选择静态。修改域名1 保存就可以访问了。

demo.png

5.总结:

  • Dnsmasq 还有很多其它的功能,比如:应对ISP的DNS劫持、智能DNS加快解析速度、屏蔽网页广告等功能,安装简单,使用方便。
  • 另外一个就是网站测试和手机测试时会遇到的问题,查看测试服务器hosts , 发现域名都是指向本机的,因为网站和接口中用到了 php 的 curl 请求,所以必须指定 hosts 才能正常访问,最开始我把工具装好,配置文件修改完,发现用手机访问时一直提示连接被拒绝。后来经过多次尝试发现是本机 hosts 和 dnsmasq 的配置发生冲突,导致网站无线的重定向而无法访问。
  • 解决方法: 网站和手机测试的时候分开进行,测试手机 app 时只需把 hosts 里关于网站的域名配置全部注释就可以了。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容