Solaris 10 でマルチホストホームに静的ルーティングを設定する

October 28, 2007

例えば DMZ などに存在する Web サーバのように NIC が2枚以上機能しているホストへの設定を行う。
Solaris では NIC が 2枚以上設定されているとパケット転送が働く。つまり、ルータになってしまう。転送を無効にしてルートを追加する。

IP フォワーディングを無効にする

# routeadm -d ipv4-forwarding -u

もしくは

# svcadm disable ipv4-forwarding

※Solaris 9 以前は touch /etc/notrouter を行う。

経路制御テーブルに静的ルートを追加する

# route -p add -net network-address -gateway gateway-address
-p オプションを付けるとリブート後も保持される。

# route -p add -net 10.0.5.0/24 -gateway 10.0.5.150/24
add net 10.0.5.0: gateway 10.0.5.150

ルーティング・転送の設定確認

$ routeadm
構成 現在の 現在の
オプション 構成 システム状態
---------------------------------------------------------------
IPv4 ルーティング enabled enabled
IPv6 ルーティング disabled disabled
IPv4 転送 disabled disabled
IPv6 転送 disabled disabled
ルーティングサービス “route:default ripng:default”
ルーティングデーモン:
STATE FMRI
disabled svc:/network/routing/legacy-routing:ipv4
disabled svc:/network/routing/legacy-routing:ipv6
disabled svc:/network/routing/ndp:default
disabled svc:/network/routing/rdisc:default
disabled svc:/network/routing/ripng:default
disabled svc:/network/routing/ripng:quagga
online svc:/network/routing/route:default
disabled svc:/network/routing/zebra:quagga
disabled svc:/network/routing/rip:quagga
disabled svc:/network/routing/ospf:quagga
disabled svc:/network/routing/ospf6:quagga
disabled svc:/network/routing/bgp:quagga

経路制御テーブルの確認

$ netstat -rn
Routing Table: IPv4
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ---------- ---------
192.168.1.0 192.168.1.18 U 1 28 pcn0
224.0.0.0 192.168.1.18 U 1 0 pcn0
127.0.0.1 127.0.0.1 UH 4 113 lo0

tilfin freelance software engineer