吵吵   2012-04-15  阅读:5,081

前段时间有写道一篇博客,叫做“再探openWrt局域网中dns不能中继问题“,详细的表述了一下openWrt可以获取的局域网的dns地址,但是却不转发给连接的电脑和手机等。好在”松鹤“同学的评论让我明白了原来dnsmasq还有私有地址抛弃这样一个选项,也怪我没有仔细看清楚配置文件,经历了诸多的波折,终于解决了这个问题,重新再编译,发布。

其实对于我们学校来说,上一个固件的dns地址都是我写死了的,统一写为了192.168.168.164和192.168.168.165。我们学校的同学用这个固件当然是没有问题,苦了其它也想做港湾路由器的童鞋们。这不,openWrt的多拨群里就有人嚷着为什么能够连接但是上不了外网,出于这个考虑,又花了两小时研究和解决了一下这个问题。

我们进入openWrt的编译目录之下,找到这个文件:
package/dnsmasq/files/dhcp.conf
这个即是dnsmasq的一个配置文件,其中有一行是这样子的:
option rebind_protection 1 # disable if upstream must serve RFC1918 addresses

这个的意思就是禁止私有网络地址分配的地址,我们将其中的1改为0,也就是允许了。

重新编译固件,用港湾账号登陆后,我们发现百度可以打开了,校内的网站也能打开了,也就是说dns中继成功了。用ssh登陆路由器,看看network的设置里面会不会有dns设置:

config interface lan
option type bridge
option ifname eth1
option proto static
option ipaddr 192.168.1.1
option netmask 255.255.255.0
option nat 1

事实证明dns不是我们设置的,确实是中继过来的,那么我们再vim /etc/resolv.conf看看获取到的dns是不是192.168.168.164:

发现dns地址不是我们内网的dns了,但是也不是原来的127.0.0.1,神奇般的变成了168.168.1.1,即变成了路由的网关了,但是路由器的网关应该是对此作了转换,才能使我们能够上到内网。反正是能上网,就不再深究了。新固件下载地址为:

http://www.chaochaoblog.com/myupload/openwrt-chao-20120415.bin

具体操作参考以下两篇文章:

openwrt吵吵港湾802.1x无线路由固件(db120)下载及刷机教程

吵吵802.1x无线路由0.01版固件发布

如果有成功了话,不妨留个言,说说你是在哪里能够使用该版本的固件,以供后人参考。

吵吵微信朋友圈,请付款实名加入:

吵吵 吵吵

4条回应:“解决802.1x固件在无法中继局域网dns问题”

  1. 屠龙团队说道:

    这个问题好像我遇到过

  2. 松鹤说道:

    哈哈,以前我编译OpenWRT的时候,这个问题也把我折腾得够呛

  3. 曾经让我很纠结的一个问题!

  4. 陪你一起老说道:

    博主您好 很荣幸能看到你的帖子 但是我对这个很陌生 很陌生 所以想请教你
    我加也是802.1X的协议 但是是中兴的 网上差了一下 貌似每家的协议都是不公开的 可能不能用 希望能得到你的帮助 我买了一个路由 为FW330R 想刷固件 但是自己不会写 希望能的到你的帮助 QQ271242272 貌似我已经在你的群里了 谢谢您了

发表评论

电子邮件地址不会被公开。 必填项已用*标注