routeros 里该怎么禁止某些域名访问呢
source link: https://www.v2ex.com/t/916223
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
我现在是在 firewall 里添加了一个地址列表,然后在 filter 里添加规则,但是没什么鸟用,问问大家究竟要怎么做呢?
我的规则是
chain=input action=drop dst-address-list=blockweb
chinni 17 小时 1 分钟前 via Android 1.用 forward 表 2.用 sni 匹配比 ip 颗粒度更加细
|
dsgdsfh 16 小时 17 分钟前 我是树莓派搭建 DNS ,然后 DHCP 设置树莓派 ip ,直接 DNS 写规则屏蔽
|
sylviaweissenba 16 小时 15 分钟前 vi /etc/hosts
|
ouqihang 16 小时 14 分钟前 via Android 用 input 应该不对,input 是从外网进内网。
|
ych8398527 16 小时 0 分钟前 ip->dns->static 把域名直接解析到 127.0.0.1
|
mac100 15 小时 33 分钟前 添加一个旁路由吧。ros 管 IP 分流 OP 管域名分流 。完美
|
Ruslan 13 小时 39 分钟前 配置 DNS 劫持,把 53 端口劫持到你自己内网的 DNS 服务器,在自己 DNS 服务器把域名解析到 127.0.0.1
|
wwbfred 12 小时 43 分钟前 via iPhone 家用需求该是上 OP 吧,ROS 不是这个场景的,有些家庭基础功能到 ROS 里变成了折腾功能。OP 里 dnsmasq 直接写 0.0.0.0 就行了。
|
qfdk 12 小时 20 分钟前 via iPhone 建议来个 aurgard home 然后 ip 设置成 3.7.2.1 想怎么玩儿就咋玩儿
|
datocp 12 小时 7 分钟前 这种对于 openwrt 就简单了
直接 dnsmasq address=/qq.com/127.0.01 #这个地址还是是比 0.0.0.0 更可靠,消亡时间更快。之前是解决 office2016 升级用。 其它的就是对电视进行分析它连哪些外部 ip 域名,然后用 nslookup 之类的取得 ip 。以目前 CDN 的存在这种方式误伤率相当高的。又是 dnsmasq 更灵活调用 ipset ,ipset=/qq.com/BdstIP 然后 iptables -p tcp -s 电视 ip -d 升级 ip -j -j REJECT --reject-with tcp-reset iptables -s 电视 ip -d 升级 ip-j REJECT --reject-with icmp-net-unreachable 哈哈,ros 真看不上。哪有原生 linux 好用。随便搞个优酷 yk1 也能跑满 100mbps 。没有 1000mbps 带宽,不知道 erx 能带多大的带宽。 |
datocp 12 小时 6 分钟前 iptables -p tcp -s 电视 ip -d 升级 ip -j REJECT --reject-with tcp-reset
iptables -s 电视 ip -d 升级 ip -j REJECT --reject-with icmp-net-unreachable |
3dxfood 10 小时 18 分钟前 可以用 ros 做 dns server ,dns static 里写黑洞 A 记录;或者 ros 里 DNS server 写旁路 op 地址,用 op 来做。
|
mrzx 10 小时 2 分钟前 @3dxfood 谢谢,大致理解了。
routeros 大概通过 3 种方式来解决这个 UP 的需求。 1.采用 DNS 劫持的方式,将不想访问的站点直接解析成错误的 IP ,让广告失效。DNS 劫持的工作可以由 routeros 的 dns 功能做,或者 openwrt 固件的路由器来做? 2.通过 layer7 识别方式来写,感觉这个难度最高,怎么写才能屏蔽广告,如果有对应的例子就能理解了,看了一下楼上提供的官网例子,没看懂。。。 3.通过你们说的 sni,我搜了半天才了解 sni 是什么,“在 HTTPS 中,先有 TLS 握手,然后才能开始 HTTP 对话。如果没有 SNI ,客户端将无法向服务器指示正在与之通信的主机名。” 然后利用 routeros 强大的 sni 匹配功能,将主机名匹配起来,在决定 drop 和放行. |
mrzx 9 小时 37 分钟前 layer7 语法搜了好久,大概理解了。
大致是先用 wireshark 抓包,抓取数据流用的 data 部分,比如 V2EX 在数据流的十六进制就是 76 32 65 78 ,在通过在 routeros 里新建 layer7 匹配策略,在 Regex 语句匹配这些十六进制,可能正则表达式跟 iptables 之类的稍有些区别。。 比如十六进制 76 在 routeros 下就写成\76 ^代表数据包的开头 $代表数据包的结尾 匹配 V2EX 的,layer7 语法应该写成“^\76.+ \78$” 哪天在家里屏蔽老妈上拼多多试试。。。。 |
mrzx 9 小时 35 分钟前 还有一点比较好奇的是,在 UP 主的 android 电视机上,用什么软件抓包? wireshark 肯定是没有的.tcpdump?那个需要 root 权限的。。。
|
linuxgo 9 小时 8 分钟前 @3dxfood #18 我现在就是 ros 做 dns ,然后把国外的分流给 op 解析,我也看了 ros 的 dns static ,没看到如何添加 address-list ,一条条添加有点麻烦,因为总共有几十条地址要屏蔽
|
linuxgo 9 小时 5 分钟前 以前用 op 的 pw 的屏蔽网站功能很管用,但是 pw 的机场自动切换不好用,现在用的 openclash 又没地方加黑名单
|
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK