ルート権限を取得されたデバイスでiptablesをサポートするAndroidがあります。
私はこのエラーが発生するようです、誰かが理由を知っていますか?
iptables -A INPUT -p tcp -i eth0 --dport 8000 -m state --state NEW -j ACCEPT
FIX ME! implement getprotobyname() bionic/libc/bionic/stubs.c:378
ルート権限を取得されたデバイスでiptablesをサポートするAndroidがあります。
私はこのエラーが発生するようです、誰かが理由を知っていますか?
iptables -A INPUT -p tcp -i eth0 --dport 8000 -m state --state NEW -j ACCEPT
FIX ME! implement getprotobyname() bionic/libc/bionic/stubs.c:378
tcpの代わりに6を入力できます。
iptables -A INPUT -p 6(iptables -A INPUT -p tcpの代わりに)
http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml
AndroidはBioniclibcを使用します。これは、多くのものが欠落している本当に最小限のlibcです。そのエラーメッセージは、それgetprotobyname()
がBioniclibcに実装されていないことを示しています。iptables
このエラーがトリガーされたときにとにかくコマンドを実行するようですが、私の推測では、その-p tcp
部分を無視し、すべてのプロトコルのルールを設定するだけです。
幸い、その関数はiptablesの操作に不可欠ではありません。getprotobyname()
tcpのようなプロトコル名を数値に変換するだけです(tcp == 6)。これらの番号はここで見つけることができます:http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml
代わりにプロトコル番号を使用して-p 6
、エラーメッセージを削除してください。
iptables -A INPUT -p 6 -i eth0 --dport 8000 -m state --state NEW -j ACCEPT
一部のデバイスでは、これは単なる警告である可能性がありますが、ルールは問題ありません。iptables -L INPUT -nvを使用してルールが表示されることを確認してから、試してください。