Android上重定向端口号

本文介绍如何在已root的Android设备上将HTTP服务从8080端口重定向到80端口。通过使用iptables命令实现,并提供具体的Java代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在安卓设备上写了一个httpServer,刚开始绑定的端口号是8080,爽歪歪的完成了任务,然后需求改变说把8080改成80的端口。找个挺多方法,也把服务改成了系统的服务。我测试的设备满足以下条件:
1.0设备已root。
2.0已做签名打包。
最后通过命令行实现了iptable,指令如下:
iptables -t nat -A PREROUTING -p tcp -m tcp –dport 80 -j REDIRECT –to-ports 8080
恩,实现步骤是:
1.0)使用超级用户登录

private static Process process;

      /** * 初始化进程*/
public static void initProcess(){
    if (process ==null){
            try {
                process = Runtime.getRuntime().exec("su");
            } catch (IOException e) {
                e.printStackTrace();
            }
    }
}

2.0)发送指令重定向端口号

     private static void portreset(){
    OutputStream outputStream = process.getOutputStream();
    String cmd = "iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080 ";
    try {
        outputStream.write(cmd.getBytes());
        outputStream.flush();
    } catch (IOException e) {
        e.printStackTrace();
    }

}

项目已经打包放在github 连接地址如下:https://github.com/Xtlbb/AndroidDevicesApi
项目中可以修改音量大小,可以系统截图,旋转屏幕等操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值