@m_taka12 (たも たか)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Raspberry Pi 3 での無線接続設定

解決したいこと

Raspberry Pi 3にて、所定のネットワークに無線接続(wlan0)したいができない。
無線の認証はできているようだが、ifconfigにて固定IPの取得ができない。
有線LAN(eth0)は固定IPの取得もでき、ネットワーク接続できている。

環境

OS:Linux raspberrypi 5.4.51-v7+
無線:Radius認証方式(AD連携はなし、証明書を使用)

自分で試したこと

NetworkManagerは使用せず、以下2ファイルを編集した。

/etc/dhcpcd.conf(一部抜粋)

# fallback to static profile on eth0
interface eth0
static ip_address=192.168.XX.XX/24
static routers=192.168.XX.XX
static domain_name_servers=192.168.XX.XX
static domain_search=

interface wlan0
static ip_address=172.24.XX.XX/16
static routers=172.24.XX.XX
static domain_name_servers=192.168.XX.XX
static domain_search=192.168.XX.XX
noipv6

/etc/wpa_supplicant/wpa_supplicant.conf

# fallback to static profile on eth0
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP

network={
    ssid="XXXXX"
    proto=RSN
    key_mgmt=WPA-EAP
    pairwise=CCMP
    auth_alg=OPEN
    eap=TLS
    identity="XXXXX"
    password="xxxxx"
    ca_cert="/home/XXXXX/cert/XXXXX-ca.crt"
    client_cert="/home/XXXXX/cert/user.crt"
    private_key="/home/XXXXX/cert/XXXXX.p12"
    private_key_passwd="xxxxx"
    id_str="XXXXX"
}

実行結果
sudo wpa_supplicant -D nl80211,wext -i wlan0 -c /etc/wpa_s

Successfully initialized wpa_supplicant
Line 21: network block was not terminated properly.
Line 21: failed to parse network block.
Failed to read or parse configuration '/etc/wpa_supplicant/wpa_supplicant.conf'.
0 likes

2Answer

もしSSIDが非公開になっている場合、wpa_supplicant.confにはscan_ssid=1も必要です。

1Like

