oblique / create_ap

[NOT MAINTAINED] This script creates a NATed or Bridged WiFi Access Point.
BSD 2-Clause "Simplified" License
4.41k stars 992 forks source link

create_ap fails silently #446

Open zyoungdev opened 4 years ago

zyoungdev commented 4 years ago

Creating a software AP (wifi hotspot) works in Windows 10 but fails silently in Linux.

Steps taken to try to resolve

These all result in a silent failure.

$ create_ap wlp5s0 enp4s0 a4
WARN: Your adapter does not fully support AP virtual interface, enabling --no-virt
Config dir: /tmp/create_ap.wlp5s0.conf.T5DHAfoU
PID: 9259
Network Manager found, set wlp5s0 as unmanaged device... DONE
Sharing Internet using method: nat
hostapd command-line interface: hostapd_cli -p /tmp/create_ap.wlp5s0.conf.T5DHAfoU/hostapd_ctrl
Configuration file: /tmp/create_ap.wlp5s0.conf.T5DHAfoU/hostapd.conf
Using interface wlp5s0 with hwaddr d0:c5:d3:72:67:79 and ssid "a4"
wlp5s0: interface state UNINITIALIZED->ENABLED
wlp5s0: AP-ENABLED
$ rfkill list all
0: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
$ hostapd -v
hostapd v2.9
User space daemon for IEEE 802.11 AP management,
IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
Copyright (c) 2002-2019, Jouni Malinen <j@w1.fi> and contributors
$ uname -a
Linux a4 5.6.8-arch1-1 #1 SMP PREEMPT Wed, 29 Apr 2020 16:22:56 +0000 x86_64 GNU/Linux
$ lspci -k
05:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8822BE 802.11a/b/g/n/ac WiFi adapter
    Subsystem: ASUSTeK Computer Inc. RTL8822BE 802.11a/b/g/n/ac WiFi adapter
    Kernel driver in use: rtw_pci
    Kernel modules: rtwpci
