【问题标题】:iptables 1.4.11 on AndroidAndroid 上的 iptables 1.4.11
【发布时间】:2013-10-10 17:35:54
【问题描述】:

我已经从http://source.android.com/source/building-kernels.html下载了Android内核源代码

然后我启动了模拟器并想使用 iptable 规则,但出现以下错误。 iptable 包是否未完全安装?为什么缺少 NAT 表?

最初我开始关注http://randomizedsort.blogspot.de/2011/03/porting-iptables-1410-to-android.html#comment-form_8482839589527760177 来安装iptables,但是在adb shell 上看到了iptablesv1.4.11.1,我放弃了这个想法。有人试过在较新的 android 内核源上移植 iptables 吗?

 adb shell
# su root

# iptables  -t nat -A OUTPUT -p tcp --dport 8000 -j REDIRECT --to-port 8080

FIX ME! implement getprotobyname() bionic/libc/bionic/stubs.c:450
iptables v1.4.11.1: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

请指教!

【问题讨论】:

  • 说得不好,因为实际错误隐藏在未经修饰的无关紧要之下。 (stackoverflow.com/questions/10331699/…) 上的声明更清晰,但即使是这样也不应该作为问题发布,因为该问题的网络搜索很好地涵盖了它
  • 您好,我现在在使用 Android 4.2 时也遇到了同样的问题。你找到解决办法了吗?

标签: android iptables


【解决方案1】:

使用协议号 (-p 6) 而不是名称 (-p tcp):

iptables -t nat -A OUTPUT -p 6 --dport 8000 -j REDIRECT --to-port 8080

有关更多信息,请参阅此答案: getprotobyname error iptables

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多