Linux素人でとーっても苦労したのでメモを残しておきます。使った子機はPLANEXのGW-900Dです。
CentOS8は別のページで
CentOS8でRTL8812AUのUSB子機を使って802.11acのAPをたてる
CentOS7ではドライバをインストールしてもWiFiではなく、なぜかEthernetと認識されて使えない不具合?があるので普通にビルドしてインストールしても使えません。
enp0s20u8はGW-900Dなのですが、Ethernetになっています。この現象が起きるのはCentOSだけのようで、他のLinuxでは起きないようです。
下準備:カーネルのアップデート
結論から言うと、カーネルをアップデートをしないとWiFi機器として認識してくれません。3.10~ではEthernetとして認識します。
1 |
$ uname -r |
まずはカーネルのバージョンを確認します。3系だったらまずアップデートしましょう。
参考サイト:HACKER’S HIGH – 【初心者向け】カーネルアップデートの方法【CentOS7】
上のサイトを参考にアップデートしてください。今回は長期安定版のインストールをします。
最新版カーネル(長期安定版)のインストール
1 |
$ yum --enablerepo=elrepo-kernel install kernel-lt |
最新安定板のmlではない方。
最新版カーネルの関連パッケージのインストール
1 2 3 4 |
$ yum --enablerepo=elrepo-kernel swap kernel-tools-libs kernel-lt-tools-libs $ yum --enablerepo=elrepo-kernel install kernel-lt-tools $ yum --enablerepo=elrepo-kernel swap kernel-headers kernel-lt-headers $ yum --enablerepo=elrepo-kernel swap kernel-devel kernel-lt-devel |
こちらもmlではなくlt。kernel-lt-develも入れます。
インストールが終了し、最新版カーネルで再起動したらドライバの作業に入ります。
ドライバのインストール
RTL8812AUのドライバはいろんな方が保守をしていてたくさんありますが、今回は
こちらのドライバを使うことにしました。ドライバによってはインストールできてもAPモードが使えないなんてこともあります。
1 2 3 4 |
$ git clone -b v5.6.4.1 https://github.com/aircrack-ng/rtl8812au.git $ cd rtl8812au $ make $ make install |
makeでこける場合はGCCのバージョンを変えてみてください。7.2.0で成功しました。
ようやくwifi機器と認識されるようになりました。
hostapdの設定
5GHzでAPを立てたいと思います。acでも立てられるようですが、速度が出せなかったので今回はaで。hostapdの導入の方法は省略します。
まずは仕様を確認します。
1 |
$ iw list |
Band 1(2.4GHz)とBand 2(5GHz)の仕様が確認できます。
5GHzの方は
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
Band 2: Capabilities: 0x1862 HT20/HT40 Static SM Power Save RX HT20 SGI RX HT40 SGI No RX STBC 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 VHT Capabilities (0x000010b0): Max MPDU length: 3895 Supported Channel Width: neither 160 nor 80+80 RX LDPC short GI (80 MHz) TX STBC SU Beamformee 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: 866 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: 866 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: * 5170 MHz [34] (30.0 dBm) * 5180 MHz [36] (30.0 dBm) * 5190 MHz [38] (30.0 dBm) * 5200 MHz [40] (30.0 dBm) * 5210 MHz [42] (30.0 dBm) * 5220 MHz [44] (30.0 dBm) * 5230 MHz [46] (30.0 dBm) * 5240 MHz [48] (30.0 dBm) * 5260 MHz [52] (30.0 dBm) (no IR, radar detection) |
こんな感じでずらーっとでてきます。今回特に大事なのは最初のCapabilities:の部分です。hostapd.confのht_capabで使えるものがわかります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP wpa_passphrase=************ driver=nl80211 interface=wlp0s20u8 bridge=br0 hw_mode=a channel=36 ssid=****************** country_code=JP ieee80211d=1 ieee80211h=1 ieee80211n=1 ht_capab=[HT20][HT40+][SHORT-GI-20][SHORT-GI-40][DSSS_CCK-40][MAX-AMSDU-7935] |
こんな感じで設定しました。
これで150Mbpsの5GHzのAPが立てられました。
コメント