У меня есть WiFi-роутер (xiaomi HD) с настроенной ОС openwrt, и я добавил несколько правил iptables, пытающихся подсчитать трафик https, но, похоже, это правило не может совпадать с трафиком https. Вот правила (на роутере):
root@XiaoQiang: iptables -nvxL FORWARD
Chain FORWARD (policy ACCEPT 22 packets, 3134 bytes)
pkts bytes target prot opt in out source destination
4 1668 tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:443
7 713 tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
22 3134 all -- * * 0.0.0.0/0 0.0.0.0/0
Я инициировал трафик https с (на ноутбуке):
xxx-Pro:traffic_statistics user$ wget https://downloads.openwrt.org/releases/18.06.1/targets/ipq806x/generic/packages/libc_1.1.19-1_arm_cortex-a15_neon-vfpv4.ipk
root@xxx# ll libc_1.1.19-1_arm_cortex-a15_neon-vfpv4.ipk
-rw-r--r--@ 1 tengjp staff 226903 8 17 19:46 libc_1.1.19-1_arm_cortex-a15_neon-vfpv4.ipk
и это успешно, но счетчики iptables, кажется, не соответствуют размеру загруженного файла.
Если я добавлю правило отклонения для порта 443, оно соответствует правилу, и wget даже не сможет установить соединение (на ноутбуке):
xxx-Pro:traffic_statistics user$ wget https://downloads.openwrt.org/releases/18.06.1/targets/ipq806x/generic/packages/libc_1.1.19-1_arm_cortex-a15_neon-vfpv4.ipk
--2019-01-22 15:29:50-- https://downloads.openwrt.org/releases/18.06.1/targets/ipq806x/generic/packages/libc_1.1.19-1_arm_cortex-a15_neon-vfpv4.ipk
downloads.openwrt.org (downloads.openwrt.org)... 148.251.78.235
connecting downloads.openwrt.org (downloads.openwrt.org)|148.251.78.235|:443...
failure:Operation timed out。
retrying
--2019-01-22 15:31:06-- (retry times: 2) https://downloads.openwrt.org/releases/18.06.1/targets/ipq806x/generic/packages/libc_1.1.19-1_arm_cortex-a15_neon-vfpv4.ipk
connecting downloads.openwrt.org (downloads.openwrt.org)|148.251.78.235|:443... failure:Operation timed out。
retrying
// on router
root@XiaoQiang: iptables -nvxL FORWARD
Chain FORWARD (policy ACCEPT 91 packets, 10410 bytes)
pkts bytes target prot opt in out source destination
95 5399 REJECT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:443 reject-with icmp-port-unreachable
7 312 tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:443
84 4713 tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
157 15471 all -- * * 0.0.0.0/0 0.0.0.0/0
Тоже пробовал с http трафиком, работает нормально.
Информация об ОС роутера:
root@XiaoQiang:/userdisk# uname -a
Linux XiaoQiang 3.4.103 #1 MiWiFi-R3D-2.29.4 SMP PREEMPT Thu Dec 13 08:44:30 UTC 2018 armv7l GNU/Linux
root@XiaoQiang:/userdisk# iptables -v
iptables v1.4.21: no command specified
Try `iptables -h' or 'iptables --help' for more information.
root@XiaoQiang:/userdisk# cat /proc/version
Linux version 3.4.103 (jenkins@f408c3ab886a) (gcc version 4.8.5 (crosstool-NG crosstool-ng-1.22.0) ) #1 MiWiFi-R3D-2.29.4 SMP PREEMPT Thu Dec 13 08:44:30 UTC 2018
root@XiaoQiang:/userdisk# cat /etc/openwrt_release
DISTRIB_ID="QSDK"
DISTRIB_RELEASE="IPQ806X.LN"
DISTRIB_REVISION="unknown"
DISTRIB_CODENAME="standard"
DISTRIB_TARGET="ipq806x/MiWiFi"
DISTRIB_DESCRIPTION="QSDK Standard IPQ806X.LN"
Пробовал с другим роутером с другой версией ОС, и http и https нормально работают с тем же правилом iptables:
Linux PandoraBox 3.14.44 #7 Mon Jun 8 22:23:15 CST 2015 mips GNU/Linux
iptables v1.4.21
Любое предложение приветствуется!