wifi热点的防火墙

Chain tetherctrl_FORWARD (1 references)

pkts bytes target prot opt in out source destination

94805 59M bw_global_alert all -- * * 0.0.0.0/0 0.0.0.0/0

  • 匹配条件:in=* out=*,所有协议,无源/目标限制
  • 作用:所有进入此链的包无条件命中,跳转到 bw_global_alert 链统计带宽,然后 RETURN 回来继续匹配下一条
  • tcpdump 示例:任何转发包都会命中,比如:

全部命中,94805 包就是总转发量。

30509 29M tetherctrl_counters all -- eth2.16 wlan2 0.0.0.0/0 0.0.0.0/0 goto state RELATED,ESTABLISHED

匹配条件:in=eth2.16 out=wlan2,且连接状态为 ESTABLISHED 或 RELATED

• 作用:互联网的回包(属于已建立连接的响应包)从 eth2.16 转发给热点客户端 wlan2。goto 意味着进入 tetherctrl_counters 计数后 RETURN 直接回到主 FORWARD 链,不再走 tetherctrl_FORWARD 后续规则

热点客户端之前发了 HTTP 请求,服务器响应回来:

110.242.68.66.80 > 192.168.43.100.52341: TCP ACK, length 1460 ← HTTP 响应数据

DNS 查询的响应:

223.5.5.5.53 > 192.168.43.100.41234: UDP, length 128 ← DNS 应答

FTP 数据连接(RELATED):

203.0.113.5.20 > 192.168.43.100.49876: TCP SYN ← FTP RELATED 连接

30509 包、29MB ------ 这是下载方向的流量。

250 10944 DROP all -- wlan2 eth2.16 0.0.0.0/0 0.0.0.0/0 state INVALID

匹配条件:in=wlan2 out=eth2.16,连接跟踪状态为 INVALID

• 作用:热点客户端发出的但 conntrack 无法识别的异常包,直接丢弃

TCP 的 RST 包(没有对应的已知连接):

192.168.43.100.52341 > 110.242.68.66.80: Flags R, seq 0

分片重组失败的碎片:

192.168.43.100 > 8.8.8.8: frag (0|1480) ← 乱序/重复分片

伪造的 ACK(没有对应的 SYN):

192.168.43.100.12345 > 1.2.3.4.443: Flags ., ack 1

250 包、10KB ------ 正常范围,通常是连接断开期间的残余包。

38833 15M tetherctrl_counters all -- wlan2 eth2.16 0.0.0.0/0 0.0.0.0/0 goto

匹配条件:in=wlan2 out=eth2.16,无状态限制(NEW + ESTABLISHED + RELATED 都匹配)

• 作用:热点客户端发往互联网的所有合法包(新建连接 + 已有连接的后续包)放行并计数。经过规则 3 过滤掉 INVALID 后,剩下的都在这里放行

• tcpdump 示例:

新建 TCP 连接的 SYN(NEW):

192.168.43.100.52341 > 110.242.68.66.80: Flags S, seq 1234

DNS 查询(NEW):

192.168.43.100.41234 > 223.5.5.5.53: UDP, length 64

已建立连接上的数据包(ESTABLISHED):

192.168.43.100.52341 > 110.242.68.66.80: Flags P., length 512 ← POST 请求

HTTPS 握手(NEW → ESTABLISHED):

192.168.43.100.43210 > 14.215.177.39.443: Flags S, seq 5678

38833 包、15MB ------ 这是上传方向的流量。

25213 14M DROP all -- * * 0.0.0.0/0 0.0.0.0/0

匹配条件:in=* out=*,前面所有规则都没匹配到的包

• 作用:不属于 eth2.16 ↔ wlan2 接口对的转发流量,全部丢弃

• tcpdump 示例:

25213 包、14MB ------ 这就是导致热点不可用的元凶。这些包本应正常转发,但被 DROP 拦截了。改成 RETURN 后,它们会回到主 FORWARD 链走 policy ACCEPT 放行。

相关推荐
我命由我1234517 分钟前
Android Jetpack Compose 开发问题:Unresolved reference ‘Icons‘.
android·java-ee·kotlin·android studio·android jetpack·android-studio·android runtime
爱笑鱼17 分钟前
Android 系统启动机制(六):Zygote 创建 App 为什么走 Socket?哪些是源码事实,哪些是架构解释?
android·linux
AI2中文网20 分钟前
安卓模拟器启动卡在进度条?两步解决硬件加速冲突
android
IT毕设实战小研29 分钟前
基于大数据的DAX40成分股金融新闻情感趋势可视化分析
android·大数据·python·考研·金融·课程设计
Android-Flutter1 小时前
flutter async/await 详解
android·flutter
步行cgn1 小时前
Spring Boot 中的 YAML 完全指南
android·spring boot·firefox
事圆则缓2 小时前
Java 常见数据结构与 Android 使用场景
android·java·数据结构
RisunJan2 小时前
Android 高频面试题与解答
android
MyBili2 小时前
【安卓开发/搞机】快图浏览(QuickPic)技术解析:为何这款3MB应用仍是本地图库的性能天花板?
android·app·安卓·文件管理·相册·看图软件·手机相册
事圆则缓3 小时前
Kotlin 高阶工程化与 Android 深入实践
android·开发语言·kotlin