Вопрос Как создать не-adhoc wifi hotspot?


Я хотел использовать свой рабочий стол с проводным подключением к сети Ethernet (eth0) для управления моим Wi-Fi-адаптером «TP-LINK TL-WN722N» (wlan0) в качестве точки доступа, не являющейся adhoc (инфраструктурный режим) для подключения Android.

После многократного поиска, я наконец нашел метод (распространенный на многих сайтах), который делает большую часть того, что мне нужно ...

зависимости:

 hostapd
 bridge-utils

Я изменил «/ etc / network / interfaces»

sudo gedit /etc/network/interfaces

содержать:

# This file describes the network interfaces available on your system
# and how to activate them.

auto lo br0
iface lo inet loopback

allow-hotplug eth0
iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual

# Bridge setup

# for dhcp address
iface br0 inet dhcp
bridge_ports eth0 wlan0

# for static ip
# iface br0 inet static
# bridge_ports eth0 wlan0
# adapt with your network settings
# address 192.168.1.250
# netmask 255.255.255.0
# network 192.168.1.0
# broadcast 192.168.1.255
# gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
# dns-nameservers 192.168.1.1
# dns-search localdomain

### Reference ###

# Creating a Wireless Access Point with Debian Linux « Agent Oss (October 31, 2011)
# https://agentoss.wordpress.com/2011/10/31/creating-a-wireless-access-point-with-debian-linux/

Мой «/etc/hostapd/hostapd.conf» (который мне как-то удалось собрать вместе)

sudo gedit /etc/hostapd/hostapd.conf

содержит:

 ### Guts ###

 interface=wlan0
 bridge=br0
 driver=nl80211

 ### General ###

 ssid=____________________
 hw_mode=g
 channel=1

 ### Security ###

 macaddr_acl=0
 auth_algs=1
 ignore_broadcast_ssid=0     ## 0 visible # 1 hidden ##
 wpa=2
 wpa_passphrase=____________________
 wpa_key_mgmt=WPA-PSK
 wpa_pairwise=TKIP
 rsn_pairwise=CCMP

 ### Reference ###

 ## Created Tuesday, February 14, 2012 ## Ubuntu 11.10/12.04 ##

 # Hostapd Linux Documentation Page
 # http://linuxwireless.org/en/users/Documentation/hostapd

 # Creating a Network Bridge on Ubuntu (January 16th, 2011)
 # http://webserver.linuxportal.nl/?p=422

(Я отредактировал биты безопасности для этого сообщения)

Все это позволяет мне открыть терминал и выполнить:

 sudo hostapd -B /etc/hostapd/hostapd.conf

иметь функциональную точку доступа, к которой могут подключаться мои Android и все другие WiFi-устройства.

Помимо совместного использования этого метода с другими, поскольку информация для этой установки настолько разрежена; есть три проблемы, которые было бы неплохо исправить:

  1. Эта конфигурация отключает диспетчер сети и все его функции. Когда вы нажимаете на нее, появляется сообщение «устройство не управляется». (не важно, но немного раздражает меня)
  2. Этот метод может время от времени бороться с IP-адресами.
  3. Я должен использовать терминал для включения Wi-Fi. (Хорошо для меня, но не для семьи).  Я понял, как сделать пусковую установку с помощью gksu и простой скрипт если кому-то нужно ...

Launching wifi/Hostapd without a terminal

  1. (Почему сетевой менеджер не может сделать это из коробки?)

Заранее спасибо! Я надеюсь, что все это поможет кому-то другому; Я никогда раньше не писал учебник и практически ничего не знаю о сети ...

Возможно, связано с сетевой мост - без разрушения сетевого менеджера (среди прочих).

Протестировано с использованием Ubuntu 11.10, 12.04.


13
2018-02-18 02:46


происхождения




ответы:


Я не уверен, как это сделать, не сбивая NM, но можно запускать автоматически при загрузке и легко назначать IP-адреса (по крайней мере, я справился с этой же беспроводной картой). Для этого требуются пакеты hostapd а также dnsmasq (не dnsmasq-base)

/etc/hostapd/hostapd.conf:

interface=wlan0
driver=nl80211 # This works on my TL-WN722N

ssid=______

channel=6
hw_mode=g

auth_algs=1
wpa=3
wpa_passphrase=_____
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
rsn_pairwise=CCMP

/ И т.д. / по умолчанию / hostapd:

# Defaults for hostapd initscript
#
# See /usr/share/doc/hostapd/README.Debian for information about alternative
# methods of managing hostapd.
#
# Uncomment and set DAEMON_CONF to the absolute path of a hostapd configuration
# file and hostapd will be started during system boot. An example configuration
# file can be found at /usr/share/doc/hostapd/examples/hostapd.conf.gz
#
DAEMON_CONF="/etc/hostapd/hostapd.conf"

# Additional daemon options to be appended to hostapd command:-
#   -d   show more debug messages (-dd for even more)
#   -K   include key data in debug messages
#   -t   include timestamps in some debug messages
#
# Note that -B (daemon mode) and -P (pidfile) options are automatically
# configured by the init.d script and must not be added to DAEMON_OPTS.
#
#DAEMON_OPTS=""

/etc/dnsmasq.conf (отличается от версии поддерживающего):

