如何与Android手机共享有线Internet连接(反向网络共享)?
我一直试图与我的Android手机分享我的有线互联网连接。 但是我无法成功地做到这一点。 有没有人成功过? 我使用的操作系统如下:
- Ubuntu 10.10
- Android 2.3
对的,这是可能的。 我有运行Cyanogenmod 7的Ubuntu 11.04,NetworkManager 0.8.4,Android Nexus One手机。
如Roman所述,右键单击NetworkManager图标并选择“创建新的无线网络”。 我选择将连接断开(没有WPA,没有WEP)。 我的手机能够立即看到网络,我没有遇到任何麻烦。 桥接是自动完成的,所以我可以浏览互联网而无需额外配置任何东西。
您使用上述方法遇到问题的原因是因为Android 2.3不支持ad-hoc网络。 确切地说,Android的wpa_supplicant不显示ad-hoc网络。 有很多方法可以解决这个问题。 Google围绕并在xda-developers论坛中狩猎。 您可能需要在手机上进行一些超出此答案范围的黑客攻击。
我的个人建议:如果您的手机支持Cyanogenmod,您可以安装它以获得临时支持和其他hackish乐趣。 您需要根据自己的喜好来使用自己的手机。
另一种方法是尝试“基础设施模式”。 按照上面的设置ad-hoc无线网络后,单击NetworkManager图标,选择“编辑连接”。 点击无线选项卡,然后编辑您刚刚创建的ad-hoc网络。 在模式下,选择“基础架构”。 我不确定这是否适合你,因为我没有可以测试的股票Android手机。 我的想法是,如果ad-hoc模式是问题,那么另一种模式可能是解决方案。
祝好运!
首先,因为我们都知道Android的股票ROM,即手机附带的那个不支持ad-hoc模式(令人惊讶),甚至Ice-Cream Sandwich(Android 4.0)也不支持ad-hoc模式。
因此,我们需要使用Ubuntu创建一个接入点,任何Android手机都可以轻松连接到该接入点。 在Windows中你可以使用Connectify来做到这一点并且它运行得很好但是使用Ubuntu你可能会遇到一些问题,这取决于你的wifi卡是否支持接入点模式(主模式)。
现在,即使你的wifi卡支持接入点模式,下一个问题是你的wifi卡的驱动程序是否支持AP模式,如果确实如此,问题就解决了,如果没有,那么你有三个选择:
-
等到驱动程序收到AP模式的更新。 (许多wifi卡驱动程序仍处于升级阶段)
-
购买wifi-dongle并确保它在ubuntu上支持AP模式。
-
使用Windows,Connectify将为您完成工作。
如果您有兴趣,可以发布您的wifi卡驱动程序的名称,以便我可以进一步帮助您。 使用此命令:
lshw -c network
我找到了一个可行的解决方案,通过USB反向网络共享与我的手机共享我的互联网连接,但我的笔记本电脑使用无线连接:
互联网 – >无线 – >笔记本电脑 – > USB线 – > Android手机
因此,如果您可以使用,或者如果您的电脑有第二个以太网卡,则应该从Play商店查看“反向系绳试用”应用程序。
- 像往常一样将电脑连接到互联网
- 通过USB将Android手机连接到电脑
- 在Androids’设置’中激活’USB-Tethering’
- 如此处所述,在Ubuntus网络管理器中创建新的有线连接
- 启动反向系绳并按照说明操作
- 在手机上浏览:)
请查看此链接并告诉我它是否与您正在寻找的大致相同。
https://help.ubuntu.com/community/WifiDocs/WirelessAccessPoint
如果它看起来像是(或接近)你想要的东西让我知道。
我有兴趣自己这样做,只是通过ppp0引导流量的轻微修改。 这是一个系留连接。
也许我们可以调整这些指令来完成我们需要的工作。
编辑:这看起来好像在专用机器上工作得最好(基本上使它成为路由器)。 我仍然在查看配置,但这可能会导致您使用无线连接到不同位置的笔记本电脑出现问题。
此外,似乎有一些涉及我们可能放弃的Windows机器的步骤。
你也想看到这个。 https://help.ubuntu.com/community/WifiDocs/MasterMode
假设您的计算机中还有一张无线网卡:在网络管理器中,单击菜单和“创建新的无线网络…”。 稍后,您将在Android中看到网络。
您可以从计算机的wifi菜单创建无线网络。 右键单击任务栏中的wifi图标,然后单击“创建新网络”。 填写选项,然后通过手机连接到该选项。 确保您的计算机也连接到有线网络电缆。 根据我的理解,电缆应自动桥接到无线网络,它应该都可以正常工作。
在三星S3迷你上使用Kubuntu 15.10和Android 4.2.2上的USB电缆为我提供了一个工作解决方案
要求
Android的
- busybox应用安装
- USB电缆连接到您的计算机
- 在您的Android设备上启用USB调试(以便能够从您的电脑adb)
电脑
-
在你的/ etc / network / interfaces中你需要有这两行,否则你将得到一个
no such device
错误allow-hotplug usb0 auto usb0
-
已安装adb(
apt-get install android-tools-adb
)
连接
-
在你的android中,启用设置 – >连接 – >网络连接 – >绑定和便携式热点 – > USB网络共享选项,这将创建到计算机的USB连接,您可以在计算机上使用
ifconfig
命令查看。 看看@接口名称这次对我来说是enxf6759e7fbebd
。enxf6759e7fbebd Link encap:Ethernet HWaddr a2:61:3c:83:1c:38 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:6 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:464 (464.0 B) TX bytes:0 (0.0 B) eth0 Link encap:Ethernet HWaddr 50:e5:49:47:f4:fd inet addr:192.168.178.20 Bcast:192.168.178.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:40894966 errors:0 dropped:0 overruns:0 frame:0 TX packets:86312833 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:20969506400 (20.9 GB) TX bytes:120329513606 (120.3 GB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:30521 errors:0 dropped:0 overruns:0 frame:0 TX packets:30521 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:10868749 (10.8 MB) TX bytes:10868749 (10.8 MB)
-
使用以下命令为此网络接口上的计算机分配IP地址:
sudo ifconfig enxf6759e7fbebd 192.168.42.135 netmask 255.255.255.0
其中enxf6759e7fbebd是您在上一步中获得的接口。 -
启用IP转发
sudo -- sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
-
在计算机上启用nat
sudo iptables -t nat -F sudo iptables -t nat -A POSTROUTING -j MASQUERADE
-
在您的计算机上连接到您的Android设备
adb shell su
-
然后你已经有了连接,你可以用
busybox ifconfig -a
命令查看rndis0 Link encap:Ethernet HWaddr FA:08:D6:1A:35:90 inet addr:192.168.42.129 Bcast:192.168.42.255 Mask:255.255.255.0 inet6 addr: fe80::f808:d6ff:fe1a:3590/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:4 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:564 (564.0 B)
您可以将默认路由添加到您使用busybox route add default gw 192.168.42.135 dev rndis0
2点修复的计算机网络地址,这就是它(您可以使用busybox route
命令检查路由)
这对我有用
- Ubuntu 12.04
- Android 4.0.4
安装hostapd
sudo apt-get install hostapd
简单来说,hostapd允许您创建软件wifi接入点,允许适当数量的配置选项。 在本文的其余部分,我将展示如何使用hostapd在Linux中创建软件访问点,并通过它将设备分享到设备
安装hostapd安装dhcp服务器后
sudo apt-get install dhcp3-server hostapd
然后,打开一个文本编辑器程序,例如gedit
将以下内容复制到其中。
interface=wlan0 driver=nl80211 ssid=YOUR_SSID_NAME hw_mode=g channel=11 wpa=1 wpa_passphrase=YOUR_PASSWORD wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP CCMP wpa_ptk_rekey=600
请在ssid=
之后更改以填写网络名称,并在wpa_passphrase=
之后wpa_passphrase=
密码。
将文件保存为home文件夹中的hostapd.conf
创建一个新的ad-hoc无线并连接它。
现在,打开终端并键入:
sudo hostapd hostapd.conf
打开手机wifi,找到你的ssid。
来自HERE