FreeBSD-9.0Rのネットワーク設定が8.xと違っていて少し手こずったので忘れないように書いておく。ちなみに、先日入れた9.1RC2でも同じ。
NICはIntel PRO/1000なので em0。DHCPは使わない。
IPv4
IPアドレスとデフォルトルータ
/etc/rc.conf: ifconfig_em0="inet 192.168.100.3 netmask 255.255.255.0" defaultrouter="192.168.100.1"
IPv6
RAを受け取る設定。
8.3Rでは ipv6_enable=”YES” と ipv6_network_interfaces=”em0″ と書いたら自動的に設定してくれていた。ifconfigコマンドのみで設定できるようになったのはシンプルでいい。
/etc/rc.conf: ifconfig_em0_ipv6="inet6 accept_rtadv"
エイリアスをつける (長いアドレスはさすがに覚えられない)
/etc/rc.conf: ifconfig_em0_alias0="inet6 2001:240:xxxx:xxxx::3 prefixlen 64"
テンポラリアドレスをつけて、通信時はこのテンポラリアドレスをなるべく使うように指定。
/etc/sysctl.conf: net.inet6.ip6.use_tempaddr=1 net.inet6.ip6.prefer_tempaddr=1
DNS
DHCPを使わないのでresolv.confにDNSサーバのアドレスを書く。
/etc/resolv.conf: nameserver 192.168.100.2 nameserver 192.168.100.1
これで、ifconfig em0の結果はこんな感じになる。
% ifconfig em0 em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=4219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,VLAN_HWTSO> ether 00:19:d1:xx:xx:xx inet 192.168.100.3 netmask 0xffffff00 broadcast 192.168.100.255 inet6 fe80::219:d1ff:fexx:xxxx%em0 prefixlen 64 scopeid 0x1 inet6 2001:240:xxxx:xxxx::3 prefixlen 64 inet6 2001:240:xxxx:xxxx:219:d1ff:fexx:xxxx prefixlen 64 autoconf inet6 2001:240:xxxx:xxxx:6cb1:4cd2:ec24:e946 prefixlen 64 autoconf temporary nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> media: Ethernet autoselect (1000baseT ) status: active