模拟器设置ip转发
应用场景
有一次线上服务器迁移导致部分 app 用户登录失败。经排查发现我们 app 的有个网关是写死的多个公网 ip,怀疑此 ip 不可用,所以我们使用之前的 app 版本,将其中有问题的 ip 转发到现在正常的 ip 里面,用来测试是否正常来确定是否是因为服务器迁移导致的问题
如果想在诸如雷电模拟器中,将发往某个ip的请求转发到另一个ip上。
- 模拟器需要开启root权限
- 安装google
- google play安装Terminal Emulator
- 启动Terminal Emulator 在终端中输入su,同意获取ROOT权限
- 执行 iptables -t nat -A OUTPUT -d 原ip地址 -j DNAT --to-destination 目的ip地址
例如要将192.168.1.2 转发到 192.168.1.3
iptables -t nat -A OUTPUT -d 192.168.1.2 -j DNAT --to-destination 192.168.1.3