Pokusil jsem se bez štěstí následovat rady, které napsal Stefano Cappa. Moje rozhraní neustále hlásí No valid interface combinations
což naznačovalo, že bych měl uvíznout (ale nebyl).
Virtuální WIFI lze vyvolat pomocí
- modul jádra mac80211_hwsim
- modul lze konfigurovat pomocí
radios
parametr označující počet virtuálních fyzických karet (phy#
). - Každý
phy#
může simulovat nezávislou bezdrátovou rádiovou kartu. - Každý
phy#
karta získá přidružené rozhraní LAN (wlan#
). - modul přináší také
hwsim#
rozhraní, které lze použít ke sledování pseudo-wifi provoz mezi všemi rádiovými kartami.
- modul lze konfigurovat pomocí
hostapd
nástroj, který je schopen proměnit jakékoli rádio (včetně toho simulovaného) na přístupový bod,wpa_supplicant
nástroj, který lze použít ke skenování oblasti na přístupové body nebo k připojení k nim.
Nakonec jsem přišel s řešením (chvíli mi to trvalo, protože se toho snažím dosáhnout s Androidem), které spoléhá právě na tyto tři věci. Nástroje by používaly nl80211
ovladač pro komunikaci s pseudohardwarem.
Moje zjednodušující konfigurační soubory vypadají následovně:
hostapd.conf (Poznámka, tento soubor má více nastavení, než je požadováno, ale všechna svá nastavení zveřejňuji zde)
interface=wlan1
driver=nl80211
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
ctrl_interface_group=0
ssid=Vamonos Pest
country_code=US
hw_mode=g
channel=1
beacon_int=100
dtim_period=2
max_num_sta=255
rts_threshold=2347
fragm_threshold=2346
macaddr_acl=0
auth_algs=3
ignore_broadcast_ssid=0
wmm_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
eapol_key_index_workaround=0
eap_server=0
own_ip_addr=127.0.0.1
wpa_supplicant.conf
network={
ssid="Vamonos Pest"
key_mgmt=NONE
priority=16
}
Nakonec spustili dva:
hostapd -d hostapd.conf
wpa_supplicant -Dnl80211 -iwlan0 -d -csupplicant.conf
to udělalo ten trik. wpa_supplicant
je schopen skenovat oblast sítě a najít všechny virtuální přístupové body wifi. více lze vytvořit, pokud modul hwsim používá více než dvě rádia. Odsud je zbytek snadný – spusťte dhcp server na wlan1, dhcp klienta na wlan0 a máte hotovo.