ラベル NUC5PPYH の投稿を表示しています。 すべての投稿を表示
ラベル NUC5PPYH の投稿を表示しています。 すべての投稿を表示

CentOS7.5におけるNUC5PPYHのWiFiドライバ[さらに追加更新]

このブログ最大の人気記事の、CentOS7 で nmcli を使ったWiFi接続できた @NUC5PPYH 、なのですが、CentOS7.5から、カーネルのアップデートが不要になったようですので、アップデート投稿です。
---------
2018/9/30追記:
CentOS7.5 のMinimal(CentOS-7-x86_64-Minimal-1804.iso)を初期からインストールしたところ、NetworkManager-wifi も最初からインストールされました。
ということで、CentOS7.5からは、もう悩まなくてもよいんです!\(^o^)/
---------

仕事で、vuls 0.5の脆弱性チェックの差分確認をするために、自宅でCentOSのアップデートの確認を行ってました。※趣味の範疇です。ブラック企業ではありません。

アップデートは今まで何回かやっていたのですが、 yum.conf に下記設定を入れて、カーネルがバージョンアップしないように設定していました。
exclude=kernel* centos*

理由は、Wifi用のドライバインストールの為にKernelを大幅アップデートしており、yum update によるカーネルバージョンダウンで、WiFiドライバが読み込めなくなるのを防ぐためです。
何度かこれで失敗していたためのおまじないです。

で、今回、この状態だとyum update で confrictが発生することから差分確認が難しいので、この設定を外して、yum update を行いました。
結果、カーネルのバージョンは、元がこれで、
# uname -a
Linux myfileserver 4.1.5-1.el7.elrepo.x86_64 #1 SMP Tue Aug 11 07:49:00 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux

今回、
$ uname -a
Linux mfileserver 3.10.0-862.11.6.el7.x86_64 #1 SMP Tue Aug 14 21:49:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
$ cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

はい、OSのバージョンは7.3から7.5へ上がって、
カーネルのバージョンは4.1.5から3.10へ落ちてます。
現在利用しているiwlwifiのドライバは、カーネル4.1用なので当然のように動作しない。

$ sudo grep iwl /var/log/dmesg
[   11.287425] iwlwifi 0000:02:00.0: irq 120 for MSI/MSI-X
[   11.295631] iwlwifi 0000:02:00.0: no suitable firmware found!                                                        
[   11.295639] iwlwifi 0000:02:00.0: minimum version required: iwlwifi-7265D-22 
[   11.295643] iwlwifi 0000:02:00.0: maximum version supported: iwlwifi-7265D-29
[   11.295646] iwlwifi 0000:02:00.0: check git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git 

カーネルのアップデートしようかな、と思っていたけど、yum で wifiのドライバを一応探してみたら、ドライバがあった。

$ yum list | grep iwl                                                                            
iwl100-firmware.noarch                      39.31.5.1-62.2.el7_5       @updates                                         
iwl1000-firmware.noarch                     1:39.31.5.1-62.2.el7_5     @updates                                         
iwl105-firmware.noarch                      18.168.6.1-62.2.el7_5      @updates                                         
iwl135-firmware.noarch                      18.168.6.1-62.2.el7_5      @updates                                         
iwl2000-firmware.noarch                     18.168.6.1-62.2.el7_5      @updates                                         
iwl2030-firmware.noarch                     18.168.6.1-62.2.el7_5      @updates                                         
iwl3160-firmware.noarch                     22.0.7.0-62.2.el7_5        @updates                                         
iwl3945-firmware.noarch                     15.32.2.9-62.2.el7_5       @updates                                         
iwl4965-firmware.noarch                     228.61.2.24-62.2.el7_5     @updates                                         
iwl5000-firmware.noarch                     8.83.5.1_1-62.2.el7_5      @updates                                         
iwl5150-firmware.noarch                     8.24.2.2-62.2.el7_5        @updates                                         
iwl6000-firmware.noarch                     9.221.4.1-62.2.el7_5       @updates                                         
iwl6000g2a-firmware.noarch                  17.168.5.3-62.2.el7_5      @updates                                         
iwl6000g2b-firmware.noarch                  17.168.5.2-62.2.el7_5      @updates                                         
iwl6050-firmware.noarch                     41.28.5.1-62.2.el7_5       @updates                                         
iwl7260-firmware.noarch                     22.0.7.0-62.2.el7_5        @updates                                         
iwl7265-firmware.noarch                     22.0.7.0-62.2.el7_5        updates  

これは・・・と、iwl7265-firmware.noarch をインストールして、リブートしてみると・・・

