本文介绍了两种在OpenWrt中限制特定MAC地址上网的方法:一是通过无线网络的MAC地址过滤功能;二是利用Iptables防火墙阻止策略。具体包括如何在web界面和命令行界面配置MAC地址过滤及Iptables规则。
摘要生成于
,由 DeepSeek-R1 满血版支持,
Disable: 表示禁用mac过滤功能。
Allow listed only:表示只允许列表里面的mac连接wifi。
Allow all except listed:表示禁止列表里面的mac连接WiFi。
方法2.命令行界面,ssh到路由器,vi /etc/config/wireless,
config wifi-iface
option device 'radio1'
option mode 'ap'
option ssid 'qihoo-2g'
option network 'lan'
option encryption 'psk2'
option key '***'
option macfilter 'Deny'
list maclist '11:22:33:44:55:66'
list maclist '33:44:55:66:77:88'
按照上述格式添加,Deny改为你要的模式,mac地址替换为实际地址。
保存后,重启路由器。如图示:
Macfilter 选项提供三个模式:
默认是 Disable,表示不启用硬件地址过滤功能;
Allow 表示白名单模式,即只允许列出的硬件地址连入网络;
Deny 表示黑名单模式,即禁止列出的硬件地址连入网络。
二。使用Iptables防火墙禁止mac地址上网
方法1.web界面:定位到Network-Firewall - Custom Rules,然后按照这个格式添加,mac地址替换为实际地址。
iptables -I FORWARD -m mac --mac-source 11:22:33:44:55:66 -j DROP
iptables -I FORWARD -m mac --mac-source 33:44:55:66:77:88 -j DROP
如下图示:
方法2.命令行界面,ssh到路由器,vi /etc/firewall.user,然后按照这个格式添加,mac地址替换为实际地址。
iptables -I FORWARD -m mac --mac-source 11:22:33:44:55:66 -j DROP
iptables -I FORWARD -m mac --mac-source 33:44:55:66:77:88 -j DROP
保存后,输入reboot重启路由器。如下图示:
OpenWrt
防火墙
基础
过滤
实现
最近在学习
openwrt
-firewall方面的知识,在
iptables
防火墙
规则的基础上实现ip
过滤
、
mac
过滤
以及域名
过滤
,
和
它们的黑白名单实现
IP
过滤
IP
过滤
的实现主要是依靠
openwrt
系统提供的uci管理工具实现,关于uci
和
iptables
工具,前文都有简单的提到,这里就不再赘述。
在
openwrt
系统的firewall
防火墙
上实现ip
过滤
,有几种方式,这里介绍一下
iptables
和
uci 的实现方法。uci实现相对比较简单,
MAC
过滤
域名
过滤
Openwrt
Lede koolshare固件下屏蔽固定
MAC
地址
以及屏蔽某些网站
屏蔽局域网
MAC
地址
iptables
-I FORWARD -m
mac
--
mac
-source XX:XX:XX:XX:XX:XX -j DROP
屏蔽局域网访问外网特定网站
iptables
-I FORWARD -d tms.can.cibntv.net -j DROP
iptables
的配置文件在/...
OpenWRT
只允许设备访问局域网原理分析
要想设备只能访问局域网,有两个方案
1.
使用
iptables
匹配设备
MAC
地址
为XXXXXXXXXXX且目的
地址
为公网
地址
的设备若匹配则拒绝
2.
使用
iptables
匹配设备
MAC
地址
为XXXXXXXXXXX且目的
地址
为局域网
地址
的设备若匹配接受,在此规则下面添加该
MAC
地址
所有包都丢弃
由于公网IP段不明确,因此我们这里采取第二种方
OpenWrt
防火墙
–UCI工具
OpenWrt
防火墙
openwrt
下的 NAT、DMZ、firewall、rules 都是由配置文件 “/etc/config/firewall” 进行控制管理的。此文件可以
使用
UCI 进行控制,也可以
使用
vi 编辑器直接修改。
该文件最后会在 /etc/init.d/firewall 启动的时候由 UCI 进行解码并且生成
iptables
规则生效。
root@M201:~# ls /dev/mtdblock
mtdblock0 mtdblock1 mtdblock2 mtdblock3 mtdblock4 mtdblock5
root@M201:~# ls /dev/mtdblock*
/dev/mtdblock0 /dev/mtdblock2 /dev/mtdblock4
/dev/mtdbl
获取
openwrt
mac
地址
在
openwrt
控制台输入 ifconfig,可以获取当前设备网络信息,
mac
地址
也在其中,我们可以通过shell命令取出来。
br-lan Link encap:Ethernet HWaddr 52:CE:C3:A0:88:D7
inet addr:192.168.250.10 Bcast:192.168.250.255 Mask:255.255.255.0
inet6 addr: fdc7:de6f:69f5::1/