Raspberry Piの設定【有線LAN(イーサネット)・無線LAN(WiFi)設定】
今回は「Raspberry Pi」のネットワーク周辺の設定を行います。標準では有線LANのインターフェースのみの実装ですが、私はUSB WiFiも準備しましたので、有線・無線の両方の設定方法に触れたいと思います。
ネットワークの設定は、/etc/network/interfaces
ファイルにて行います。デフォルトは次のような中身です。
上段は有線LAN(デフォルトはDHCP)、下段に無線LANの設定が記述されています。
有線LANのアドレスをDHCPから固定に変更する
上段の有線LAN部分を次のように変更します。
【/etc/network/interfaces
の変更】
$ sudo vi /etc/network/interfaces
# (変更箇所のみ記載)
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.11.5
netmask 255.255.255.0
gateway 192.168.11.254
ここまで、設定出来たらイーサネットインターフェースの再起動を行い、設定を有効かします。
$ sudo ifdown eth0
$ sudo ifup eth0
続いて、WiFiの設定です。WiFiの設定については、有線の場合と同じくIPアドレス関係の設定を/etc/network/interfaces
で行い、/etc/wpa_supplicant/wpa_supplicant.conf
で無線部分(SSID)の設定を行います。WiFiについては、DHCPで使う前提で進めていきます。
WiFiの設定(前準備:USB-WiFiのハード認識確認)
ハードの認識状況についてはdmesg
コマンドがありますが、今回はUSBに絞って確認出来るlsusb
コマンドを使います。
$ lsusb
今回は、BUFFALO製の「WLI-UC-GNM2」をセットしているのですが、型式まで表示され、認識されていることが確認出来ました。
WiFiの設定(その1:「/etc/network/interfaces」の変更)
下段のWiFiの部分を次のように変更します。
【/etc/network/interfaces
の変更】
$ sudo vi /etc/network/interfaces
# (変更箇所のみ記載)
iface wlan0 inet dhcp
#iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
WiFiの設定(その2:「/etc/wpa_supplicant/wpa_supplicant.conf」の変更)
下段のWiFiの部分を次のように変更します。
【/etc/wpa_supplicant/wpa_supplicant.conf
の変更】
WPA2/WPA-PSK方式で、SSIDを「HWD14_E8088BFDAAAC」、パスワードを「82a4jj8he29jfrd」とするとき、次のように記載します。
$ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
# (変更箇所のみ記載)
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="HWD14_E8088BFDAAAC"
proto=WPA2
key_mgmt=WPA-PSK
psk="02a4jj8he29jfrd"
}
なお、SSIDのパスフレーズが平文のままでは困る場合には、sudo wpa_passphrase {SSID} {PASSPHRASE}
とコマンドで暗号化入力して、平文のコメントアウトされた部分を削除すると良いです。ここでは、詳細を割愛させて頂きます。
また、WiFiがステルス(ANY接続無効)で設定されている場合には、network{}
中にscan_ssid=1
を追記することで対応できます。
WiFiの設定(その3:WiFiインターフェースの再起動と接続確認)
ここまで、設定出来たらWiFiインターフェースの再起動を行います。
$ sudo ifdown wlan0
$ sudo ifup wlan0
接続出来ているかの確認には、Yahoo!にPINGを打ってみる(ping www.yahoo.co.jp
)シンプルな方法もいいですが、ここでは、少しコマンドを使った方法をご紹介します。まずは、ifconfig
を使ってみましょう。アドレスが引けていれば接続出来ていることになります。
$ ifconfig
今回は、WiFiインターフェースに相当するwlan0に「192.168.100.103」というIPアドレスが引けており、WiFiに接続出来ていることが確認出来ます。似たようなコマンドでiwconfig
というものがありますので、こちらも試してみましょう。
$ iwconfig
iwconfig
では送受信電力といったマニアックな情報まで出してくれます。また、netstat -nrt
でルーティングを確認するのも良いと思います。
無線LAN(wlan0)経由で、192.168.100.0のネットワークから全てのアドレス(0.0.0.0)への接続が出来ることを指しています。
このような感じでネットワークの基本的な設定はOKです。
さて、今回はちょっと欲張りをしてホスト名でリモート接続出来るよう設定してみましょう。これが出来ると、ping raspberrypi.local
やssh pi@raspberrypi.local
というように、アドレスを指定しなくともリモート接続出来るようになります。DHCPとの相性が良く、収容するネットワークの変更の度にアドレスを再設定する面倒が無くなります。なお、MacintoshにはBonjourが標準で入っていますが、Windowsには標準ではインストールされていませんので、Bonjour等のインストールが必要です。
ホスト名接続の設定(その1:avahiのインストール)
Bonjour互換のavahiというサービスをインストールします。
$ sudo apt-get update
$ sudo apt-get install avahi-daemon
ホスト名接続の設定(その2:/etc/hostnameの変更)
ホスト名はプロンプトにあるようにデフォルトraspberrypi
となっていますので、重複が無いよう好きなものに変更してください。
ホスト名接続の設定(その3:/etc/hostsの変更)
先の/etc/hostname
と同様に、デフォルトraspberrypi
となっている部分を変更してください。
これで、ホスト名を使ったリモート接続が可能になります。なお、raspberrypi.local
というようにホスト名に「.local」を付ける必要がありますので、ご注意ください。
そんな訳で、今回はネットワークの設定とホスト名に寄るリモート接続を可能にする設定をご紹介しました。次回は言語やタイムゾーンといった基本設定(raspi-config
コマンド)を予定しています。(12/13追記)関連して、外部ネットワークからアクセスできる「Weaved」というサービスを設定するトピックを書きましたので、ここまでも十分長めでしたが、合わせて活用頂ければと思います。