$sudo grep iwl /var/log/dmesg
[    9.904339] iwlwifi 0000:02:00.0: irq 120 for MSI/MSI-X
[    9.925723] iwlwifi 0000:02:00.0: loaded firmware version 29.610311.0 op_mode iwlmvm
[   10.072038] iwlwifi 0000:02:00.0: Detected Intel(R) Dual Band Wireless AC 3165, REV=0x210
[   10.090627] iwlwifi 0000:02:00.0: base HW address: 34:02:86:cc:c9:dc
[   10.168205] ieee80211 phy0: Selected rate control algorithm 'iwl-mvm-rs'

キタコレ!
WiFiも正常動作!アンド、念のためカーネルを再確認

$ nmcli d s
DEVICE      TYPE      STATE     CONNECTION      
enp3s0      ethernet  接続済み  ethernet-enp3s0 
wlp2s0      wifi      接続済み  nuc5ppyh-1      
virbr0      bridge    接続済み  virbr0          
lo          loopback  管理無し  --              
virbr0-nic  tun       管理無し  --              

$uname -a
Linux mfileserver 3.10.0-862.11.6.el7.x86_64 #1 SMP Tue Aug 14 21:49:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

いやぁ、カーネル上げなくてよいってびっくり。進化してます。
パッケージの情報を一応載せておきます。

$ yum info iwl7265-firmware.noarch
インストール済みパッケージ
名前                : iwl7265-firmware
アーキテクチャー    : noarch
バージョン          : 22.0.7.0
リリース            : 62.2.el7_5
容量                : 51 M
リポジトリー        : installed
提供元リポジトリー  : updates
要約                : Firmware for Intel(R) Dual Band Wireless-AC 7265 Series Adapters
URL                 : https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
ライセンス          : Redistributable, no modification permitted
説明                : This package contains the firmware required by the iwlagn driver
                    : for Linux.  Usage of the firmware is subject to the terms and conditions
                    : contained inside the provided LICENSE file. Please read it carefully.

と、いうことで、CentOS7.5の場合、iwlwifiのドライバがついてくる、カーネルのバージョンアップも不要、ということになりました。

NUC5PPYHのアクセスポイント化

明けましておめでとうございます。

今回の年越しは何年かぶりに職場で過ごしました。
おかげで実感がわかないw

前回のWiFi環境の話の続きで、1階用のアクセスポイントを設ける話。
家にはWiFi接続のものが沢山ある。ざっとこんなもの。
スマホ x3
タブレット x2
ノートPC x1
PSP x2
3DS x3
プリンタ・・は、WiFiだと双方向できないのでやめたw
少なくとも夜や休みの日は常時6接続は確実。
こうなると1階の自分の部屋では電波が届きにくく、プチプチ感が出てくる。
この解消にNASにしているNUC5PPYHのWiFiをアクセスポイントにして有効活用というわけだ。

で、当初は、WiFiルーターと同じくブリッジ接続での環境を目指していた。
が、よくわからない状態。

ググると、それなりには出てくる。
アクセスポイント化はできるけど、IPの割り当てが??

AP化するだけなら。
nmcli c add type wifi ifname wlan0 con-name nuc5ppyh-1 save yes mode ap ssid nuc5ppyh-1
nmcli c mod nuc5ppyh-1 wifi-sec.key-mgmt wpa-psk
nmcli c mod nuc5ppyh-1 wifi-sec.psk qwery1234
nmcli c mod nuc5ppyh-1 ipv4.method manual ipv4.address 192.168.0.101/24
nmcli c mod nuc5ppyh-1 ipv4.gateway "192.168.0.1"
nmcli c mod nuc5ppyh-1 ipv4.dns "8.8.8.8 8.8.4.4"
nmcli c mod nuc5ppyh-1 ipv6.method auto

nmcli c mod nuc5ppyh-1 connection.zone internal
nmcli c up nuc5ppyh-1 
これで、アクセスポイントとしては見える。
IPが割り当てられないので何もアクセスできないけど・・・F/Wとかルーティングとか必要かな?
と、ブリッジ接続を考えたけど、 うまくわからず。
<参考URL>
<http://enakai00.hatenablog.com/entry/20150118/1421587442>

色々ググっていたら、単純にインターネット共有の設定が・・・
nmcli c mod nuc5ppyh-1 ipv4.method share
いや・・・まじ繋がる。インターネットもOK. NASとかは見えないけど、PC繋ぐわけでないので通常用途だとこれで問題ない。 とりあえず、これでいいやw
nmcli c add type wifi ifname wlan0 con-name nuc5ppyh-1 save yes mode ap ssid nuc5ppyh-1
nmcli c mod nuc5ppyh-1 wifi-sec.key-mgmt wpa-psk
nmcli c mod nuc5ppyh-1 wifi-sec.psk qwery1234
nmcli c mod nuc5ppyh-1 ipv4.method share
nmcli c mod nuc5ppyh-1 ipv6.method auto

