openwrt使用ipset+iptables建立一个简单的家庭网络管理功能
使用ipset建立三个hash表
ipset create direct_ip hash:net #定向ip或域名
ipset create direct_blacklist_mac hash:mac #定向流量访问黑名单
ipset create auth_pass_mac hash:mac #认证通过终端的mac
设置路由规则
iptables -N AUTH_POLICY
iptables -N FLOW_POLICY
iptables -I FORWARD -j AUTH_POLICY
#没认证通过的mac,无法上网
iptables -I AUTH_POLICY -i br-lan -m set ! --match-set auth_pass_mac src -j DROP#被拉黑的mac无法访问定向ip或域名
iptables -A AUTH_POLICY -i br-lan -m set --match-set direct_blacklist_mac src -j FLOW_POLICY
iptables -A FLOW_POLICY -i br-lan -m set --match-set direct_ip dst -j DROP
使用例子:
允许特定终端上网
#默认openwrt启动,配置好以上功能之后,所有的终端(mac)都无法上网#这时我希望我自己可以上网,我电脑的mac为:00:11:22:33:44:55
ipset add auth_pass_mac 00:11:22:33:44:55
#让家里小孩的电脑上网,小孩电脑mac为:00:11:22:33:44:66
ipset add auth_pass_mac 00:11:22:33:44:66
#不让小孩上网
ipset del auth_pass_mac 00:11:22:33:44:66
不让小孩访问特定网址:游戏或视频等
#将小孩电脑放进定向流量访问黑名单
ipset add direct_blacklist_mac 00:11:22:33:44:66
#不让小孩访问 www.bilibili.com
ipset add direct_ip www.bilibili.com
ipset详细介绍网址
openwrt使用ipset+iptables建立一个简单的家庭网络管理功能相关推荐
- bat 删除文件_利用电脑文本文档建立一个简单方便的删除文件的小程序
删除文不需要的文件或者资料,是日常工作中必定会遇到了. 各种的杀毒软件或者防护软件都具备删除文件的功能,例如360.腾讯电脑管家.这些操作起来其实也不是太麻烦! 不过呢!今天来和大家分享一个更简单的方 ...
- tensorflow学习笔记二——建立一个简单的神经网络拟合二次函数
tensorflow学习笔记二--建立一个简单的神经网络 2016-09-23 16:04 2973人阅读 评论(2) 收藏 举报 分类: tensorflow(4) 目录(?)[+] 本笔记目的 ...
- Hibernate学习——建立一个简单的Hibernate项目
最近老师让做个web小应用,大三的时候学习过一点J2EE的东西,也做过一些web相关的XXX管理系统,都是用servlet,jsp这些完成的,虽然勉强能够完成任务,但其中各种代码掺杂在一起,不好看而且 ...
- 机器人坐标系建立_如何在30分钟内建立一个简单的搜索机器人
机器人坐标系建立 by Quinn Langille 奎因·兰吉尔(Quinn Langille) 如何在30分钟内建立一个简单的搜索机器人 (How to Build A Simple Search ...
- 使用html 语言建立一个简单的网页,如何用记事本建立简单的网页(1).doc
第九章 网页制作 实验一 用记事本建立简单的HTML文件 [实验目的] 学会用HTML语言建立一个简单的网页. [实验内容] 建立一个网页,布局自定,包括自我介绍.图片.自己的电子信箱地址等,要求在标 ...
- 怎么建立一个简单的程序化交易系统?
怎么建立一个简单的程序化交易系统? 交易系统构成就有好几个部分,主要给大家介绍一个简单的交易系统的构成. 简单的交易系统建立的话至少要包括3个部分,即入市信号系统.离市信号系统.资金风险控制系统. 入 ...
- python追踪屏幕的移动目标_利用树莓派和Python建立一个简单、便宜的移动目标探测器...
今天我们将讨论如何建立一个简单.便宜的移动目标探测器. 这项研究的目的是确定在一个便宜的移动设备上的对象检测模型是否可以用于现实世界的任务. 作为一个移动平台,我们使用的是树莓派3B.树莓派是一款售价 ...
- 利用训练数据建立一个简单的分类器
利用训练数据建立一个简单的分类器 在机器学习领域中,分类指的是利用数据的特性将其分成若干类型的过程.分类器则可以是实现分类功能的任意算法,最简单的分类器就是简单的数字函数.在真实世界中,分类器可以是非 ...
- Matlab中如何使用appdesigner设计工具建立一个简单的界面
Matlab中如何使用appdesigner设计工具建立一个简单的界面(数据的输入.处理和保存) 以使用不同算法处理图像的功能为例 建立一个新的空白界面,matlab中输入appdesigner,打开 ...
最新文章
- python使用matplotlib可视化、自定义Y轴轴标签刻度旋转的角度(customize degree rotating axis tick labels in matplotlib)
- vue 使用sass 和less
- js title 单选框 获取_js简单获取表单中单选按钮值的方法
- 【Linux】10.安装和开启ftp服务
- Java程序设计4——集合类
- python数据库sqlite3_Python 操作 SQLite 数据库
- 线程控制、如何给面试官描述线程不安全的情况?模拟黄牛抢票展现不安全的情况及解决方式、互斥锁加锁解锁
- Unity3D-Rigidbody
- 基于WebGIS的车联网平台的研究与应用
- 三星老手机com.android,你认识几个?细数三星最经典的手机
- 18个黑科技网站,你想要的软件都能找到,请收藏!!!
- Win10 UWP 开发教程
- 用MySQL语言创建视图_mysql 创建视图
- 算法竞赛入门经典(第二版)习题解答——第一章
- 华为机顶盒系统时间同步服务器,华为悦盒主时间同步服务器地址
- block的名词形式_block是什么意思_block在线翻译_英语_读音_用法_例句_海词词典
- SVG公众号排版『大尺寸背景图重复安卓不显示』解决方法
- [APIO2009]采油区域 题解
- c4d fbx大小_C4D设计模型大全,多达23.7GB
- MySQL的索引(普通索引、唯一索引,主键索引、组合索引、全文索引、空间索引)相关操作