在某网站搜到隔离访客网络方法但不是很懂,大概弄了下后手机接访客网络能分配到IP,但上不了网。。。谁能帮忙看看具体要怎么设置(最好带截图)
我的主路由是华硕AC86U,原版固件 IP:192.168.50.1,AP是小米MINI,刷hiboy最新的Padavan IP:192.168.50.3,附上我搜到的教程
一、设备初始配置情况
主路由器ac88u, IP:192.168.10.1; 用于AP的路由器:R6400,ASUS固件:380.70_0-X7.9.1,内部IP:192.168.10.3,主路由器接R6400的WAN口。
在初始配置下,使用brctl show命令可查询到只有一个br0网桥(IP:192.168.10.3),接入的网络接口有vlan1,eth1,eth2,wl0.1,wl1.1。其中wl0.1(注意是wl不是w1)是访客2.4G无线网络接口,wl1.1是访客5G无线网络接口。
二、网桥及nvram设置
1、网桥设置
#将访客网络接口从br0中删除
brctl delif br0 wl0.1
brctl delif br0 wl1.1
#新增br1网桥,并将访客网络接口加入br1
brctl addbr br1
brctl addif br1 wl0.1
brctl addif br1 wl1.1
#设置br1网桥的IP为10.10.10.1
ifconfig br1 10.10.10.1 netmask 255.255.255.0 up
2、nvram设置
#在nvram中也需要相同思路的设置
nvram set lan_ifnames="vlan1 eth1 eth2"
nvram set lan_ifname="br0"
nvram set lan1_ifnames="wl0.1 wl1.1"
nvram set lan1_ifname="br1"
nvram set lan1_ipaddr="10.10.10.1"
#重启eapd让nvram的设置生效
killall eapd
eapd
三、DHCP设置
现在从访客网络接入的设备被桥接在br1网桥下,原主路由器就不能为这些设备提供的DHCP服务了,因此需要启用AP路由器的DHCP服务(dnsmasq),为访客网络接入的设备分配IP。
dnsmasq配置文件:dnsmasq.conf
这个文件可放置在/jffs目录下(/jffs/dnsmasq.conf)
#文件内容
user=nobody
port=0 #默认端口
interface=br1 #只服务br1
except-interface=br0
dhcp-range=10.10.10.50,10.10.10.150,255.255.255.0,12h #分配的IP段为10.10.10.x
dhcp-option=3,10.10.10.1
dhcp-option=6,61.128.128.68,61.128.192.68
dhcp-leasefile=/tmp/mnt/sda/tmp/dnsmasq.leases #根据自己的情况修改leases文件保存位置
四、Iptables 设置
iptables -A INPUT -s 10.10.10.0/24 -d 10.10.10.0/24 -j ACCEPT
#禁止访客网络访问内部网段
iptables -A INPUT -i br1 -d 192.168.10.0/24 -j DROP
iptables -A FORWARD -i br0 -o br1 -m state --state NEW -j DROP
iptables -A FORWARD -i br1 -d 192.168.10.0/24 -j DROP
#访客网络通过NAT从AP路由器接入互联网
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -j SNAT --to-source 192.168.10.3
五、设置生效方法
可以将以往内容写入services-start脚本中,AP路由器重启生效。
以下为services-start脚本中的内容,理解脚本内容请看前述:
brctl delif br0 wl0.1
brctl delif br0 wl1.1
brctl addbr br1
brctl addif br1 wl0.1
brctl addif br1 wl1.1
ifconfig br1 10.10.10.1 netmask 255.255.255.0 up
nvram set lan_ifnames="vlan1 eth1 eth2"
nvram set lan_ifname="br0"
nvram set lan1_ifnames="wl0.1 wl1.1"
nvram set lan1_ifname="br1"
nvram set lan1_ipaddr="10.10.10.1"
#重启eapd让nvram的设置生效
killall eapd
eapd
#重启dnsmasq加载新的配置脚本
killall dnsmasq
dnsmasq --conf-file=/jffs/dnsmasq.conf
#设置Iptables
iptables -A INPUT -s 10.10.10.0/24 -d 10.10.10.0/24 -j ACCEPT
iptables -A INPUT -i br1 -d 192.168.10.0/24 -j DROP
iptables -A FORWARD -i br0 -o br1 -m state --state NEW -j DROP
iptables -A FORWARD -i br1 -d 192.168.10.0/24 -j DROP
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -j SNAT --to-source 192.168.10.3
六、最后的问题
#允许AP路由器转发网络包(在AP模式下, ip_forward被设置为0) 在路由器命令状态下输入: echo 1 > /proc/sys/net/ipv4/ip_forward
|