2013年01月20日

OpenWrtのコンパイルについて

去年の年末に、BuffaloのWHR-G301NAを購入して、OpenFlowを使うためにFirmwareを書き換えてみました。
WHR-G301NAでOpenFlow

しかし、部屋のネットワーク環境の問題からFirmwareの設定を変更したくなり、OpenWrtをソースからコンパイルして自分の環境に合わせた自作Firmwareを作ってみることにしました。

以下は調べたOpenWrt関係のメモ


まず、OpenWrtのメインサイトで、いろいろと調べてみました。
OpenWrt

すると対応ハードウェアの一覧のページを見つけました。そこには、いろいろなメーカーの名前と一緒にBuffaloの名もありました。そこでBuffaloの箇所を見ると、WHR-G301Nがありました。
Table of Hardware

次にソースの入手方法と、コンパイル関係の情報を調べてみました。すると、OpenWrt development centerというサイトが見つかり、ここに開発関係の情報がありました。
OpenWrt development center

そこにソースの入手方法や、コンパイルについて詳しい情報がありました。
​Developer and User Documentation

ただ、情報が細かいので、もっと分かりやすくまとめているサイトが無いかと調べてみると、以下にありました。
OpenWrt Development Guid

これでソースのディレクトリ構成などの概要が分かったので、他の日本語サイトなどを参考にして、trunkのソースからのコンパイルしてみました。すると、あっさりとWHR-G301N用のコンパイルが成功しました。
OpenWRT のクロスコンパイル環境構築のまとめ

とりあえず、今日は時間が足りないので、明日以降にWHR-G301N実機での動作確認と、OpenFlowの組み込みをやっていこうと思います。


その他
去年の年末に購入したWHR-G301NAですが、これはWHR-G301N + ソフトのようです。
バッファロー WHR-G301NA とWHR-G301Nは何がちがうんですか? 教えてください。(Yahoo!知恵袋)

2013年01月16日

gitの勉強で参考にしたサイト

去年の4月ごろからソースの管理にgitを使用しています。それまではsubversionでしたが、自宅で3台のPCを切り替えて使っていると、分散タイプの方がいろいろと便利なので、全てgitに切り替えました。

gitの勉強で参考したサイト
Gitを使いこなすための20のコマンド

Pro Git (Book)
(参考 Pro Git (日本語)

A successful Git branching model
(参考 A successful Git branching modelの日本語訳

Gitに潜む光と闇

gitで気に入った点は、コミット後にログが修正できる点です。subversionの時は修正が手間だったので、基本的にコミット後の修正はしませんでした。しかし、gitはコミット後でも修正できるうえ、コミット後にコミットの順番を変えたりすることもできます。これは自宅での個人的なプログラム開発で非常に役立っています。
posted by jun1 at 01:55| Comment(0) | TrackBack(0) | ソフト

2013年01月01日

WHR-G301NAでOpenFlow

OpenFlow実践入門という本を12月の中頃に買いました。読んでいると「2,000円でOpenFlowスイッチをDIY」という項目があり、格安ルータをOpenFlowスイッチにするという面白い内容がありました。改造方法を公開しているサイトをチェックしてみると、簡単にできそうだったので、この正月休みにやろうと休みをまっていました。

休みに突入したので、去年の12月30日にBUFFALOのルータを買ってきました。ただ、サイトに書かれているのとまったく同じ型番のものがなく、結局、上手くいかなくても諦めがつく値段(2400円)で、型番が似ている以下のものを買ってきました。

BUFFALO WHR-G301NA

以下のページを参考にBUFFALOの純正管理画面からファームウェアを書き換えました。どきどきしながらtelnetでアクセスすると、拍子抜けするほどすんなりとアクセスできました。

OpenFlow 1.0 for WHR-G301N 簡易イメージ (手順 v1.2)


とりあえずdmesgを見てみると、問題がないようなのでOpenFlowを試してみます。

root@OpenWrt:/sbin# dmesg
[ 0.000000] Linux version 3.2.5 (root@build) (gcc version 4.5.4 20120105 (prerelease) (Linaro GCC 4.5-2012.01) ) #1 Sun Apr 1 01:20:20 JST 2012
[ 0.000000] MyLoader: sysp=00000000, boardp=00000000, parts=00000000
[ 0.000000] bootconsole [early0] enabled
[ 0.000000] CPU revision is: 00019374 (MIPS 24Kc)
[ 0.000000] SoC: Atheros AR7240 rev 2
[ 0.000000] Clocks: CPU:400.000MHz, DDR:400.000MHz, AHB:200.000MHz, Ref:5.000MHz
...