家のWi-Fiの環境をRaspberry Pi 3BとLEDEで構築し直したお話。

経緯

昔、私はApple信者だったので、macbook + iPhone6 + AirMac Time Capsuleで家庭内のネットワークを賄っていたのですが、今やmacbookにはLinuxが入っているし、AirMac Time CapsuleDHCPのためだけにいるような構成になってきたので、そろそろAirMac Time Capsuleさんにも消えてもらおうと思ってちょっと頑張りました。

今までの状況

なぜRaspberry Piなのか

まったく関係ないOpen vSwitch用のルータを作るという試みでOpenWRTに触れたのですが、非常に扱いやすくAirMac Time Capsuleをリプレースするのにちょうどいいと思いました。ですが、わざわざそのために1台ルータを買うのも馬鹿らしかったので、床に落ちていたRaspberry Piくんでできないかと調べてみたところサポートされているということで試してみました。

ですが、後から下のようなメリットが見えてきました。

  • 普通のルータよりも性能がいい
  • SDカードにイメージを焼くので、失敗しても何度でも簡単にやり直せる(シリアルを取ってどうこうしなくてもいい)

手順

1. Raspberry PiにLEDEを入れる。

はじめはOpenWRTを入れようと思ったのですが、動かないので調べて見たところ、フォーラムに同じような原因でOpenWRTが動いていない方がいらっしゃったので、LEDEを入れることにしました。というのも、まだOpenWRT/LEDE周りに弱く違いがわかっていないというのが一番大きかったりするのですが、できることは(Webのコンソールから見た感じ)だいたい同じっぽいのでいいかなということになりました。

How install LEDE/OpenWRT On Raspberry Pi 3 Model B ? - Raspberry Pi Forums

  1. こちらのリンクから、bcm2710-rpi-3-ext4-sdcard.img.gzをダウンロードしてくる。
  2. ダウンロードされたファイルはgzipで圧縮されているので、解凍する
  3. Raspberry Piに挿すmicroSDにそのファイルを書き込む(Linuxならddあたりを使って)
  4. Raspbeery Piを起動させる。
$ wget https://downloads.lede-project.org/releases/17.01.0/targets/brcm2708/bcm2710/lede-17.01.0-r3205-59508e3-brcm2708-bcm2710-rpi-3-ext4-sdcard.img.gz
$ gzip -d lede-17.01.0-r3205-59508e3-brcm2708-bcm2710-rpi-3-ext4-sdcard.img.gz
$ sudo dd if=lede-17.01.0-r3205-59508e3-brcm2708-bcm2710-rpi-3-ext4-sdcard.img of=/dev/[SDカードのデバイスファイル] bs=1M

この段階で、Raspberry Piの有線ポートには192.168.1.1/24が振られているので、そこと自分のパソコンをLANケーブルでつなぎ、適当なIPアドレスを割り当てる。

$ sudo ip addr add 192.168.1.2/24 dev [Ethernetのデバイス名]

ここで、192.168.1.1にpingが打って帰ってくるのを確かめておくといいと思います。

2. LEDEを設定していく

ここは、行った変更点だけざっくりと。

System

System Properties

  • Timezone => Asia/Tokyo

Time Synchronization

  • NTP server candidates => ntp.nict.jp

Interfaces - LAN

Common Configuration

  • IPv4 address => 192.168.0.253
  • IPv4 netmask => 255.255.255.0
  • IPv4 gateway => 192.168.0.254
  • IPv4 broadcast => 192.168.0.255
  • Use custom DNS servers => 8.8.8.8 8.8.4.4
  • IPv6 assignment length => disabled

DHCP Server

  • Ignore interface => yes
  • Router Advertisement-Service => disabled
  • DHCPPv6-Service => disabled
  • NDP-Proxy => disabled

Wireless Network: Master "26d569911aca8c49e7424a45818e091c" (wlan0)

Device Configuration

  • Transmit Power => 10 dBm (10 mW)
  • Country Code => JP - Japan

Interface Configulation

  • ESSID => 26d569911aca8c49e7424a45818e091c
  • Mode => Access Point
  • Hide ESSID => yes
  • Encryption => WPA2-PSK
  • Key => [Wi-Fiのパスワード]
  • MAC-Address Filter => Allow listed only
  • MAC-List => [自分のMACアドレス]

今後の目標

全然メモリも食ってないし、SSIDも複数提供できそうなので、もっとガツガツと設定していきたいと思います。

追記

そろそろネットワークが複雑になってきたので、一回整理しようかなと思ってます。。。