在手机端创建一个 HTTP 代理可以让电脑共享手机网络。
手机端
- 在 Play Store 里选择 Termux 安装。
其它备选 app : GNURoot Debian 等。 - 打开 Termux 安装Python:
$ pkg install python
Termux 默认安装的是 Python 3,自带包管理 pip 。如果没有也可以自行安装 pip 。
- 安装 HTTP 代理脚本:
$ pip install proxy.py
- 运行 HTTP 代理:
$ proxy.py
默认端口是 8899。修改端口或其它功能可以查看相应帮助。
- 打开 Android 手机的 USB 调试模式 (要首先打开开发者模式才能看到)。
电脑端
- 现在用数据线把手机和电脑相连。
- 在电脑端安装 Android 系统调试程序 adb 。(与操作系统有关,Linux 系统如 Ubuntu 可以直接从软件仓库安装)。
- 在系统终端中输入:
$ adb forward tcp:8899 tcp:8899
将手机端口 8899 映射到电脑端口 8899 。注:每次重新连接后都需要输入该命令。
- 修改系统或浏览器的代理服务器为 localhost:8899 (具体设置与操作系统和浏览器有关)。
现在电脑就可以使用手机网络上网了。
2020.06 更新
- proxy.py更新后可执行文件不再是以前的proxy.py,变为proxy。
- proxy.py更新后要使用multiprocessing模块。但是android平台对multiprocessing模块支持的不好,所以目前proxy.py已经无法使用。
- 替代的解决方案如下:
- 手机端可以在Google Play Store 搜索安装
Every Proxy
程序并设置来代替以上所有繁琐的步骤。 - 或者在termux里安装现成的代理软件,比如privoxy:
- 手机端可以在Google Play Store 搜索安装
$ pkg install privoxy
$ privoxy --no-daemon ../usr/etc/privoxy/config
privoxy默认端口是 8118,所以手机端设置也要做相应修改。例如
$ adb forward tcp:8118 tcp:8118
最后修改系统或浏览器的代理服务器为 localhost:8118。privoxy是一款很有名的代理程序,如何配置网上有很多现成的教程,这里就不再重复了,请自行google。