欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

转android 模拟器中做端口重定向

程序员文章站 2022-06-30 11:47:54
...
android 模拟器中做端口重定向
2011年01月18日 星期二 16:53

为什么要做端口重定向呢?

开发的过程中遇到一个问题:android的模拟器有个很诡异的特点,就是访问网络的时候只可以从模拟器主动往出去连。但是却无法主的从外面连接模拟器,这个特点和NAT几乎完全一样,具有单向连接的特性。

实际开发中我们希望模拟器像一*立的手机一样,能和处于同一局域网中的手机进行端对端的通信。这时就需要做端口重定向。

类似于给路由器做nat的端口重定向。下面几步:

>运行模拟器:你会发现模拟器标题栏上写着端口号:5554,其实这个端口号是模拟器的console端口

>telnet到模拟器的console口上:telnet localhost 5554

如果你用的是win7. 默认是没有开启telnet功能的,开启的方法看这里http://hi.baidu.com/lzhts/blog/item/2442d162a0c618cfe6113ae2.html

>在控制台下输入 redir add tcp:7778:9998 就完成了从主机7778端口重定向到模拟器9998端口的任务

redir的语法是:redir <list|add|del>

支持下表列出的子命令:

子命令 描述 注释
list 列出当前的端口重定向 (min 150, max 550)
add <protocol>:<host-port>:<guest-port> 添加新的端口重定向 <protocol> 必须是”tcp” 或 “udp”<host-port> 是主机上开启的端口号<guest-port> 是向模拟器/设备发送数据的端口号
del <protocol>:<host-port> 删除端口重定向 <protocol> and <host-port>的含义同上