Comments

  1. @m_taka12

    Questioner

    ありがとうございます。追加してみました。
  2. ちなみに`scan_ssid=1`は`network`の中です。
     ->記載忘れてました。

    network={
    ssid="XXXXX"
    scan_ssid=1

    `ap_scan=1`も入れてみてください。

    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    ap_scan=1
    update_config=1
    country=JP
  3. @m_taka12

    Questioner

    ありがとうございます。
    ご指摘いただいた内容を追記してみました。

    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    ap_scan=1
    update_config=1
    country=JP

    network={
    ssid="XXXXXXXX"
    scan_ssid=1
    proto=RSN
    key_mgmt=WPA-EAP
    pairwise=CCMP
    auth_alg=OPEN
    eap=TLS
    identity="XXXXXXXX"
    password="XXXXXXXX"
    ca_cert="/home/XXXXXXXX/cert/XXXXXXXX-ca.crt"
    client_cert="/XXXXXXXX/XXXXXXXX/cert/user.crt"
    private_key="/home/XXXXXXXX/cert/XXXXXXXX.p12"
    private_key_passwd="XXXXXXXX"
    id_str="XXXXXXXX"
    }
  4. ↓のような意味でした。わかり辛くすみませんm(_ _"m)

    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    ap_scan=1
    update_config=1
    country=JP

    network={
    ssid="XXXXXXXXX"
    scan_ssid=1
    proto=RSN
    key_mgmt=WPA-EAP
    pairwise=CCMP
    auth_alg=OPEN
    eap=TLS
    identity="XXXXXXXXX"
    password="XXXXXXXXX"
    ca_cert="/home/XXXXXXXXX/cert/XXXXXXXXX-ca.crt"
    client_cert="/home/XXXXXXXXX/cert/user.crt"
    private_key="/home/XXXXXXXXX/cert/XXXXXXXXX.p12"
    private_key_passwd="XXXXXXXXX"
    id_str="XXXXXXXXX"
    }
  5. Failed to read or parse configuration '/etc/wpa_supplicant/wpa_supplicant.conf'.
    なのでwpa_supplicant.confの設定や書き方が間違っていると思いますが…。
    この問題はRadius認証の場合のみ発生しますか?
    通常のネットワークに接続できるか、まずは最小限の設定で確認したほうが良いと思います。


    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    country=JP

    network={
    ssid="SSID"
    psk="パスワード"
    }
  6. @m_taka12

    Questioner

    ありがとうございます。
    DHCPで、別の無線LANに接続できることは確認できています。
  7. wpa_supplicant.confを設定後、再起動してシステムのログを見ると多少なりともどのあたりで止まっているのかわかるかもしれません。

    cat /ver/log/syslog | grep wlan0
  8. @m_taka12

    Questioner

    Jun 29 08:49:15 raspberrypi dhcpcd[477]: wlan0: probing address 172.24.5.206/16
    Jun 29 08:49:15 raspberrypi dhcpcd[477]: wlan0: carrier lost
    Jun 29 08:49:15 raspberrypi NetworkManager[458]: <warn> [1624924155.8992] device (wlan0): re-acquiring supplicant interface (#5).
    Jun 29 08:49:15 raspberrypi dhcpcd[477]: wlan0: carrier acquired
    Jun 29 08:49:15 raspberrypi dhcpcd[477]: wlan0: probing address 172.24.5.206/16
    Jun 29 08:49:16 raspberrypi wpa_supplicant[459]: Delete '/run/wpa_supplicant/wlan0' manually if it is not used anymore
    Jun 29 08:49:16 raspberrypi dhcpcd[477]: wlan0: carrier lost
    Jun 29 08:49:16 raspberrypi wpa_supplicant[459]: nl80211: deinit ifname=wlan0 disabled_11b_rates=0
    Jun 29 08:49:16 raspberrypi NetworkManager[458]: <error> [1624924156.1521] sup-iface[0x204f648,wlan0]: error adding interface: wpa_supplicant couldn't grab this interface.
    Jun 29 08:49:16 raspberrypi NetworkManager[458]: <info> [1624924156.1523] device (wlan0): supplicant interface state: starting -> down
    Jun 29 08:49:16 raspberrypi NetworkManager[458]: <info> [1624924156.1524] device (wlan0): supplicant interface keeps failing, giving up
    Jun 29 08:49:16 raspberrypi dhcpcd[477]: wlan0: carrier acquired
    Jun 29 08:49:16 raspberrypi dhcpcd[477]: wlan0: probing address 172.24.5.206/16
    Jun 29 08:49:20 raspberrypi dhcpcd[477]: wlan0: carrier lost
    Jun 29 08:49:22 raspberrypi dhcpcd[477]: wlan0: carrier acquired
    Jun 29 08:49:23 raspberrypi dhcpcd[477]: wlan0: probing address 172.24.5.206/16
    Jun 29 08:49:23 raspberrypi dhcpcd[477]: wlan0: carrier lost
  9. @m_taka12

    Questioner

    このようなログがたくさん出力されていました。
    wlan0の省電力モードをoffに設定変更しています。
  10. NetworkManagerの自動起動を停止後、もう一度再起動させてシステムのログを見せていただけますでしょうか?
    システムのログなのでたくさん出ると思います。
    時間的に起動時だと思われる部分のみで大丈夫です。

    NetworkManager自動起動停止(たぶんこんなコマンド)
    sudo systemctl stop NetworkManager.service
    sudo systemctl disable NetworkManager.service

    再起動

    cat /ver/log/syslog | grep wlan0
  11. @m_taka12

    Questioner

    このあたりかと思います。

    Jun 30 08:29:35 raspberrypi NetworkManager[453]: <warn> [1625009375.7221] devie (wlan0): re-acquiring supplicant interface (#2).
    Jun 30 08:29:35 raspberrypi dhcpcd[463]: wlan0: carrier lost
    Jun 30 08:29:35 raspberrypi dhcpcd[463]: wlan0: carrier acquired
    Jun 30 08:29:35 raspberrypi dhcpcd[463]: wlan0: probing address 172.24.5.206/16
    Jun 30 08:29:35 raspberrypi wpa_supplicant[452]: Delete '/run/wpa_supplicant/wln0' manually if it is not used anymore
    Jun 30 08:29:35 raspberrypi dhcpcd[463]: wlan0: carrier lost
    Jun 30 08:29:35 raspberrypi wpa_supplicant[452]: nl80211: deinit ifname=wlan0 dsabled_11b_rates=0
    Jun 30 08:29:35 raspberrypi NetworkManager[453]: <error> [1625009375.9907] sup-face[0x142d4f8,wlan0]: error adding interface: wpa_supplicant couldn't grab thiinterface.
    Jun 30 08:29:35 raspberrypi NetworkManager[453]: <info> [1625009375.9909] devie (wlan0): supplicant interface state: starting -> down
    Jun 30 08:29:36 raspberrypi dhcpcd[463]: wlan0: carrier acquired
    Jun 30 08:29:36 raspberrypi dhcpcd[463]: wlan0: probing address 172.24.5.206/16
    Jun 30 08:29:37 raspberrypi dhcpcd[463]: wlan0: carrier lost
    Jun 30 08:29:39 raspberrypi dhcpcd[463]: wlan0: carrier acquired
  12. NetworkManagerとdhcpcdの両方がwlan0を使用しようとしていますね。
    >NetworkManagerを停止することでESSID取得ができた。
    というと、ネットワークに接続できていない状態でしょうか?
    その場合、dhcpcdの方のログで何かしらトラブルが起こっているはずです。
    このログを見ると、まだNetworkManagerが自動的に起動している?
    確認してみてください。

    systemctl is-enabled network-manager
  13. @m_taka12

    Questioner

    調査したところ、Wifiルーターには接続できるのですが、2秒ごとに接続が切断され、何やらルーター側でエラーとなっているようでした。
    エラーコードが非公開だったので、メーカーに問合せ中です。
    色々とご教授いただきありがとうございました。

iwconfigを叩いた際、wlan0のESSIDがoff/anyとなっている。
SSIDの取得もできていない?
ip a を叩いた際のstateもDownとなっており、
sudo ifconfig wlan0 upを叩いても上がらない。

0Like

Comments

  1. @m_taka12

    Questioner

    NetworkManagerを停止することでESSID取得ができるようになった。

Your answer might help someone💌