--- /etc/dnsmasq.conf.dpkg-dist 2011-09-20 00:28:30.000000000 +0100
+++ /etc/dnsmasq.conf   2012-02-13 21:03:03.713554612 +0000
@@ -82,7 +82,7 @@
 # specified interfaces (and the loopback) give the name of the
 # interface (eg eth0) here.
 # Repeat the line for more than one interface.
-#interface=
+interface=wlan0
 # Or you can specify which interface _not_ to listen on
 #except-interface=
 # Or which to listen on by address (remember to include 127.0.0.1 if
@@ -133,7 +133,7 @@
 # a lease time. If you have more than one network, you will need to
 # repeat this for each network on which you want to supply DHCP
 # service.
-#dhcp-range=192.168.0.50,192.168.0.150,12h
+dhcp-range=192.168.3.10,192.168.3.49,12h

 # This is an example of a DHCP range where the netmask is given. This
 # is needed for networks we reach the dnsmasq DHCP server via a relay

/ и т.д. / сеть / интерфейсы:

auto lo
iface lo inet loopback

auto wlan0
iface wlan0 inet static
    address 192.168.3.1/24
    broadcast 192.168.3.255

Патч /etc/sysctl.conf (выполняется sudo sysctl -p /etc/sysctl.conf после смены):

--- sysctl.conf 2012-05-14 18:06:57.514873009 +0100
+++ /etc/sysctl.conf    2012-05-14 18:09:27.122876525 +0100
@@ -25,7 +25,7 @@
 #net.ipv4.tcp_syncookies=1

 # Uncomment the next line to enable packet forwarding for IPv4
-#net.ipv4.ip_forward=1
+net.ipv4.ip_forward=1

 # Uncomment the next line to enable packet forwarding for IPv6
 #  Enabling this option disables Stateless Address Autoconfiguration

Наконец, настройте NAT в iptables:

sudo iptables -A FORWARD -o eth0 -i eth1 -s 192.168.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A POSTROUTING -t nat -j MASQUERADE
sudo iptables-save | sudo tee /etc/iptables.sav

и добавить iptables-restore < /etc/iptables.sav выше exit 0 в /etc/rc.local,

Эта настройка была в основном реализована путем чтения это и глядя на человеческие страницы, почесывающие мою голову.


5
2018-04-02 14:54



Благодаря! Я знаю, что вы имеете в виду, когда царапает голову; эта вещь, конечно, была болью, чтобы вообще работать. Я попробую ваш конфиг и дам вам знать, как это происходит в ближайшие несколько дней. :) - askuhn
В последние несколько дней я обнаружил, что /etc/network/interfaces по какой-то причине файл не работает, и мой телефон не подключается должным образом. Я вернулся к тому, чтобы вручную дать wlan0 адрес при загрузке. - dutchie
Моя настройка работает очень хорошо, пока я не пытаюсь подключить более одного устройства (когда я это делаю, иногда это работает, иногда это не так). Я все еще занимаюсь ремеслом, поэтому, если я придумаю что-нибудь получше, я обязательно отправлю. :) - askuhn


Большинство проблем возникает из-за драйверов Broadcom в ноутбуках HP, по крайней мере. Если у вас есть сетевой контроллер сети, проверьте, совместима ли ваша карта с b43 (ссылка 1). Если это так, здорово, продолжайте читать. Стандартный драйвер Broadcom sta (wl) не поддерживает режим точки доступа. Поэтому установите b43, чтобы принять меры предосторожности, чтобы быть в сети любыми средствами. Включите его, используя modprobe. Теперь следуйте инструкциям и попробуйте настроить точку доступа.

Я, наконец, получил hostapd, работая с этим, и сладкая часть заключается в том, что мой телефон Nokia может обнаружить созданный wifi (он может обнаруживать что-либо, adhoc или нет). Теперь мне нужно поиграть с вашим файлом и посмотреть, могу ли я узнать, что моя плей-панель обнаружит.

  1. http://linuxwireless.org/en/users/Drivers/b43
  2. http://pclinuxos.com/forum/index.php?topic=91991.0

3
2018-01-16 17:49



Также это сработало, когда я получил устройство, которое не управлялось в диспетчере устройств. askubuntu.com/questions/71159/... - Giridaran Manivannan
Рад, что это было полезно для вас! Мне потребовалось время, чтобы понять, что мне нужно, чтобы получить то, что сработало для меня. Спасибо за ссылку о сетевом менеджере, я обязательно попробую: - askuhn
И это работает! Удивительная часть eth0 не должна быть статичной по этому методу. Полученный ip будет для всех eth0, моста и устройства, которое вы хотите подключить! - Giridaran Manivannan
В последнем абзаце вы имели в виду проигрыватель будет обнаружен? - Tshepang


Отличные ответы выше, однако не только один или два набора микросхем, которые не поддерживают режим hostapd или AP.

Вот как узнать, поддерживает ли ваш драйвер и аппаратное обеспечение режим AP:

sudo iw list | less

Найдите раздел «Поддерживаемые режимы интерфейса». Если он не включает «AP», вам не повезло. Если он говорит «AP», тогда приступайте к множеству хороших инструкций, уже предоставленных другими плакатами!


0