在dd-wrt路由器上设置多个无线网络并相互隔离

2013-02-25 12:48:52 +0800


路由器刷了DD-WRT后可以设置虚拟无线网络,即一个无线路由器上有多个无线网络,可以设置不同的加密方式和SSID,相互之间可以控制访问权限。

下面介绍添加一个虚拟无线网络并与其他网络相隔离的方法,设置成功后的效果为:使用该虚拟无线网络接入路由器可以正常上网,但与其他网络的用户不能相互访问。适合家庭、公司等环境下为来访客人提供无线网络,并且不影响自用的网络。也可用于设置收费热点,方法将在下一篇帖子中介绍。

设置步骤

设置过程中请注意保存和应用的不同。

1. 添加虚拟无线网络

进入DD-WRT路由器的web设置页面,打开无线-基本设置页面,单击下方的虚拟接口列表下的添加按钮,设置合适的参数后应用。

注意:在这一步可以看到虚拟无线网络的接口名称,在SSID的前面,图中的为 wl0.1 ,请记住,稍后将用到。
打开无线-无线安全页面,设置合适的安全模式。本文目的是建立供访客使用的无线网络,为了使用方便可以选择不开启加密以便访客使用。

2. 隔离虚拟无线网络

打开设置-网络页面,单击创建网桥框中的添加按钮,在第一个文本框中输入br1,单击保存按钮。
在保存后会增加两条参数设置,分别为IP地址子网掩码,默认情况下路由器的LAN地址是192.168.1.1,在此我们将虚拟无线网络设置为一个不同的网段,如IP:192.168.2.1,子网掩码:255.255.255.0。单击应用按钮。

单击指派到网桥框中的添加按钮,第一个下拉列表框中选择刚才建立的br1,第二个下拉列表框中选择之前建立的虚拟无线网络wl0.1。单击应用

如图所示表示wl0.1已经桥接到br1上了。
单击多路DHCP服务器框中的添加按钮,第一个下拉列表框中选择刚才建立的br1网桥,然后点应用。这一步路由器会自动获取刚才填写的IP和子网掩码。

打开服务-服务页面,在DNSMasq框的DNSMasq 附加选项文本框中输入以下内容:

# 在br1上开启DHCP
interface=br1
# 设置默认网关
dhcp-option=br1,3,192.168.2.1
# 设置客户端IP范围、子网掩码和租约时间
dhcp-range=br1,192.168.2.100,192.168.2.150,255.255.255.0,24h

其中#开头的为注释,可以不输,如果想设置不同的DNS,可再输入以下内容([DNS IP 1]和[DNS IP 2]替换为想要使用的DNS IP):

dhcp-option=br1,6,[DNS IP 1],[DNS IP 2]

全部输入完成以后单击 保存 按钮,等候10秒后重启路由器。
你现在应该能够连接到虚拟无线的SSID,并收到一个DHCP租约是在192.168.2.0/24子网的IP地址。在你进行下一步之前请确保你可以连接到它,收到一个DHCP租约,并连接到路由器的192.168.2.1。

3. 限制访问

在进行此步设置之前请先确认 SPI防火墙 为启用状态。
正常情况下此时接入虚拟无线网络应该可以正常上网了,但在笔者的路由器上出现的能ping通路由器但不能上网的情况,此时可按一下方法设置:
打开管理-命令页面,在指令解释器中输入以下内容并单击保存为防火墙指令按钮。

iptables -t nat -I POSTROUTING -o `get_wanface` -j SNAT --to `nvram get wan_ipaddr`
iptables -I FORWARD -i br1 -m state --state NEW -j ACCEPT
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

重启路由器后应该可以正常访问网络了。
下面限制虚拟无线网络的访问权限,使其只能访问外网不能访问内网。
单击防火墙框中的编辑按钮,在刚才输入的命令后面输入以下内容:

iptables -I FORWARD -i br0 -o br1 -m state --state NEW -j DROP

单击保存为防火墙指令按钮,重启使其生效。
至此一个可以访问互联网但不能访问局域网的虚拟无线网络就算设置完成了。

参考内容:

1.http://www.dd-wrt.com/wiki/index.php/Multiple_WLANs 2.http://www.anywlan.com/article-3984-1.html


上一篇:如何实现端口转发

下一篇:如何计算子网掩码