$ iw list
Wiphy phy0
    max # scan SSIDs: 4
    max scan IEs length: 2243 bytes
    max # sched scan SSIDs: 0
    max # match sets: 0
    max # scan plans: 1
    max scan plan interval: -1
    max scan plan iterations: 0
    Retry short limit: 7
    Retry long limit: 4
    Coverage class: 0 (up to 0m)
    Device supports T-DLS.
    Supported Ciphers:
        * WEP40 (00-0f-ac:1)
        * WEP104 (00-0f-ac:5)
        * TKIP (00-0f-ac:2)
        * CCMP-128 (00-0f-ac:4)
        * CCMP-256 (00-0f-ac:10)
        * GCMP-128 (00-0f-ac:8)
        * GCMP-256 (00-0f-ac:9)
        * CMAC (00-0f-ac:6)
        * CMAC-256 (00-0f-ac:13)
        * GMAC-128 (00-0f-ac:11)
        * GMAC-256 (00-0f-ac:12)
    Available Antennas: TX 0 RX 0
    Supported interface modes:
        * IBSS
        * managed
        * AP
        * AP/VLAN
        * monitor
        * mesh point
    Band 1:
        Capabilities: 0x196f
            RX LDPC
            HT20/HT40
            SM Power Save disabled
            RX HT20 SGI
            RX HT40 SGI
            RX STBC 1-stream
            Max AMSDU length: 7935 bytes
            DSSS/CCK HT40
        Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
        Minimum RX AMPDU time spacing: 16 usec (0x07)
        HT Max RX data rate: 300 Mbps
        HT TX/RX MCS rate indexes supported: 0-15, 32
        Bitrates (non-HT):
            * 1.0 Mbps
            * 2.0 Mbps
            * 5.5 Mbps
            * 11.0 Mbps
            * 6.0 Mbps
            * 9.0 Mbps
            * 12.0 Mbps
            * 18.0 Mbps
            * 24.0 Mbps
            * 36.0 Mbps
            * 48.0 Mbps
            * 54.0 Mbps
        Frequencies:
            * 2412 MHz [1] (20.0 dBm)
            * 2417 MHz [2] (20.0 dBm)
            * 2422 MHz [3] (20.0 dBm)
            * 2427 MHz [4] (20.0 dBm)
            * 2432 MHz [5] (20.0 dBm)
            * 2437 MHz [6] (20.0 dBm)
            * 2442 MHz [7] (20.0 dBm)
            * 2447 MHz [8] (20.0 dBm)
            * 2452 MHz [9] (20.0 dBm)
            * 2457 MHz [10] (20.0 dBm)
            * 2462 MHz [11] (20.0 dBm)
            * 2467 MHz [12] (20.0 dBm) (no IR)
            * 2472 MHz [13] (20.0 dBm) (no IR)
            * 2484 MHz [14] (20.0 dBm) (no IR)
    Band 2:
        Capabilities: 0x196f
            RX LDPC
            HT20/HT40
            SM Power Save disabled
            RX HT20 SGI
            RX HT40 SGI
            RX STBC 1-stream
            Max AMSDU length: 7935 bytes
            DSSS/CCK HT40
        Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
        Minimum RX AMPDU time spacing: 16 usec (0x07)
        HT Max RX data rate: 300 Mbps
        HT TX/RX MCS rate indexes supported: 0-15, 32
        VHT Capabilities (0x03d071b2):
            Max MPDU length: 11454
            Supported Channel Width: neither 160 nor 80+80
            RX LDPC
            short GI (80 MHz)
            TX STBC
            SU Beamformee
            MU Beamformee
            +HTC-VHT
        VHT RX MCS set:
            1 streams: MCS 0-9
            2 streams: MCS 0-9
            3 streams: not supported
            4 streams: not supported
            5 streams: not supported
            6 streams: not supported
            7 streams: not supported
            8 streams: not supported
        VHT RX highest supported: 780 Mbps
        VHT TX MCS set:
            1 streams: MCS 0-9
            2 streams: MCS 0-9
            3 streams: not supported
            4 streams: not supported
            5 streams: not supported
            6 streams: not supported
            7 streams: not supported
            8 streams: not supported
        VHT TX highest supported: 780 Mbps
        Bitrates (non-HT):
            * 6.0 Mbps
            * 9.0 Mbps
            * 12.0 Mbps
            * 18.0 Mbps
            * 24.0 Mbps
            * 36.0 Mbps
            * 48.0 Mbps
            * 54.0 Mbps
        Frequencies:
            * 5180 MHz [36] (20.0 dBm) (no IR)
            * 5200 MHz [40] (20.0 dBm) (no IR)
            * 5220 MHz [44] (20.0 dBm) (no IR)
            * 5240 MHz [48] (20.0 dBm) (no IR)
            * 5260 MHz [52] (20.0 dBm) (no IR, radar detection)
            * 5280 MHz [56] (20.0 dBm) (no IR, radar detection)
            * 5300 MHz [60] (20.0 dBm) (no IR, radar detection)
            * 5320 MHz [64] (20.0 dBm) (no IR, radar detection)
            * 5500 MHz [100] (20.0 dBm) (no IR, radar detection)
            * 5520 MHz [104] (20.0 dBm) (no IR, radar detection)
            * 5540 MHz [108] (20.0 dBm) (no IR, radar detection)
            * 5560 MHz [112] (20.0 dBm) (no IR, radar detection)
            * 5580 MHz [116] (20.0 dBm) (no IR, radar detection)
            * 5600 MHz [120] (20.0 dBm) (no IR, radar detection)
            * 5620 MHz [124] (20.0 dBm) (no IR, radar detection)
            * 5640 MHz [128] (20.0 dBm) (no IR, radar detection)
            * 5660 MHz [132] (20.0 dBm) (no IR, radar detection)
            * 5680 MHz [136] (20.0 dBm) (no IR, radar detection)
            * 5700 MHz [140] (20.0 dBm) (no IR, radar detection)
            * 5745 MHz [149] (20.0 dBm) (no IR)
            * 5765 MHz [153] (20.0 dBm) (no IR)
            * 5785 MHz [157] (20.0 dBm) (no IR)
            * 5805 MHz [161] (20.0 dBm) (no IR)
            * 5825 MHz [165] (20.0 dBm) (no IR)
    Supported commands:
        * new_interface
        * set_interface
        * new_key
        * start_ap
        * new_station
        * new_mpath
        * set_mesh_config
        * set_bss
        * authenticate
        * associate
        * deauthenticate
        * disassociate
        * join_ibss
        * join_mesh
        * set_tx_bitrate_mask
        * frame
        * frame_wait_cancel
        * set_wiphy_netns
        * set_channel
        * set_wds_peer
        * tdls_mgmt
        * tdls_oper
        * probe_client
        * set_noack_map
        * register_beacons
        * start_p2p_device
        * set_mcast_rate
        * connect
        * disconnect
        * set_qos_map
        * set_multicast_to_unicast
    Supported TX frame types:
        * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        * managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        * mesh point: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        * P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        * P2P-device: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
    Supported RX frame types:
        * IBSS: 0x40 0xb0 0xc0 0xd0
        * managed: 0x40 0xd0
        * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
        * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
        * mesh point: 0xb0 0xc0 0xd0
        * P2P-client: 0x40 0xd0
        * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
        * P2P-device: 0x40 0xd0
    software interface modes (can always be added):
        * AP/VLAN
        * monitor
    interface combinations are not supported
    HT Capability overrides:
        * MCS: ff ff ff ff ff ff ff ff ff ff
        * maximum A-MSDU length
        * supported channel width
        * short GI for 40 MHz
        * max A-MPDU length exponent
        * min MPDU start spacing
    Device supports TX status socket option.
    Device supports HT-IBSS.
    Device supports SAE with AUTHENTICATE command
    Device supports low priority scan.
    Device supports scan flush.
    Device supports AP scan.
    Device supports per-vif TX power setting
    Driver supports full state transitions for AP/GO clients
    Driver supports a userspace MPM
    Device supports configuring vdev MAC-addr on create.
    Device supports randomizing MAC-addr in scans.
    Supported extended features:
        * [ RRM ]: RRM
        * [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
        * [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211
        * [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
$ dmesg
[ 1205.649834] ------------[ cut here ]------------
[ 1205.649835] purge skb(s) not reported by firmware
[ 1205.649859] WARNING: CPU: 4 PID: 0 at drivers/net/wireless/realtek/rtw88/tx.c:155 rtw_tx_report_purge_timer+0x20/0x50 [rtw88]
[ 1205.649860] Modules linked in: ccm hid_logitech_hidpp uhid xt_REDIRECT xt_tcpudp nf_nat_pptp nf_conntrack_pptp iptable_filter iptable_nat xt_MASQUERADE nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 rfcomm fuse dm_crypt dm_mod cmac algif_hash algif_skcipher af_alg nvidia_drm(POE) nvidia_modeset(POE) wireguard nvidia(POE) curve25519_x86_64 libchacha20poly1305 chacha_x86_64 uas xpad poly1305_x86_64 mousedev input_leds joydev usb_storage ff_memless libblake2s blake2s_x86_64 ip6_udp_tunnel udp_tunnel libcurve25519_generic libchacha bnep libblake2s_generic btusb btrtl btbcm btintel bluetooth hid_generic usbhid ecdh_generic rtwpci ecc hid crc16 rtw88 edac_mce_amd kvm_amd mac80211 snd_hda_codec_realtek kvm snd_hda_codec_generic ledtrig_audio nls_iso8859_1 snd_hda_codec_hdmi eeepc_wmi nls_cp437 asus_wmi vfat snd_hda_intel battery irqbypass snd_intel_dspcfg fat snd_hda_codec crct10dif_pclmul crc32_pclmul sparse_keymap wmi_bmof cfg80211 ghash_clmulni_intel drm_kms_helper snd_hda_core snd_hwdep
[ 1205.649880]  snd_pcm cec aesni_intel rc_core ipmi_devintf ipmi_msghandler crypto_simd snd_timer syscopyarea igb ccp cryptd sysfillrect rfkill glue_helper snd sp5100_tco sysimgblt pcspkr k10temp libarc4 rng_core fb_sys_fops i2c_algo_bit i2c_piix4 i2c_nvidia_gpu soundcore dca wmi pinctrl_amd gpio_amdpt evdev mac_hid acpi_cpufreq drm crypto_user agpgart ip_tables x_tables xhci_pci xhci_hcd btrfs blake2b_generic libcrc32c crc32c_generic crc32c_intel xor raid6_pq overlay
[ 1205.649895] CPU: 4 PID: 0 Comm: swapper/4 Tainted: P        W  OE     5.6.8-arch1-1 #1
[ 1205.649896] Hardware name: System manufacturer System Product Name/ROG STRIX B450-I GAMING, BIOS 2801 09/18/2019
[ 1205.649899] RIP: 0010:rtw_tx_report_purge_timer+0x20/0x50 [rtw88]
[ 1205.649901] Code: 84 00 00 00 00 00 0f 1f 40 00 0f 1f 44 00 00 8b 47 f0 85 c0 75 01 c3 41 54 55 53 48 89 fb 48 c7 c7 c8 16 c9 c0 e8 32 ee e6 d9 <0f> 0b 4c 8d 63 d8 4c 89 e7 e8 32 ba 78 da 48 8d 7b e0 48 89 c5 e8
[ 1205.649901] RSP: 0018:ffffb03140328e78 EFLAGS: 00010286
[ 1205.649902] RAX: 0000000000000000 RBX: ffff9b2c24535cf8 RCX: 0000000000000000
[ 1205.649903] RDX: 0000000000000102 RSI: 0000000000000086 RDI: 00000000ffffffff
[ 1205.649903] RBP: 0000000000000000 R08: 0000000000000568 R09: 0000000000000001
[ 1205.649904] R10: 0000000000000000 R11: 0000000000000001 R12: ffff9b2c24535cf8
[ 1205.649904] R13: ffffffffc0c21960 R14: ffff9b2c3e91dd80 R15: ffff9b2c24535cf8
[ 1205.649905] FS:  0000000000000000(0000) GS:ffff9b2c3e900000(0000) knlGS:0000000000000000
[ 1205.649906] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1205.649906] CR2: 00007fedc80b2e30 CR3: 000000078b1a0000 CR4: 00000000003406e0
[ 1205.649907] Call Trace:
[ 1205.649909]  <IRQ>
[ 1205.649913]  call_timer_fn+0x2d/0x160
[ 1205.649915]  run_timer_softirq+0x1ad/0x510
[ 1205.649918]  ? rtw_tx_report_enqueue+0x80/0x80 [rtw88]
[ 1205.649921]  __do_softirq+0x111/0x34d
[ 1205.649924]  irq_exit+0xac/0xd0
[ 1205.649925]  smp_apic_timer_interrupt+0xa6/0x1b0
[ 1205.649926]  apic_timer_interrupt+0xf/0x20
[ 1205.649927]  </IRQ>
[ 1205.649929] RIP: 0010:native_safe_halt+0xe/0x10
[ 1205.649930] Code: ff ff eb bd cc cc cc cc cc cc cc cc e9 07 00 00 00 0f 00 2d e6 c0 45 00 f4 c3 66 90 e9 07 00 00 00 0f 00 2d d6 c0 45 00 fb f4 <c3> cc 0f 1f 44 00 00 41 54 55 53 e8 22 dc 76 ff e8 5d 34 ae ff 0f
[ 1205.649930] RSP: 0018:ffffb03140157eb0 EFLAGS: 00000202 ORIG_RAX: ffffffffffffff13
[ 1205.649931] RAX: 0000000000000004 RBX: 0000000000000004 RCX: 0000000000000000
[ 1205.649932] RDX: 0000000000000000 RSI: 0000000000000082 RDI: ffffffff9bbd1490
[ 1205.649932] RBP: ffff9b2c3ac6dac0 R08: 0000000000000000 R09: 0000000000000000
[ 1205.649932] R10: 0000000000100000 R11: 0000000000000000 R12: ffff9b2c3ac6dac0
[ 1205.649933] R13: 0000000000000000 R14: 0000000000000000 R15: ffff9b2c3ac6dac0
[ 1205.649935]  default_idle+0x18/0x170
[ 1205.649938]  do_idle+0x204/0x270
[ 1205.649939]  ? do_idle+0x194/0x270
[ 1205.649940]  cpu_startup_entry+0x19/0x20
[ 1205.649942]  start_secondary+0x186/0x1d0
[ 1205.649944]  secondary_startup_64+0xb6/0xc0
[ 1205.649946] ---[ end trace 77e2ca6ed77aef80 ]---
[ 1205.850133] rtw_pci 0000:05:00.0: start vif d0:c5:d3:72:67:79 on port 0
[ 1205.850903] rtw_pci 0000:05:00.0: stop vif d0:c5:d3:72:67:79 on port 0
[ 1206.326810] rtw_pci 0000:05:00.0: start vif d0:c5:d3:72:67:79 on port 0
[ 1328.788818] rtw_pci 0000:05:00.0: stop vif d0:c5:d3:72:67:79 on port 0
[ 1330.245823] audit: type=1101 audit(1588561532.654:93): pid=10723 uid=1000 auid=1000 ses=1 msg='op=PAM:accounting grantors=pam_unix,pam_permit,pam_time acct="root" exe="/usr/bin/sudo" hostname=? addr=? terminal=/dev/pts/1 res=success'
[ 1330.246081] audit: type=1110 audit(1588561532.654:94): pid=10723 uid=0 auid=1000 ses=1 msg='op=PAM:setcred grantors=pam_unix,pam_permit,pam_env acct="root" exe="/usr/bin/sudo" hostname=? addr=? terminal=/dev/pts/1 res=success'
[ 1330.249980] audit: type=1105 audit(1588561532.661:95): pid=10723 uid=0 auid=1000 ses=1 msg='op=PAM:session_open grantors=pam_limits,pam_unix,pam_permit acct="root" exe="/usr/bin/sudo" hostname=? addr=? terminal=/dev/pts/1 res=success'
[ 1331.400041] rtw_pci 0000:05:00.0: start vif d0:c5:d3:72:67:79 on port 0
[ 1331.405431] audit: type=1325 audit(1588561533.814:96): table=nat family=2 entries=5
[ 1331.406943] audit: type=1325 audit(1588561533.818:97): table=filter family=2 entries=4
[ 1331.408461] audit: type=1325 audit(1588561533.818:98): table=filter family=2 entries=5
[ 1331.412963] audit: type=1325 audit(1588561533.821:99): table=filter family=2 entries=6
[ 1331.414907] audit: type=1325 audit(1588561533.824:100): table=filter family=2 entries=7
[ 1331.416713] audit: type=1325 audit(1588561533.828:101): table=nat family=2 entries=6
[ 1331.418636] audit: type=1325 audit(1588561533.828:102): table=nat family=2 entries=7
[ 1331.434235] rtw_pci 0000:05:00.0: stop vif d0:c5:d3:72:67:79 on port 0
[ 1331.910079] rtw_pci 0000:05:00.0: start vif d0:c5:d3:72:67:79 on port 0
[ 1332.383758] IPv6: ADDRCONF(NETDEV_CHANGE): wlp5s0: link becomes ready