我が家のNetwork構成
ネットワーク構成
|Provider
|
|グローバルアドレス(www.xxx.yyy.zzz)
+----+----+
|DSLモデム|
+----+----+
|192.168.0.254
|
|rl0:192.168.0.1
+----+----------------------------+
| leon |
+----+----------------------------+
| |rl1:192.168.1.1 |
| | |
| +---+-------+--------+ |
| | |.2 |.3 |.4 |
| | +----+ +-----+ +-------+ |
| | |mail| | www | | proxy | |
| | +----+ +-----+ +-------+ |
+----+----------------------------+
|.6 +---------+
+---| printer |
| +---------+
+------------+--------+
|.11 |.12
+---+---+ +--+---+
| HICKY | | ODIN |
+-------+ +------+
少し変則的な図で恐縮ですが、まずプロバイダにはADSLを使って接続しています。キャリアはaccaですのでPPPoAのルータタイプのモデムを使っています。80番と25番のポートへのパケットは内側のウェブサーバ、メイルサーバへ投げるようにスタティックに設定しています。
FreeBSDにはネットワークインタフェースカードを2枚さしてルータにしています。外側はDSLモデムへ、内側にはスイッチングハブを通してデスクトップパソコン、ノートパソコン、プリンタサーバにつながっています。
上の図で、192.168.1.2-5の4つのサーバは物理的に存在しているわけではなく、FreeBSD内にjail環境で仮想的にサーバ群を稼動させていて、特定のサービスに特化して動かしています。したがって、leonには物理的なネットワークインターフェースとして外側に192.168.0.1、内側に192.168.1.1と仮想的には内側のインターフェースにエイリアスでjail環境に割り当てた192.168.1.2-4と5つのIPが振られています。このFreeBSDではipfwでパケットのフィルタリングをしています。
なお、IPv6トンネル接続実験 (nantoka.com)から2001:218:49a:8200::/56のIPv6アドレスをお貸しいただいています。外側には2001:218:49a:8200::/64を、内側には2001:218:49a:8201::/64を振っています。
bell@leon> ifconfig rl0
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
inet6 fe80::290:99ff:fe4b:c507%rl0 prefixlen 64 scopeid 0x1
inet6 2001:218:49a:8200:290:99ff:fe4b:c507 prefixlen 64
inet6 2001:218:49a:8200:: prefixlen 64 anycast
ether 00:90:99:4b:c5:07
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
bell@leon> ifconfig rl1
rl1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
inet6 fe80::2a0:b0ff:fe2f:889f%rl1 prefixlen 64 scopeid 0x2
inet 192.168.1.2 netmask 0xffffffff broadcast 192.168.1.255
inet 192.168.1.3 netmask 0xffffffff broadcast 192.168.1.255
inet 192.168.1.4 netmask 0xffffffff broadcast 192.168.1.255
inet6 2001:218:49a:8201:2a0:b0ff:fe2f:889f prefixlen 64
inet6 2001:218:49a:8201:: prefixlen 64 anycast
ether 00:a0:b0:2f:88:9f
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
bell@leon>
