Jan 02, 2008

NetBSD玄箱でプロバイダ接続 [computer]

pppoe

かわうちさんの所http://www5.atwiki.jp/kuro-bsd/にあるNetBSDのサンプルカーネルではpppoeの機能は組み込まれている。

NetBSDでのpppoeのやり方は NetBSDのページのドキュメント、前川さんのこちらのページなどに十分な情報がある。これらのページを参照すれば特に問題なく接続はできる。

pfとカーネル再構築

サンプルカーネルではipfilterが使用可能な状態になっている。pfを使いたい場合はmodloadでモジュールをロードすれば使える。(1/4 サンプルカーネルではカーネルモジュールは有効になっていないのでmodloadは使えない。また、sandpointではカーネルにLKMオプションをつけて構築するといくつか未定義のシンボルがある旨のエラーが出る。モジュールは使えない可能性も) ただし、ALTQを使いたい場合はカーネルの再構築が必要。

pfをメインで使うつもりなのでカーネルの再構築を行うことにする。 ソースはftp://ftp.jp.netbsd.org/pub/NetBSD/NetBSD-4.0/source/sets/からsyssrc.tgzを持ってきてかわうちさんのNetBSD-4用のパッチ20070923.netbsd-4.diff.bz2を当てたものを使った。

セルフコンパイルする場合は/usr/src以下にソースを展開して

  # cd /usr/src/sys/arch/sandpoint/conf
  # config KUROBOX
  # cd ../compile/KUROBOX
  # make depend; make
で玄箱用のカーネルバイナリイメージ netbsd.binを作ってくれる。 NetBSD 4.0のpfは本家のOpenBSDのpfやFreeBSDのpfより微妙に古いようだが 設定方法についてはOpenBSDやFreeBSDのドキュメントを読めば充分使える。 FreeBSDで使っていた設定がネットワークインターフェースの変更ぐらいで 使えるようなのでありがたい。

full build

結局のところカーネルが4.0RC3から4.0へ変わってしまったのでユーザランドも 入換えようと思った。NetBSDのfull buildは配布のソースコードを展開して ソースディレクトリで

  # make buildworld
  # make installworld
でいいのだが、セルフコンパイルを試したところ数時間たってもlibcのビルドが終わらない。ppc603e, 266MHzというと今のGHz級IA-32機の1/10程度の性能なので致し方ないか。 配布のバイナリを使ってインストールしなおした。

ついでなので特に意味はないがC2DのFreeBSD機上でクロスビルドを試してみた。 ソースコードを適当な所に展開し、展開したディレクトリ上でクロスコンパイル 用のツールを作成する

  % ./build.sh -u -m sandpoint tools
   :
   :
===> Summary of results:
         build.sh command: ./build.sh -u -m sandpoint tools
         build.sh started: Wed Jan  2 20:39:03 JST 2008
         NetBSD version:   4.0
         MACHINE:          sandpoint
         MACHINE_ARCH:     powerpc
         Build platform:   FreeBSD 7.0-PRERELEASE i386
         HOST_SH:          /bin/sh
          :
         DESTDIR path:     /usr/local/src/netbsd/sandpoint
         RELEASEDIR path:  /usr/local/src/netbsd/usr/src/obj/releasedir
   :
リリース形式でユーザランドをビルドしてみる
  % ./build.sh -u -U -m sandpoint release
20分程度で終わった...

Posted at 21:37 in computer

Archives
Powered by
blosxom 2.0
and
modified by
blosxom starter kit