我正在尝试为我的Android应用程序设置测试环境,其中单独的设备需要Internet连接,但没有无线功能.
所以我决定使用usb反向网络共享.我的主机正在运行Ubuntu.我已设法为一台设备设置反向网络共享,连接正常,我可以通过此设备的adb shell ping google.com.
当我连接第二个设备时,第一个绑定停止工作.两个设备在其内部usb0接口上配置了相同的IP地址.
这是我到目前为止所拥有的:
主机上的端口转发已激活
echo 1 > /proc/sys/net/ipv4/ip_forward
Run Code Online (Sandbox Code Playgroud)Iptables规定主机路由流量:
iptables -t nat -A POSTROUTING -s 169.254.255.2/24 -j MASQUERADE
Run Code Online (Sandbox Code Playgroud)插件第一个设备:
ifconfig shows the device on usb0 @ ip 169.254.255.2/30
Run Code Online (Sandbox Code Playgroud)在第一台设备上(带adb shell)
> route add default gw 169.254.255.2 dev usb0
> setprop net.dns1 8.8.8.8
> ping google.com --> is giving results
Run Code Online (Sandbox Code Playgroud)插件第二个设备
ifconfig shows this device on usb1 @ ip 169.254.255.2/30
Run Code Online (Sandbox Code Playgroud)在第二台设备上
Add gw, set DNS like above
Run Code Online (Sandbox Code Playgroud)现在第二个设备可以ping google.com,但第一个没有.
当我更改内部IP或分配给主机usb0的IP时,usb1接口我无法通过adb连接到设备.
我怀疑这是一个网络问题,而不是亚行的问题?有任何想法吗?