为什么 Android 无法识别通过 Ubuntu 创建的 WiFi 热点?

为什么 Android 无法识别通过 Ubuntu 创建的 WiFi 热点?

我已经通过我的 Ubuntu 笔记本电脑创建了 WiFi 热点。现在我在我的 Android 手机上打开 WiFi 来访问互联网,但我无法通过 Ubuntu 笔记本电脑查看我创建的热点。

我做错了什么吗?我想通过 Ubuntu 笔记本电脑的 WiFi 在我的 Android 手机上访问互联网。可以吗?

答案1

  1. 首先,您应该确保您的 wifi 适配器支持基础设施热点。如果您在 Windows 系统上使用 connectify 并且成功,请跳过此步骤。

打开终端并输入:sudo lshw | less

找到 -network 部分并确保驱动程序是 ath5k 或 ath9k,此解决方案仅适用于这些驱动程序,但应该可以满足大多数笔记本电脑用户的需求。

  1. 我们现在需要安装另外两个工具来实现热点,第一个是 hostapd(热点服务器),第二个是 dnsmasq(dns dhcp 服务器)

在终端类型中:sudo apt-get install hostapd dnsmasq

  1. 如果已经启动,则停止这些服务,并阻止它们在系统启动时启动。

在终端类型中: sudo service hostapd stop sudo service dnsmasq stop sudo update-rc.d hostapd disable sudo update-rc.d dnsmasq disable

  1. 现在我们需要设置配置文件。在终端中输入:sudo gedit /etc/dnsmasq.conf 或 sudo kate /etc/dnsmasq.conf(如果你使用 kde)

将这些行添加到配置文件代码:

 # Bind to only one interface
 bind-interfaces
 # Choose interface for binding
 interface=wlan0
 # Specify range of IP addresses for DHCP leasses
 dhcp-range=192.168.150.2,192.168.150.10
  1. hostapd 配置

在终端类型:sudo gedit /etc/hostapd.conf

并添加以下行

代码:

 # Define interface
 interface=wlan0
 # Select driver
 driver=nl80211
 # Set access point name
 ssid=myhotspot
 # Set access point harware mode to 802.11g
 hw_mode=g
 # Set WIFI channel (can be easily changed)
 channel=6
 # Enable WPA2 only (1 for WPA, 2 for WPA2, 3 for WPA + WPA2)
 wpa=2
 wpa_passphrase=mypassword

您可以在此处更改 ssid 名称和密码。当前配置将创建名为 myhotspot 的热点,密码为 mypassword。

  1. 现在在您想要的任何位置创建一个名为 start.sh 的文件,使用任何文本编辑器编辑它,如下所示:

代码:

 #!/bin/bash
 # Start
 # Configure IP address for WLAN
 sudo ifconfig wlan0 192.168.150.1
 # Start DHCP/DNS server
 sudo service dnsmasq restart
 # Enable routing
 sudo sysctl net.ipv4.ip_forward=1
 # Enable NAT
 sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
 # Run access point daemon
 sudo hostapd /etc/hostapd.conf
 # Stop
 # Disable NAT
 sudo iptables -D POSTROUTING -t nat -o ppp0 -j MASQUERADE
 # Disable routing
 sudo sysctl net.ipv4.ip_forward=0
 # Disable DHCP/DNS server
 sudo service dnsmasq stop
 sudo service hostapd stop

您可能需要将其中的 ppp0 更改为 eth0(或任何其他指代您的有线连接的数字)。

  1. 最后一步。现在您可以通过启动我们的脚本来启动热点。只需使用 sudo sh 运行它,对我来说它看起来像这样 sudo sh /home/ogyct/Desktop/start.sh 因为我的桌面上有它

来源:http://www.youtube.com/watch?v=U59PymP-K6Y

相关内容