nmcli c mod  nuc5ppyh-1 connection.zone internal
nmcli c up nuc5ppyh-1
とりあえず、ここまで。 しかし、年末年始は毎年、なんだかんだで、ネットワーク関係いじっているなぁ、 他にやることないからなぁw

CentOS7 で nmcli を使ったWiFi接続できた @NUC5PPYH

追記:2018/09/21:CentOS7.5のwifiドライバの情報がありますので、こちらも参照してくださいね。
この前買ったNUCのWiFIについて使わないからいいかと思ってたけど、ここはいじらないと面白くないでしょ、ということでWiFiの設定にチャレンジです。この設定するのに調べまくって6時間ぐらいかかった。
情報がまとまっていないので、CentOS7やその他新しいNetworkManager、nmcliを使っている場合とNUC5PPYH(おそらくNUC5CPYHも同じ)の事例を参考までに書いておく。

まずはブログなので経過含めてで、まとめは後日です。

NUC5PPYHは、IntelのAC3165というWiFiモジュールを搭載しています。
これが今の状態のCentOSから見えるか?
# nmcli device
デバイス  タイプ    状態      接続   
enp3s0    ethernet  接続済み  enp3s0 
lo        loopback  管理無し  --     

はい、見えないです。ということはドライバ類が無いということで、Googleで調べると、iwlwifiというものがあることが判明、しかし、複数ドライバがあってよくわからない。※基本的にLinuxの素人ですので。

Linux wireless

よくわからない場合は最新版を入れればいいんじゃないの?って感じで、iwlwifi-7265-ucode-25.30.14.0をダウンロード。
記載のあるとおり、
# cp iwlwifi-*.ucode /lib/firmware
で、コピーします。
# reboot

再度、確認しても、さっきと同じで見えません。
dmesg を確認しても、iwlとかWiress関係は一切出力されていない。

デバイスの認識が出来ていない対応でドライバを入れたけど認識しない。困ったなぁ~とCentOS7,3165と同じ7265で実績が無いかとGoogle先生に何度も質問。

そして・・・下記URLを読んでいるとカーネルのバージョンの問題そうなことに気づく。
http://superuser.com/questions/889295/intel-wireless-wifi-driver-for-linux-on-dell-inspiron-17-7746-early-2015-cent

ubuntuでのブログで、カーネルパッチで対応したとかあったのを読んでいたのがフラッシュバック。
ということは、さっきのブログでカーネルが3.19になっているから、アップデートすればよいのか・・・
せっかく作ったサーバが壊れないか心配だけど、Sambaしか入れてないから復旧は簡単だ、と心に決めてアップデートを調査。参考にしたのは以下のサイト。

http://bipinkdas.blogspot.jp/2015/02/centos7-upgrading-kernel-to-319.html
ちょうどさっきのブログと同じカーネル3.19と書いてあるので、これでよいかな

現在のカーネル
# uname -a
Linux myfileserver 3.10.0-229.11.1.el7.x86_64 #1 SMP Thu Aug 6 01:06:18 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

記載内容をそのままコピペしてアップグレード実施。長いので割愛w

と、ところが、
# uname -a
Linux myfileserver 4.1.5-1.el7.elrepo.x86_64 #1 SMP Tue Aug 11 07:49:00 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux

おぉっと、3.19どころか、4.1とか上がりすぎじゃん・・・
でも仕方が無いのでこのままリブート。すると、
#dmesg | grep iwl
[    3.496040] iwlwifi 0000:02:00.0: Direct firmware load for iwlwifi-7265D-13.ucode failed with error -2
[    3.496067] iwlwifi 0000:02:00.0: request for firmware file 'iwlwifi-7265D-13.ucode' failed.
[    3.496154] iwlwifi 0000:02:00.0: no suitable firmware found!
見えた!でもエラー。さっきの参考URLと同じ症状・・・って、あれ?4.1ってカーネルバージョンか、iwlwifiの3.xとか、4.1とかこのことか!ってやっと気づいたorz
インストールしたドライバは、4.2用だったので、4.1用を入れてみる。ちょうど、コメントにも
Intel® Wireless 3165 (starting from firmware XX.XX.13.0 and kernel 4.1)
って書いてある。
とりあえず、iwlwifi-7265-ucode-25.30.13.0.tgzをインストールして、リブート。 ※って、エラーに13が無いって書いてあるね~
今度は、
# dmesg | grep iwl
[    3.458501] iwlwifi 0000:02:00.0: loaded firmware version 25.30.13.0 op_mode iwlmvm
[    3.493097] iwlwifi 0000:02:00.0: Detected Intel(R) Dual Band Wireless AC 3165, REV=0x210
[    3.493171] iwlwifi 0000:02:00.0: L1 Disabled - LTR Disabled
[    3.493344] iwlwifi 0000:02:00.0: L1 Disabled - LTR Disabled
[    3.598461] ieee80211 phy0: Selected rate control algorithm 'iwl-mvm-rs'
[    3.708865] iwlwifi 0000:02:00.0 wlp2s0: renamed from wlan0
# nmcli d
デバイス  タイプ    状態      接続
enp3s0    ethernet  接続済み  enp3s0
lo        loopback  管理無し  --
wlp2s0    wifi      管理無し  --

