Hardkernel ofrece varios módulos WiFi basados en la conexión USB para hacer uso de la conectividad WiFi en sus ordenadores de placa reducida (SBC). Algunos de ellos también se pueden utilizar para implementar estos SBC como puntos de acceso. Los módulos que ofrece se pueden encontrar en https://www.hardkernel.com/product-category/connectivity/.
Información del controlador inalámbrico
La lista de funciones de estos módulos se puede obtener usando el siguiente comando:
$ sudo iw list ... Supported interface modes: * IBSS * managed * AP * AP/VLAN * WDS * monitor * mesh point ...Si está incluida la función "AP" dentro de los "Supported interface modes", entonces es que ese dispositivo admite el modo de Punto de acceso. A continuación, se muestran los detalles de todos los módulos que ofrece Hardkernel:
Wifi Module 0 Manufacturer: Mediatek Ralink Part name: RT5370N Type: chip Number of busses: 1 Bus(es): USB 2.0 Number of bands: 1 Band(s): 2.4GHz Data rate: 150Mbps MIMO configuration: 1x1:1 (1T1R) IEEE 802.11 PHY Modes: b,g,n Bus 005 Device 002: ID 148F:5370 Ralink Technology, RT5370 Wireless Adapter Wifi Module 3 Manufacturer: Realtek Part name: RTL8188CUS Type: chip Number of busses: 1 Bus(es): USB 2.0 Number of bands: 1 Band(s): 2.4GHz Data rate: 150Mbps MIMO configuration: 1x1:1 (1T1R) IEEE 802.11 PHY Modes: b,g,n Bus 001 Device 003: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter Wifi Module 4 Manufacturer: Ralink Part name: RT5572N Type: chip Number of busses: 1 Bus(es): USB 2.0 Number of bands: 2 Band(s): 2.4GHz, 5GHz Data rate: 300Mbps MIMO configuration: 2x2:2 (2T2R) IEEE 802.11 PHY Modes: a,b,g,n Bus 001 Device 006: ID 148f:5572 Ralink Technology, Corp. RT5572 Wireless Adapter Wifi Module 5 Manufacturer: Realtek Type: chip Number of busses: 2 Bus(es): USB 2.0 / USB 3.0 Number of bands: 2 Band(s): 2.4GHz, 5GHz Data rate: 300Mbps MIMO configuration: 2x2:2 (2T2R) IEEE 802.11 PHY Modes: a,b,g,n,ac Bus 003: ID 0bda:8812 Realtek Semiconductor Corp. RTL8812AU 802.11a/b/g/n/ac WLAN Adapter Wifi Module 5A Manufacturer: Realtek Type: chip Number of busses: 1 Bus(es): USB 2.0 Number of bands: 2 Band(s): 2.4GHz, 5GHz Data rate: AC600 MIMO configuration: 433 Mbps @ 5 GHz @ 1T1R / 150 Mbps @ 2.4 GHz @ 1T1R IEEE 802.11 PHY Modes: a,b,g,n,ac Bus 003 Device 003: ID 0bda:a811 Realtek Semiconductor Corp.
Configurar el Punto de Acceso
- Un miembro del foro (@ tam1111574) ha revelado que existe un problema con el puerto USB 3.0 del XU4 en http://forum.odroid.com/viewtopic.php?f=97&t=19285
- Todos los comandos deben ejecutarse en modo superusuario.
- Debes ejecutar apt update && apt full-upgrade antes de proceder
- Además, es posible que tengas que ejecutar apt install libnl-3-dev libnl-genl-3-dev libssl-dev hostapd iptables git pkg-config vim build-essential
Necesitamos configurar la interfaz de red inalámbrica y el demonio dnsmasq. Podemos dividir la configuración del punto de acceso en las siguientes tareas:
- Ajustar la configuración de la interfaz de red
- Ajustar la configuración del servidor DHCP
- Configurar las iptables para reenviar el tráfico de Internet desde Ethernet a la LAN inalámbrica.
- Ajustar el servidor hostapd o la configuración wpa_supplicant.
- Comprobar el servicio y la configuración WIFI.
Ajustar la configuración de la interfaz de red
Para configurar el punto de acceso inalámbrico, debes designar una dirección IP estática para la tarjeta de red inalámbrica. Revisa la parte de wlan0 de los siguientes contenidos:
# vi /etc/network/interfaces # interfaces(5) file used by ifup(8) and ifdown(8) # Include files from /etc/network/interfaces.d: source-directory /etc/network/interfaces.d auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp auto wlan0 iface wlan0 inet static address 192.168.1.1 netmask 255.255.255.0Ten en cuenta que los nombres de interfaz previsibles que aparecen empiezan con wlan si tiene un nombre de interfaz.
Si el nombre de tu interfaz inalámbrica es como se muestra a continuación, añade net.ifnames=0 como parámetro del kernel a la línea de comando del kernel editando boot.ini:
# ifconfig enx7cdd9052131e Link encap:Ethernet HWaddr 7c:dd:90:52:13:1e UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:321 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)El nombre de la interfaz local se resuelve para tener un nombre previsible para la interfaz inalámbrica.
# ifconfig wlan0 Link encap:Ethernet HWaddr 7c:dd:90:52:13:1e UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:10 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)Nota: la dirección IP wlan0 puede ser diferente a la tuya. El nombre de la interfaz inalámbrica se puede cambiar ya que depende de las tarjetas inalámbricas que hayas instalado
Ajustar la configuración del servidor DHCP para el Punto de Acceso
Configura dnsmasq, que es un servidor DNS y DHCP muy liviano.
# apt install dnsmasq Reading package lists... Done Building dependency tree Reading state information... Done 0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded. Need to get 16.2 kB of archives. After this operation, 0 B of additional disk space will be used. Get:1 http://ports.ubuntu.com/ubuntu-ports bionic/universe armhf dnsmasq all 2.79-1 [16.2 kB] Fetched 16.2 kB in 1s (16.6 kB/s) (Reading database ... 155718 files and directories currently installed.) Preparing to unpack .../dnsmasq_2.79-1_all.deb ... Unpacking dnsmasq (2.79-1) over (2.79-1) ... Setting up dnsmasq (2.79-1) ... Processing triggers for systemd (237-3ubuntu10.9) ...Si haces frente a un mensaje "FAILED" al iniciar el servicio dnsmasq.s como el siguiente "port 53: Address already in use", haz lo siguiente:
... invoke-rc.d: initscript dnsmasq, action "start" failed... dnsmasq.service - dnsmasq - A lightweight DHCP and caching DNS server Loaded: loaded (/lib/systemd/system/dnsmasq.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Mon 2018-12-10 01:59:06 UTC; 22ms ago Process: 2073 ExecStart=/etc/init.d/dnsmasq systemd-exec (code=exited, status=2) Process: 2072 ExecStartPre=/usr/sbin/dnsmasq --test (code=exited, status=0/SUCCESS) Dec 10 01:59:06 odroid systemd[1]: Starting dnsmasq - A lightweight DHCP and caching DNS server... Dec 10 01:59:06 odroid dnsmasq[2072]: dnsmasq: syntax check OK. Dec 10 01:59:06 odroid dnsmasq[2073]: dnsmasq: failed to create listening socket for port 53: Address already in use Dec 10 01:59:06 odroid dnsmasq[2073]: failed to create listening socket for port 53: Address already in use Dec 10 01:59:06 odroid dnsmasq[2073]: FAILED to start up Dec 10 01:59:06 odroid systemd[1]: dnsmasq.service: Control process exited, code=exited status=2 Dec 10 01:59:06 odroid systemd[1]: dnsmasq.service: Failed with result 'exit-code'. Dec 10 01:59:06 odroid systemd[1]: Failed to start dnsmasq - A lightweight DHCP and caching DNS server. Processing triggers for systemd (237-3ubuntu10.9) ...Detén el servicio que estaba escuchando en el puerto 53:
# Check that systemd-resolve service is listening port 53 now(127.0.0.53:53) # netstat -alnp | grep -w LISTEN tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 755/systemd-resolve tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 916/sshd tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 2616/cupsd tcp6 0 0 :::22 :::* LISTEN 916/sshd tcp6 0 0 ::1:631 :::* LISTEN 2616/cupsd # To use the 53 port, disable & stop the systemd-resolved service # systemctl disable systemd-resolved.service Removed /etc/systemd/system/multi-user.target.wants/systemd-resolved.service. Removed /etc/systemd/system/dbus-org.freedesktop.resolve1.service. # systemctl stop systemd-resolved # dnsmasq service enable & start # systemctl enable dnsmasq Synchronizing state of dnsmasq.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable dnsmasq # systemctl start dnsmasq # confirm dnsmasq service running # netstat -alnp | grep -w LISTEN tcp6 0 0 ::1:631 :::* LISTEN 2616/cupsd tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 6100/dnsmasq tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 677/sshd tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 2734/cupsd tcp6 0 0 :::53 :::* LISTEN 6100/dnsmasq tcp6 0 0 :::22 :::* LISTEN 677/sshd tcp6 0 0 ::1:631 :::* LISTEN 2734/cupsdCopia el archivo de configuración dnsmasq para hacer una copia de seguridad y luego crea uno nuevo.
# mv /etc/dnsmasq.conf /etc/dnsmasq.conf.org # vi /etc/dnsmasq.confLos contenidos de dnsmasq.conf son así:
domain-needed bogus-priv no-resolv no-poll server=/example.com/192.168.1.5 server=8.8.8.8 server=8.8.4.4 local=/example.com/ address=/doubleclick.net/127.0.0.1 no-hosts #addn-hosts=/etc/dnsmasq.d/hosts.conf expand-hosts domain=example.com dhcp-range=192.168.1.20,192.168.1.50,72h dhcp-range=tftp,192.168.1.250,192.168.1.254 dhcp-option=option:router,192.168.1.1 dhcp-option=option:ntp-server,192.168.1.5 dhcp-option=19,0 # ip-forwarding off dhcp-option=44,192.168.1.5 # set netbios-over-TCP/IP aka WINS dhcp-option=45,192.168.1.5 # netbios datagram distribution server dhcp-option=46,8 # netbios node typeTen en cuenta que puedes ampliar el rango de dhcp o cambiar la dirección IP en la configuración.
Configurar iptables para reenviar el tráfico de Internet desde Ethernet a la LAN inalámbrica
A continuación, habilita el reenvío automático de puertos en el arranque:
# vi /etc/sysctl.confLocaliza las siguientes opciones y cámbialas:
net.ipv4.ip_forward=1 net.ipv6.conf.all.forwarding=1Añade el siguiente contenido al archivo /etc/rc.local para redirigir el tráfico de Internet a una LAN inalámbrica:
# vi /etc/rc.local sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPTNecesitarás actualizar las reglas de iptables en función de la interfaz de tu red inalámbrica. Reinicia el sistema para que funcione:
# reboot
Instalación del Punto de Acceso - hostapd
hostapd es un demonio del espacio de usuario para puntos de acceso y servidores de autentificación. Éste pone en marcha la gestión de puntos de acceso IEEE 802.11, los autentificadores IEEE 802.1X / WPA / WPA2 / EAP, el cliente RADIUS, el servidor EAP y el servidor de autentificación RADIUS. Puede encontrar más información en https://wireless.wiki.kernel.org/en/users/documentation/hostapd.
A continuación, se muestran los pasos a seguir para llevar a cabo la compilación de hostapd. Descarga el código fuente de hostapd y compila con los parámetros correctos:
Wifi Module 0, 4, 5, 5A # wget https://w1.fi/releases/hostapd-2.6.tar.gz # tar xvfz hostapd-2.6.tar.gz # cd hostapd-2.6/hostapd /hostapd-2.6/hostapd# cp defconfig .config /hostapd-2.6/hostapd# echo CONFIG_LIBNL32=y >> .config /hostapd-2.6/hostapd# echo CONFIG_IEEE80211N=y >> .config /hostapd-2.6/hostapd# echo CONFIG_IEEE80211AC=y >> .config /hostapd-2.6/hostapd# makeDeberías descargar un parche si vas utilizar el Módulo 3 Wifi para que funcione hostapd con este Módulo, ya que no es compatible con el controlador estándar nl80211 de hostapd en el kernel 3.10, 3.14, 3.16.
Wifi Module 3 # git clone https://github.com/pritambaral/hostapd-rtl871xdrv.git # wget https://w1.fi/releases/hostapd-2.6.tar.gz # tar xvfz hostapd-2.6.tar.gz # cd hostapd-2.6 /hostapd-2.6# patch -p1 < ../hostapd-rtl871xdrv/rtlxdrv.patch /hostapd-2.6# cd hostapd /hostapd-2.6/hostapd# cp defconfig .config /hostapd-2.6/hostapd# echo CONFIG_LIBNL32=y >> .config /hostapd-2.6/hostapd# echo CONFIG_DRIVER_RTW=y >> .config /hostapd-2.6/hostapd# makeRealiza una copia de seguridad del hostapd actual y reemplaza el archivo por otro configurado:
/hostapd-2.6/hostapd# mv /usr/sbin/hostapd /usr/sbin/hostapd.org /hostapd-2.6/hostapd# cp hostapd /usr/sbin/Verifica que tienes instalada la última versión:
/hostapd-2.6/hostpad# cd ~ # hostapd hostapd v2.6 User space daemon for IEEE 802.11 AP management, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator Copyright (c) 2002-2016, Jouni Malinen <j@w1.fi> and contributorsConfigura hostapd para usar el punto de acceso:
# vi /etc/default/hostapdLocaliza las siguientes opciones y edita:
DAEMON_CONF="/etc/hostapd/hostapd.conf" DAEMON_OPTS="-B"Puedes actualizar este DAEMON_OPTS para obtener los registros log del demonio hostapd editando el archivo /etc/hostapd/hostapd.conf:
# vi /etc/hostapd/hostapd.conf El contenido de los archivos hostapd.conf para la configuración de 2.4 GHz es el siguiente:
# HostAPD <2.4 Ghz configuration hostapd.conf file> # Interface interface=wlan0 # driver driver=nl80211 # Logging logger_syslog=-1 logger_syslog_level=3 logger_stdout=-1 logger_stdout_level=2 # CTRL-Interface ctrl_interface=/var/run/hostapd ctrl_interface_group=0 # WLAN country_code=KR ssid=OdroidAPn hw_mode=g channel=6 beacon_int=100 dtim_period=2 max_num_sta=255 rts_threshold=2347 fragm_threshold=2346 preamble=1 # WPA2 wpa=2 # WPA2 only wpa_passphrase=hardkernel wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP auth_algs=3 # 1=wpa, 2=wep, 3=both macaddr_acl=0 wmm_enabled=1 eap_reauth_period=360000 fragm_threshold=2346 rsn_preauth=1 rsn_preauth_interfaces=wlan0 wpa_group_rekey=600 wpa_ptk_rekey=600 wpa_gmk_rekey=86400 # N-WLAN ieee80211n=1 ht_capab=[HT20+][SHORT-GI-20][DSSS_CCK-20] require_ht=0 obss_interval=0El contenido de los archivos hostapd.conf para la configuración de 2.4GHz para el Módulo WiFi 3 es el siguiente:
# interface interface=wlan0 # driver driver=rtl871xdrv # CTRL-Interface ctrl_interface=/var/run/hostapd ctrl_interface_group=0 # SSID ssid=OdroidAP # WLAN country_code=KR hw_mode=g channel=1 beacon_int=100 dtim_period=2 max_num_sta=255 rts_threshold=2347 fragm_threshold=2346 preamble=1 # Logging logger_syslog=-1 logger_syslog_level=3 logger_stdout=-1 logger_stdout_level=2 # passphrase wpa_passphrase=hardkernel # WPA2 wpa=3 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP beacon_int=100 auth_algs=3 # 1=wpa, 2=wep, 3=both macaddr_acl=0 wmm_enabled=1 eap_reauth_period=360000000 rsn_preauth=1 rsn_preauth_interfaces=wlan0 wpa_group_rekey=600 wpa_ptk_rekey=600 wpa_gmk_rekey=86400El contenido de los archivos hostapd.conf para el conjunto de chips Realtek RTL8812AU de 5 GHz es el siguiente:
# HostAPD <5.0 Ghz configuration hostapd.conf file> ctrl_interface=/var/run/hostapd ctrl_interface_group=0 interface=wlan0 driver=nl80211 ### IEEE 802.11 ssid=Odroid5Ghz hw_mode=a channel=36 max_num_sta=128 auth_algs=1 ### DFS country_code=KR ieee80211d=1 ieee80211h=1 #ieee80211ac=1 ### IEEE 802.11n ieee80211n=1 ht_capab=[HT40+][SHORT-GI-20][SHORT-GI-40][DSSS_CCK-20] ### IEEE 802.11ac #ieee80211ac=1 #vht_oper_chwidth=1 #vht_capab=[SHORT-GI-40][RXLDPC][TX-STBC-2BY1] #vht_oper_centr_freq_seg0_idx=0 ### IEEE 802.11i wpa=2 wpa_key_mgmt=WPA-PSK wpa_passphrase=hardkernel rsn_pairwise=CCMP ### hostapd event logger logger_syslog=-1 logger_syslog_level=2 logger_stdout=-1 logger_stdout_level=2 ### WMM wmm_enabled=1 uapsd_advertisement_enabled=1 wmm_ac_bk_cwmin=4 wmm_ac_bk_cwmax=10 wmm_ac_bk_aifs=7 wmm_ac_bk_txop_limit=0 wmm_ac_bk_acm=0 wmm_ac_be_aifs=3 wmm_ac_be_cwmin=4 wmm_ac_be_cwmax=10 wmm_ac_be_txop_limit=0 wmm_ac_be_acm=0 wmm_ac_vi_aifs=2 wmm_ac_vi_cwmin=3 wmm_ac_vi_cwmax=4 wmm_ac_vi_txop_limit=94 wmm_ac_vi_acm=0 wmm_ac_vo_aifs=2 wmm_ac_vo_cwmin=2 wmm_ac_vo_cwmax=3 wmm_ac_vo_txop_limit=47 wmm_ac_vo_acm=0 ### TX queue parameters tx_queue_data3_aifs=7 tx_queue_data3_cwmin=15 tx_queue_data3_cwmax=1023 tx_queue_data3_burst=0 tx_queue_data2_aifs=3 tx_queue_data2_cwmin=15 tx_queue_data2_cwmax=63 tx_queue_data2_burst=0 tx_queue_data1_aifs=1 tx_queue_data1_cwmin=7 tx_queue_data1_cwmax=15 tx_queue_data1_burst=3.0 tx_queue_data0_aifs=1 tx_queue_data0_cwmin=3 tx_queue_data0_cwmax=7 tx_queue_data0_burst=1.5En los módulos Wifi 4, Wifi 5 y Wifi 5A, debemos ajustar esta configuración en función de ht_capab. Reemplaza el country_code, ssid y wpa_passphrase según tus requisitos. N-WLAN es opcional y se puede omitir.
Comprobar hostpad y el estado del servicio dnsmasq
La dirección IP WiFi debe ser la misma del conjunto para /etc/network/interfaces. Debes asignar la dirección IP específica que configuraste en el archivo /etc/network/interfaces como método estático para la interfaz wlan0.
# Force allocation of IP address # ifconfig wlan0 192.168.1.1 # Check IP address # ifconfig wlan0 wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 ether 40:a5:ef:f3:98:6a txqueuelen 1000 (Ethernet) RX packets 122 bytes 13344 (13.3 KB) RX errors 0 dropped 1 overruns 0 frame 0 TX packets 49 bytes 18722 (18.7 KB) TX errors 0 dropped 473 overruns 0 carrier 0 collisions 0Después de finalizar todos los pasos de configuración, reinicia los servicios y verifica sus estados. Introduce el siguiente código para activar por defecto:
# update-rc.d hostapd enableReinicia los servicios:
# service hostapd restart # service dnsmasq restart Si recibes este mensaje al iniciar el servicio de hostapd, "Failed to start hostapd.service: Unit hostapd.service is masked", desenmascara el servicio e inténtalo de nuevo: systemctl unmask hostapd.serviceComprueba los servicios:
# service hostapd status # service dnsmasq statusComprueba el estado activo (en ejecución):
# hostapd hostapd.service - LSB: Advanced IEEE 802.11 management daemon Loaded: loaded (/etc/init.d/hostapd; bad; vendor preset: enabled) Active: active (running) since Sun 2017-07-09 19:48:41 UTC; 31s ago Docs: man:systemd-sysv-generator(8) Process: 789 ExecStart=/etc/init.d/hostapd start (code=exited, status=0/SUCCESS) CGroup: /system.slice/hostapd.service └─798 /usr/sbin/hostapd -B -P /run/hostapd.pid -B /etc/hostapd/hostapd-2.6.conf Jul 09 19:48:41 odroid systemd[1]: Starting LSB: Advanced IEEE 802.11 management daemon... Jul 09 19:48:41 odroid hostapd[789]: * Starting advanced IEEE 802.11 management hostapd Jul 09 19:48:41 odroid hostapd[789]: ...done. Jul 09 19:48:41 odroid systemd[1]: Started LSB: Advanced IEEE 802.11 management daemon. # dnsmasq dnsmasq.service - dnsmasq - A lightweight DHCP and caching DNS server Loaded: loaded (/lib/systemd/system/dnsmasq.service; enabled; vendor preset: enabled) Drop-In: /run/systemd/generator/dnsmasq.service.d └─50-dnsmasq-$named.conf, 50-insserv.conf-$named.conf Active: active (running) since Sun 2017-07-09 19:48:31 UTC; 4min 36s ago Process: 592 ExecStartPost=/etc/init.d/dnsmasq systemd-start-resolvconf (code=exited, status=0/SUCCESS) Process: 575 ExecStart=/etc/init.d/dnsmasq systemd-exec (code=exited, status=0/SUCCESS) Process: 554 ExecStartPre=/usr/sbin/dnsmasq --test (code=exited, status=0/SUCCESS) Main PID: 591 (dnsmasq) CGroup: /system.slice/dnsmasq.service └─591 /usr/sbin/dnsmasq -x /var/run/dnsmasq/dnsmasq.pid -u dnsmasq -r /var/run/dnsmasq/resolv.conf -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old, Jul 09 19:48:30 odroid dnsmasq[591]: DNS service limited to local subnets Jul 09 19:48:30 odroid dnsmasq[591]: warning: ignoring resolv-file flag because no-resolv is set Jul 09 19:48:30 odroid dnsmasq-dhcp[591]: DHCP, IP range 192.168.1.250 -- 192.168.1.254, lease time 1h Jul 09 19:48:30 odroid dnsmasq-dhcp[591]: DHCP, IP range 192.168.1.20 -- 192.168.1.50, lease time 3d Jul 09 19:48:30 odroid dnsmasq[591]: using local addresses only for domain example.com Jul 09 19:48:30 odroid dnsmasq[591]: using nameserver 4.4.4.4#53 Jul 09 19:48:30 odroid dnsmasq[591]: using nameserver 8.8.8.8#53 Jul 09 19:48:30 odroid dnsmasq[591]: using nameserver 192.168.1.5#53 for domain example.com Jul 09 19:48:30 odroid dnsmasq[591]: cleared cache Jul 09 19:48:31 odroid systemd[1]: Started dnsmasq - A lightweight DHCP and caching DNS server. lines 1-22/22 (END)
Instalación del Punto de Acceso - wpa_supplicant
La aplicación wpa_supplicant es una aplicación de espacio de usuario que funciona como solicitante WPA y SME (para manejar los comandos de inicio MLME). Consulta el siguiente enlace para obtener más información: https://wireless.wiki.kernel.org/en/users/documentation/wpa_supplicant.
A continuación, se muestran los pasos para llevar a cabo la compilación de wpa_supplicant. Primero, descarga el código fuente de wpa_supplicant y compílalo:
# wget https://w1.fi/releases/wpa_supplicant-2.6.tar.gz # tar xvfz wpa_supplicant-2.6.tar.gz # cd wpa_supplicant-2.6/wpa_supplicant/ /wpa_supplicant-2.6/wpa_supplicant# cp defconfig .config # Enable AP, P2P and WPS needed to configure wpa_supplicant in AP mode. /wpa_supplicant-2.6/wpa_supplicant# echo CONFIG_P2P=y >> .config /wpa_supplicant-2.6/wpa_supplicant# echo CONFIG_AP=y >> .config /wpa_supplicant-2.6/wpa_supplicant# echo CONFIG_WPS=y >> .config /wpa_supplicant-2.6/wpa_supplicant# echo CFLAGS +=-I/usr/include/libnl3/ >> .config /wpa_supplicant-2.6/wpa_supplicant# echo CONFIG_LIBNL32=y >> .config /wpa_supplicant-2.6/wpa_supplicant# makeRealiza una copia de seguridad del wpa_supplicant actual y reemplaza el archivo por otro configurado:
/wpa_supplicant-2.6/wpa_supplicant# mv /sbin/wpa_supplicant /sbin/wpa_supplicant.org /wpa_supplicant-2.6/wpa_supplicant# cp ./wpa_supplicant /sbin/Verifica que tienes instalada la última versión:
/wpa_supplicant-2.6/wpa_supplicant# cd ~ # wpa_supplicant -v wpa_supplicant v2.6 Copyright (c) 2003-2016, Jouni Malinen <j@w1.fi> and contributorsCrea un archivo de configuración para que wpa_supplicant se ejecute en modo AP llamado wpa.conf:
# vi wpa.conf El contenido del archivo wpa.conf es el siguiente: network={ ssid="odroid-WPA" mode=2 key_mgmt=WPA-PSK psk="hardkernel" frequency=2437 }Reinicia del sistema
# rebootTen en cuenta que puedes cambiar el rango de frecuencia entre 2.4 GHz y 5 GHz.
# ifconfig wlan0 wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 ether 40:a5:ef:f3:98:6a txqueuelen 1000 (Ethernet) RX packets 122 bytes 13344 (13.3 KB) RX errors 0 dropped 1 overruns 0 frame 0 TX packets 49 bytes 18722 (18.7 KB) TX errors 0 dropped 16 overruns 0 carrier 0 collisions 0Este es un ejemplo de cómo iniciar wpa_supplicant como punto de acceso:
# wpa_supplicant -Dnl80211 -iwlan0 -c ~/wpa.conf Successfully initialized wpa_supplicant Using interface wlan0 with hwaddr 7c:dd:90:52:13:1e and ssid "odroid-WPA" wlan0: interface state UNINITIALIZED->ENABLED wlan0: AP-ENABLED wlan0: CTRL-EVENT-CONNECTED - Connection to 7c:dd:90:52:13:1e completed [id=0 id_str=]Inicia Wpa_supplicant como servidor
Añade lo siguiente en el archivo /etc/rc.local:
sudo service network-manager stop wpa_supplicant -B -Dnl80211 -iwlan0 -c /root/wap.confPara comentarios, preguntas y sugerencias, visita el artículo original en https://wiki.odroid.com/accessory/connectivity/wifi/wireless_ap_mode.
Be the first to comment