我在Ubuntu下敲
iptables -I OUTPUT -p tcp -m string --string "baidu.com" --algo bm -j DROP
没有问题,可以拦截,同样一句话在Android平台下, 控制台就会报
iptables: No chain/target/match by that name.的错误
两个问题
1.lsmod查看模块发现Androi没有ip_tables模块,
但是iptables -A INPUT -s www.baidu.com -j DROP是可以执行的
2.网上有说内核,缺少字符串匹配,要怎么做?
刚开始看iptables,概念还比较模糊,我的需求是给定一个域名,不允许其访问该域名
我知道一点Linux下哈,你可以check下你的Android是否包含那些模块,看是否有些功能没有打开。
比如Linux中控制iptable最少需要的宏:
CONFIG_PACKET
CONFIG_NETFILTER
CONFIG_IP_NF_CONNTRACK
CONFIG_IP_NF_FTP
CONFIG_IP_NF_IRC
CONFIG_IP_NF_IPTABLES
CONFIG_IP_NF_FILTER
CONFIG_IP_NF_NAT
CONFIG_IP_NF_MATCH_STATE
CONFIG_IP_NF_TARGET_LOG
CONFIG_IP_NF_MATCH_LIMIT
CONFIG_IP_NF_TARGET_MASQUERADE