vid*_*guy 6 android port-forwarding nat iptables platform
我有一个绑定到localhost:7060
. 它使用 ipv6 套接字而不是 ipv4。下面是 netstat 输出。
# netstat -an
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 10.200.32.98:1720 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:4122 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:4123 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:4123 127.0.0.1:43051 ESTABLISHED
tcp 0 0 10.200.32.98:5555 10.200.32.44:53162 ESTABLISHED
tcp6 0 0 :::5060 :::* LISTEN
tcp6 0 0 ::ffff:127.0.0.1:7060 :::* LISTEN
tcp6 0 0 :::23 :::* LISTEN
tcp6 0 0 ::ffff:10.200.32.98:23 ::ffff:10.200.32.142:43505 ESTABLISHED
tcp6 0 0 ::ffff:127.0.0.1:43051 ::ffff:127.0.0.1:4123 ESTABLISHED
tcp6 0 0 ::ffff:10.200.32.98:23 ::ffff:10.200.32.44:53195 ESTABLISHED
udp6 0 0 :::5060 :::* CLOSE
#
Run Code Online (Sandbox Code Playgroud)
我想设置一个端口转发规则,该规则接受端口 24(在所有接口环回以及 eth0 上)上的连接并将数据转发到localhost:7060
.
这就是我设置 iptables 规则的方式:
iptables -t nat -A PREROUTING -p tcp --dport 24 -j DNAT --to 127.0.0.1:7060**
它不工作。当我从不同的盒子 telnet 时,我看到以下内容
$telnet 10.200.32.98 24
正在尝试 10.200.32.98...
如果我更改要绑定的服务器*:7060
并设置以下规则,它似乎工作正常。
iptables -t nat -A PREROUTING -p tcp --dport 24 -j REDIRECT --to-port 7060
但这将使我的服务器在我不喜欢的 WAN 接口上可用。
我觉得这与 ipv6 套接字(netstat 输出中的 tcp6 行)有关。这整个过程是在带有自定义构建的 Android 平台映像的 Android 设备上完成的。
我如何让这个工作?
归档时间: |
|
查看次数: |
4472 次 |
最近记录: |