问题描述
如何设置接入点模式Wi-Fi热点?
Point to be noted: Wireless hotspots aren’t the same as ad hoc networks. There is significant difference between the two. In short, ad hoc networks aren’t supported on newer devices and most Android, Windows Phone and Blackberry devices (and maybe iOS devices too) whereas AP mode Wi-Fi hotspots are. To get an idea about AP mode hotspots, ad hoc networks and their difference, refer to this Wikipedia page and this article on Connectify website.
最佳解决思路
Ubuntu 16.04LTS& 14.04LTS
步骤1:测试您的WiFi卡是否支持AP模式
第2步:启动内置热点
网络附带一个内置选项来启动Ad-Hoc热点。因此,我们先使用它,以便它可以在下一步中配置并转换为接入点模式热点。
在Dash中搜索网络并打开它。
按下“用作热点”按钮,网络管理器将启动AdHoc热点。
但那不是我们想要的,是吗? ĒŸÂ~Â停止热点。
第3步:配置热点
从网络指示器菜单中打开Dash中的网络连接或’Edit Connections’。
在显示的网络连接窗口中,将会有一个名为Hotspot的连接,在WiFi部分下列出。选择它并点击’Edit’按钮。
在出现的窗口中,您可以编辑热点的广播名称(SSID)。现在是此配置中最重要的部分:将模式更改为’Hotspot’,最终将热点转换为接入点模式。 Ubuntu 14.04LTS的用户会注意到这种模式不适用于从drop-down中选择。不要失望,因为你仍然可以通过额外的步骤3.1来完成。
再次保存并打开相同的编辑热点窗口。这一次转到WiFi安全选项卡以选择密码类型。如果您不想设置密码,则可以将安全性设置为无,从而创建一个开放式热点。如果您要设置密码,建议将安全密钥从WEP更改为WPA2。配置完成后,请不要忘记保存,以便可以应用更改。
在“常规”选项卡中,确保“关闭时自动连接到此网络”(除非您只使用无线网络作为热点)。否则,由于热点始终可用,因此在网络管理器小程序中将看不到用于连接到其他WiFi网络的菜单条目。
步骤3.1:仅适用于Ubuntu 14.04LTS
由于Ubuntu 14.04LTS的网络(network-manager v9.8.8
)没有提供图形设置来选择AP模式,我们将手动编辑它的配置文件来强制转换。复制以下命令,然后按Alt
+ F2
或打开终端并将其粘贴到那里:
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY gedit /etc/NetworkManager/system-connections/Hotspot
在出现的授权对话框中输入您的密码,配置文件将在文本编辑器中打开。找到以mode=
开头的行,将其更改为mode=ap
并保存该文件。
第4步:启动热点
现在配置部分结束了,我们将启动热点。点击Network Indicator菜单中的’Create New Wi-Fi Network’。
在出现的窗口中,单击连接drop-down按钮并将”New…”更改为”Hotspot”。按下”Create”按钮,您的热点将开始运行。从现在开始,无论何时您需要热点,您只需要执行此步骤即仅步骤4。
K ..这就是所有人!玩你的新接入点ĒŸÂŠ
次佳解决思路
无论您的无线网卡支持接入点模式。
首先要做的就是测试你的无线网卡是否支持无线接入点模式。如前所述,以下测试是针对基于mac80211框架的驱动程序。
安装iw
&执行以下
sudo aptitude install iw
iw list
寻找支持的接口部分,它应该是一个名为AP
的条目,如下所示
Supported interface modes:
* IBSS
* managed
* AP
* AP/VLAN
* monitor
* mesh point
如果您的驱动程序未显示此AP,并不意味着它无法创建无线热点。但是这些卡片不在本教程的范围之内。如需更多测试,请参阅ubuntu documentation on master mode。
该设置分为三部分,
-
设置&主持一个无线网络
-
IP地址设置
-
网络共享
1.建立并托管一个网络
-
所需软件:hostapd(安装它)
-
按下
alt
+F2
并键入gksu gedit
&按enter
。我们将编辑大量文件。 -
在gedit中,按
ctrl
+o
,ctrl
+l
&将其粘贴到位置框/etc/hostapd/hostapd.conf
中。按Enter
。 -
粘贴下面的代码,
interface=wlan0 driver=nl80211 ssid=test hw_mode=g channel=1 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=3 wpa_passphrase=1234567890 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP
请确保没有尾随空白和行尾! Hostapd是very sensitive以结束难以排除故障的白色空间!
您需要做的更改:
-
将
interface=wlan0
更改为您的无线网卡名称。 (如果你有一个无线网卡,它应该是wlan0) -
ssid=test
。test
是您的托管网络的名称。 -
wpa_passphrase=1234567890
,1234567890
是您网络的密码。
上面的配置创建了一个wpa&在g
模式下启用wpa2访问点。可以找到更详细的构建配置文件的指令here
现在启动hostapd
。编辑文件/etc/default/hostapd
并像这样修改DAEMON_CONF行:
DAEMON_CONF="/etc/hostapd/hostapd.conf"
然后使用以下命令启动hostapd
服务,
sudo service hostapd start
它应该启动一个无线网络。在您的移动设备中,您现在可以看到无线网络并进行身份验证。但设备将不会获得IP地址。使用命令sudo service hostapd stop
停止它
If you get any error, possibly your card doesn’t support
g
mode. Try with other >modes. Guide
第2部分:设置用于IP地址管理的DHCP服务器
安装isc-dhcp-server
编辑文件/etc/default/isc-dhcp-server
并像这样设置INTERFACES:
INTERFACES="wlan0"
在gedit中,按下Ctrl
+ O
,在位置框中粘贴/etc/dhcp/dhcpd.conf
查找(ctrl
+ F
)下面的行并将#放在它之前。它应该看起来像编辑后
# option definitions common to all supported networksâŚ
#option domain-name âexample.orgâ;
#option domain-name-servers ns1.example.org, ns2.example.org;
再次注释以下行
#default-lease-time 600;
#max-lease-time 7200;
最后加入以下几行
subnet 10.10.0.0 netmask 255.255.255.0 {
       range 10.10.0.2 10.10.0.16;
       option domain-name-servers 8.8.4.4, 208.67.222.222;
       option routers 10.10.0.1;
}
范围描述地址池将会有多长。您还需要调整子网值。这个配置可以给IP最多15个设备
再次在gedit中按Cctrl
+ O
并粘贴以下位置栏/etc/network/interfaces
,在下面添加
auto wlan0
iface wlan0 inet static
address 10.10.0.1
netmask 255.255.255.0
wlan0
是您的无线接口。相应地更改它。
Note: After reboot the wireless will be shown as not managed. So you can’t use any other wi-fi network. To get wireless with normal behaviour, put # before those newly added line and execute
sudo start networking
现在运行
sudo service isc-dhcp-server start
sudo service hostapd start
此时,您的移动设备将会看到一个网络,对其进行身份验证,认证后它会得到类似10.10.0.2
的IP地址。
设置互联网连接设置
对于Internet连接共享,我们需要ip forwarding
和ip masquerading
。启用IP转发:执行
echo 1| sudo tee /proc/sys/net/ipv4/ip_forward
现在说你正在使用拨号/USB调制解调器连接来连接到INTERNET。您需要获取逻辑接口名称。为此执行ifconfig
或ip address
对于拨号/USB调制解调器:它应该是ppp0
。如果你想共享以太网连接,你应该使用ethX
,其中X是你的以太网设备号。如果您通过带USB绑定的Android设备连接到互联网,则接口名称应为usb0
。
现在,一旦你得到接口名称执行sudo iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -o ppp0 -j MASQUERADE
上述命令中的ppp0
是您通过无线共享互联网连接的接口。
如果您编辑了/etc/network/interfaces
,则可以使用this script启动该服务。如果您不共享ppp0
,请对其进行编辑。如果您正在使用脚本并希望停止服务器,请使用sudo killall hostapd
一个博客主要是对这里所描述的内容的总结:http://dashohoxha.blogspot.com/2013/06/how-to-setup-wifi-access-point-on-ubuntu.html
试图自动执行此处描述的步骤的脚本:https://gist.github.com/dashohoxha/5767262
请随时举报或修复您发现的任何错误。
伟大的帮助来自:
第三种解决思路
我也有同样的问题。我能找到的最佳解决方案是使用ap-hotspot创建ubuntu机器的热点。它可以很好地连接到几乎所有的Android,Windows手机等。
要安装它:
$ sudo add-apt-repository ppa:nilarimogard/webupd8
$ sudo apt-get update
$ sudo apt-get install ap-hotspot
接下来,要启动热点:
$ sudo ap-hotspot start
它会以交互方式询问您要共享哪个适配器的互联网,网络名称,密码等。
停止热点:
$ sudo ap-hotspot stop
配置它:
$ sudo ap-hotspot configure
如果有任何问题,希望这个link有帮助。
编辑:
目前看来Ubuntu 14.04存在一些问题,正如在链接的webupd8.org文章中指出的那样,您必须降级hostapd:
64位:
cd /tmp
wget http://ftp.ksu.edu.tw/FTP/Linux/ubuntu/pool/universe/w/wpa/hostapd_1.0-3ubuntu2.1_amd64.deb
sudo dpkg -i hostapd*.deb
sudo apt-mark hold hostapd
32位:
cd /tmp
wget http://ftp.ksu.edu.tw/FTP/Linux/ubuntu/pool/universe/w/wpa/hostapd_1.0-3ubuntu2.1_i386.deb
sudo dpkg -i hostapd*.deb
sudo apt-mark hold hostapd
第四种思路
现在,这是一个简单的方法,一定会完成这项工作。
安装KDE连接编辑器
打开终端(Ctrl + Alt + T)并依次键入以下命令。
$ sudo apt-get install plasma-nm
$ sudo apt-get update
现在,您刚刚安装了KDE Connection Editor。
我们来创建一个Wi-Fi热点。
创建一个Wi-Fi热点(接入点模式)
1.现在打开已安装的应用程序,
-
搜索(Alt + F2)kde-nm-connection-编辑器(只要您开始输入kde,您就可以使用它)。要么
-
从终端手动打开它。
$ sudo kde-nm-connection-editor
2.现在点击+添加并选择无线(共享)
现在,你会看到下面的窗口。
SSID:为您的新热点提供一个名称
模式:选择接入点
克隆的MAC地址:点击“随机”按钮以生成随机MAC地址。
其他一切应该已经设置好了。
现在让我们进入无线安全选项卡。
选择WAP& WPA2个人并输入您的密码。
点击确定。
5.现在您的连接已准备就绪。
请享用!