Ab.の日記: FreeBSD あれこれ
例えば em2 と tap0 を bridge する時はこういう風に書くのが正しいんですね。
ifconfig_em2="up"
ifconfig_tap0="promisc up"
ifconfig_bridge0="addm em2 addm tap0 up"
ipv4_addrs_bridge0="10.11.12.13/24"
今まではこんな風に書いていて、時々再起動したときにアドレスが振られないときがあったりして、なんでだろうと思っていました。
ifconfig_bridge0="addm em2 addm tap0 up inet 10.11.12.13/24"
2. FreeBSD 9.1
大量の nullfs jail を抱えて pppoe router にもなっている FreeBSD 仮想マシンが時々コケるので、自宅の windows 機への remote desktop を確保するために pppoe router 機能だけ別仮想マシンに分離しました。
ついでなので最近リリースされた FreeBSD 9.1 を入れて pkg なんかも使ってみたりしたんですが、まだ pkg は正式運用じゃないので リポジトリ空っぽなんですね。
少し検索して /usr/local/etc/pkg.conf をこんな感じに設定
packagesite: http://ftp.jaist.ac.jp/pub/FreeBSD-pkgbeta/freebsd:9:x86:64/latest
割と使いやすい感じで良いです。
FreeBSD 9.1 amd64 のインストーラーは今回はデフォルトではパーティション分けずに一本になっていてびっくりでした。
# mount
/dev/da0p2 on / (ufs, local, journaled soft-updates)
devfs on /dev (devfs, local, multilabel)
あ、journaled soft-update も付いてる。
3. 最初の rc.conf 絡みなんですが、今まで inet vpn-addr/24 のように書いていたら ifconfig が /etc/hosts から名前解決をしていてくれたのですが、
ipv4_addrs_ を使うと - がアドレス範囲と認識されてしまう為か使えなくなってしまいました。
host(1) や nslookup(1) が getaddrbyname(3) とか getaddrinfo(3) を使ってくれれば良かったのですが、どうもそういうコマンドは無いようなので仕方なく自作。
rc.conf にこういう風に書けるようにして便利便利。
ipv4_addrs_bridge0="`getaddr vpn-addr`/24"
rc.conf は mount される前に読み込まれるのでライブラリは static link して / partion に置かないといけないのが注意点です。
誰も要る人いないと思うけど何となく github にアカウント作ったので公開。
https://github.com/ab-ten/getaddr
FreeBSD あれこれ More ログイン