openwrt的dns由dnsmasq(dns server 和 dhcp server的合并)实现,默认配置为dns转发模式。
lan口为dhcp server,因此,下级设备自动获取的nameserver即为本路由的子网下的ip地址。
和dns解析相关的有2个配置文件,都在/tmp下
resolv.conf.auto
netifd生成, netifd在每次wan口up事件时,重写该文件。
当wan口有包请求dns时,会foward到该地址上,从该处获取dns。
resolv.conf
来源:不明,推测为resolv.conf.auto的副本,但是每次wan口up事件并不会更新,但是系统重启后会更新,待探究。
当lan口有包请求dns时,会foward到该地址上,从该处获取dns。
当在lan口直接ping时,读取resolv.conf的内容,作为dns server,若resolv.conf为空,再读取resolv.conf.auto的内容作为nameserver。
PS:因为openwrt为转发模式,自然可以用来解决一些污染问题,在此不做探究。**
Comments | NOTHING