見えた!すごい、早速接続だ
# nmcli d wifi connect [ssid] password [password]
が、「デバイスが見つかりません」orz
wpaなんたらってのの記載も思い出してググる。 wpa_supplicantの設定が必要らしい。
wpa_passphrase [ssid] [password]の出力結果を /etc/wpa_supplicant.confに書き込む。 サービス再起動。
# systemctl restart wpa_supplicant.service
でも、状態は変わらない。 もうダメかと思って、device not found で Google先生に確認していると、すごくさらりと記載のあるサイトがあった
http://jorge.fbarr.net/2015/05/22/no-wi-fi-device-found/

 NetworkManagerはインストールされているけどNetworkManager-wifiがインストールされていない?早速yumで調べてさらりとインストール、再度リブート
# nmcli d
デバイス  タイプ    状態      接続
enp3s0    ethernet  接続済み  enp3s0
wlp2s0    wifi      切断済み  --
lo        loopback  管理無し  --
お、状態の表示が変わった。コネクトしてみると、
# nmcli d wifi connect [ssid] password [password]
# nmcli d
デバイス  タイプ    状態      接続
enp3s0    ethernet  接続済み  enp3s0
wlp2s0    wifi      接続済み  [ssid]
lo        loopback  管理無し  --
つ、つながった・・・\(^o^)/
この後、有線LANを外してWiFi側からのリモートアクセスも出来ることを確認。使えた~

ちなみに接続を切るのは、デバイス名称指定で以下
# nmcli d disconnect wlp2s0

以下は参考情報。個人情報無いよな?w
# ip a
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp3s0:  mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether b8:ae:ed:77:f8:49 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.4/24 brd 192.168.0.255 scope global enp3s0
       valid_lft forever preferred_lft forever
    inet6 fe80::baae:edff:fe77:f849/64 scope link
       valid_lft forever preferred_lft forever
3: wlp2s0:  mtu 1500 qdisc mq state UP qlen 1000
    link/ether 34:02:86:cc:c9:dc brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.28/24 brd 192.168.0.255 scope global dynamic wlp2s0
       valid_lft 86377sec preferred_lft 86377sec
    inet6 fe80::3602:86ff:fecc:c9dc/64 scope link
       valid_lft forever preferred_lft forever

WiFiネットワークの一覧は以下で表示。
# nmcli d wifi
*  SSID                 モード    CHAN  レート     信号  バー  セキュリティ
   --                   インフラ  4     54 Mbit/s  57    ???_  WPA2
   [ssid]               インフラ  44    54 Mbit/s  39    ??__  WPA2

Bluetoothとか、802.11ACとかはまた今度で・・・。
ちなみにBluetoothは、まだ以下の状態。
# dmesg | grep Blue
[    3.422154] Bluetooth: Core ver 2.20
[    3.422915] Bluetooth: HCI device and connection manager initialized
[    3.423324] Bluetooth: HCI socket layer initialized
[    3.423333] Bluetooth: L2CAP socket layer initialized
[    3.423349] Bluetooth: SCO socket layer initialized
[    3.457849] Bluetooth: hci0: read Intel version: 370810011003110e00
[    3.460254] Bluetooth: hci0 failed to open Intel firmware file: intel/ibt-hw-37.8.10-fw-1.10.3.11.e.bseq(-2)
[    3.461033] Bluetooth: hci0: Intel Bluetooth firmware file: intel/ibt-hw-37.8.bseq
[    3.464754] Bluetooth: hci0: Intel Bluetooth firmware patch completed
同じようにfirmwareの問題のよう。
すこし休んでから調べようかな・・・
以上~お疲れでした。 2016/05/01 ちょっとだけ誤字修正