Bagaimana cara membuat hotspot wifi non-adhoc?

13

Saya ingin menggunakan desktop saya dengan koneksi ethernet kabel (eth0) untuk mengoperasikan "USB Wifi Adapter" TP-LINK TL-WN722N "(wlan0) sebagai titik akses non-adhoc (mode infrastruktur) untuk terhubung dengan Android.

Setelah pencarian BANYAK, saya akhirnya menemukan metode (tersebar di banyak situs web) yang melakukan sebagian besar apa yang saya butuhkan ...

Ketergantungan:

 hostapd
 bridge-utils

Saya memodifikasi "/ etc / network / interfaces"

sudo gedit /etc/network/interfaces

mengandung:

# 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" (yang entah bagaimana berhasil saya kumpulkan sendiri)

sudo gedit /etc/hostapd/hostapd.conf

mengandung:

 ### 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

(Saya sudah mengedit bit keamanan untuk posting ini)

Semua itu memungkinkan saya untuk membuka Terminal dan menjalankan:

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

untuk memiliki jalur akses yang berfungsi yang dapat dihubungkan oleh Android saya dan semua perangkat WiFi lainnya.

Selain membagikan metode ini dengan orang lain karena info untuk pengaturan ini sangat jarang; ada tiga masalah yang sebaiknya diperbaiki:

  1. Konfigurasi ini menonaktifkan manajer jaringan dan semua fungsinya. Ketika Anda mengkliknya, itu memberikan pesan "perangkat tidak dikelola". (tidak penting, tapi agak mengganggu saya)
  2. Metode ini dapat berjuang dengan alamat IP dari waktu ke waktu.
  3. Saya harus menggunakan terminal untuk mengaktifkan Wifi. (Ok untuk saya, tetapi tidak ramah keluarga). Saya menemukan cara membuat peluncur menggunakan gksu dan skrip sederhana jika ada yang membutuhkan ...

Meluncurkan wifi / Hostapd tanpa terminal

  1. (Mengapa manajer jaringan tidak dapat melakukan ini di luar kotak ??)

Terima kasih sebelumnya! Saya berharap semua ini dapat membantu orang lain; Saya belum pernah menulis tutorial sebelumnya dan hampir tidak tahu apa-apa tentang jaringan ...

Mungkin terkait dengan jembatan jaringan - tanpa merusak manajer jaringan (antara lain).

Diuji menggunakan Ubuntu 11.10, 12.04.

tanya
sumber

Jawaban:

5

Saya tidak yakin tentang cara melakukan ini tanpa clobbering NM, tetapi dimungkinkan untuk berjalan secara otomatis saat boot dan mendapatkan alamat IP untuk menetapkan dengan mudah (setidaknya saya telah mengatur ini dengan kartu nirkabel yang sama). Ini membutuhkan paket hostapddan dnsmasq(tidak 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

/ etc / default / 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 (berbeda dengan versi pengelola):

--- /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

/ etc / network / interfaces:

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 patch (jalankan sudo sysctl -p /etc/sysctl.confsetelah perubahan):

--- 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

Akhirnya, atur NAT di 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

dan tambahkan di iptables-restore < /etc/iptables.savatas .exit 0/etc/rc.local

Pengaturan ini sebagian besar dilaksanakan dengan membaca howto ini dan menatap halaman manual yang menggaruk-garuk kepala saya.

dutchie
sumber
Terima kasih! Saya tahu apa yang Anda maksud dengan garukan kepala; hal ini sungguh menyebalkan untuk bisa bekerja sama sekali. Saya akan mencoba konfigurasi Anda dan memberi tahu Anda bagaimana hasilnya dalam beberapa hari ke depan. :)
askuhn
Dalam beberapa hari terakhir, saya menemukan bahwa /etc/network/interfacesfile tersebut tidak berfungsi karena suatu alasan, dan ponsel saya tidak terhubung dengan benar. Saya telah kembali ke memberikan secara manual alamat wlan0 saat boot untuk saat ini.
Belanda
Pengaturan saya telah bekerja dengan baik selama saya tidak mencoba menghubungkan lebih dari satu perangkat (ketika saya melakukannya, kadang-kadang berfungsi, kadang tidak). Saya masih mengutak-atik, jadi jika saya menemukan sesuatu yang lebih baik, saya pasti akan memposting. :)
askuhn
3

Sebagian besar masalah terjadi karena driver Broadcom di Laptop HP setidaknya. Jika Anda memiliki pengontrol jaringan broadcom Periksa apakah kartu Anda kompatibel dengan b43 (tautan 1). Jika ya, luar biasa, teruslah membaca. Driver standar Broadcom (wl) tidak akan mendukung mode titik akses. Jadi instal b43 mengambil tindakan pencegahan untuk online dengan segala cara yang diperlukan. Aktifkan menggunakan modprobe. Sekarang ikuti instruksi dan coba atur titik akses.

Saya akhirnya dapat menggunakan hostapd dengan ini dan bagian yang manis adalah bahwa ponsel Nokia saya dapat mendeteksi wifi yang dibuat (dapat mendeteksi apa saja, adhoc atau tidak). Sekarang saya harus bermain-main dengan file Anda dan melihat apakah saya bisa mendapatkan buku pedoman saya untuk dideteksi.

  1. http://linuxwireless.org/en/users/Drivers/b43
  2. http://pclinuxos.com/forum/index.php?topic=91991.0
Giridaran Manivannan
sumber
Ini juga berfungsi ketika saya mendapat perangkat yang tidak dikelola di manajer perangkat. askubuntu.com/questions/71159/…
Giridaran Manivannan
Senang ini sangat membantu Anda! Saya butuh selamanya untuk mencari tahu apa yang saya butuhkan untuk mendapatkan sesuatu yang bekerja untuk saya. Terima kasih atas tautan tentang manajer jaringan, saya pasti akan mencobanya :)
askuhn
Dan itu Berhasil! Bagian yang menakjubkan adalah eth0 tidak harus statis dengan metode ini. IP yang diperoleh akan untuk semua eth0, jembatan dan perangkat yang ingin Anda hubungkan!
Giridaran Manivannan
Pada paragraf terakhir, apakah maksud Anda buku pedoman terdeteksi ?
tshepang
0

Jawaban luar biasa di atas, namun bukan hanya satu atau dua chipset yang tidak mendukung mode hostapd atau AP.

Berikut cara mengetahui apakah driver dan perangkat keras Anda mendukung mode AP:

sudo iw list | less

Cari bagian "mode antarmuka yang didukung". Jika tidak termasuk "AP", Anda kurang beruntung. Jika tertulis "AP", lanjutkan dengan banyak instruksi bagus yang sudah disediakan oleh poster lain!

Luno
sumber