Raspberry Pi & Python 開発ブログ ☆彡

Raspberry PiとPythonの基本的な使い方をわかりやすく解説。初心者、入門者必見!!

Raspberry Piで無線LANやインターネットに繋がらない時の対処方法

wifi trouble

ブログ管理者のP.Hです!

Raspberry Piを使い始めた時に、一番やっかいなのは無線LAN(Wi-Fi)にうまく繋がらない、インターネットに接続できないというトラブルが発生した時だと思います。ネットワークの設定で、間違えそうな部分や問題発生時の対処法をまとめました。問題解決に繋がれば幸いです。

それでは、ひとつずつ問題がないか確認しながら見ていきましょう。

ハードウェアの構成

たいていの場合、下記のようにRaspbery Piは無線アクセスポイントや無線ルーターに接続して、そこからインターネットに繋がっていると思います(省略している機器もあります)。これをイメージしながら、原因を調べていきます。

  • スマホ ⇔ ① ⇔ 無線AP ⇔ ルーター ⇔ ② ⇔ インターネット
  • スマホ ⇔ ① ⇔ 無線ルーター ⇔ ② ⇔ インターネット

※以降の説明は無線APの場合で説明します。無線ルーターを使っているかたは、無線APを無線ルーターに置き換えて読んでください。

スマホで無線APに接続

まず①の部分の接続について確認していきます。下記のようにRaspberry Piの部分をスマホに変えてみましょう。

  • スマホ ⇔ ① ⇔ 無線AP(無線ルーター)

スマホから無線APで設定したSSID、パスワードを使用して接続してみます。これで接続ができれば、Raspbery Piの設定の問題です。逆に接続ができなければ、無線AP側の問題です。無線APが原因の場合は、無線APの取説等を見て設定に間違いがないか確認してください。

Raberry Piの設定を確認する

上記でスマホから無線APに接続できるのであれば、Raspbery Piの設定が問題の可能性が高いです。下記の内容を確認してください。

SSIDとパスワードの設定

SSIDとパスワードの設定の仕方については、下記記事をご確認ください。

www.raspberrypirulo.net

SSIDやパスワードの入力ミスで接続できないという場合が、かなり多いと思います。目視で絶対に間違いないか確認してください。よくある間違いは以下の3つくらいでしょうか。

  • 0(ゼロ)とo(ローマ字:オー) や 1(イチ)とl(ローマ字:エル)とi(ローマ字:アイ)等、見間違えによるミス。
  • キーボードのCAPS LOCKがオンになっており、小文字のはずが大文字になっている。
  • キーボード設定が英語キーボード(日本語以外)になっており、ぜんぜん違う文字を入力している。英語キーボードと日本語キーボードは配置が違うため、「&」と打ったつもりが「^」が入力される等、違う文字が入力されていることがある。

入力している文字が間違っていないか確認

vimやnano等のエディタを開いたり、ターミナル上で、SSIDとパスワードを打ち込んでみてください。打ち込んだ文字に間違いがないか確認してください。

IPアドレスが取得できているか確認

接続が出来ていれば、IPアドレスが取得できます。下記コマンドでIPアドレスの状態を確認してください。

$ ifconfig

以下のように表示されて、wlan0の項目にIPアドレスが表示されていることを確認してください。 ※下記のIPアドレスは例となります。ご自身の環境で変わります。

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.123  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::xxxx:xxxx:xxxx:xxxx  prefixlen 64  scopeid 0x20<link>
        ether xx:xx:xx:xx:xx:xx  txqueuelen 1000  (Ethernet)
        RX packets 695627  bytes 56214916 (53.6 MiB)
        RX errors 0  dropped 79077  overruns 0  frame 0

ここでIPアドレスが表示されていなかったり、169.254.xxx.xxxというアドレスの場合は接続できていません。再度、SSIDとパスワードに間違いがないか確認してください。

接続の確認

最後にpingコマンドで通信ができるか確認します。下記コマンドで応答があることを確認します。

$ ping 無線APのIPアドレス(例:192.168.0.1)

下記のように応答があれば、通信できています。

64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=4.97 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=4.97 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=64 time=2.09 ms

下記のような場合は、NGです。通信できていません。

From 192.168.0.10 icmp_seq=1 Destination Host Unreachable
From 192.168.0.10 icmp_seq=2 Destination Host Unreachable
From 192.168.0.10 icmp_seq=3 Destination Host Unreachable

インターネットに繋がらない

上記で①の部分が問題なく接続できているのに、インターネットに繋がらない場合があります。上記のハードウェアの構成の②部分の接続について確認してきます。

スマホで確認

先ほども行ったように、まずスマホで無線APに接続し、スマホでインターネット接続ができることが大前提です。出来なければ、無線APやルーター問題ですので、設定に間違いがないか確認してください。

DNSとデフォルトゲートウェイの設定

DHCP設定であれば、ルーターが自動的に設定を行ってくれるので、問題なくインターネットに繋がるはずです。IPアドレスを固定IP設定している場合は、DNSサーバーとデフォルトゲートウェイの設定が間違ってないか確認してください。

DNSサーバーの設定

DNSサーバーとは、ドメイン名(www.google.com等)をIPアドレスに変換してくれるサーバーのことです。この機能を持ったサーバーのIPアドレスを指定します。たいていは、ルーターのIPアドレスを指定すれば動作します。

デフォルトゲートウェイの設定

デフォルトゲートウェイとは、外部のネットワーク(インターネット)に接続する際の通信の出入り口のことです。たいていはルーターのIPアドレスを指定すれば動作します。

主にRaspbery Pi側の設定について、説明しましたが無事に問題解決しましたでしょうか。無線APやルーターの設定はネットワークは知識がないと難しいですが、何とか乗り越えて頂ければと思います。