Solarisのzoneでのdefault route
今年の1月7日のエントリで、Solarisでつくったzone上でrouteが設定できないと書きました。
Solaris10上のzoneでは、ネットワークに関する情報は、親のzoneと共有する形態になっていて、それがだめならExclusive Zonesってのつくって、親zoneとは別のネットワークインタフェイスを専用で使うみたいなことをしないといけないらしい。
いやぁそれはこまるなぁとおもってzonecfgあたりのmanをしばらく眺めていると、ちゃんと設定できるみたいです。ただしdefault routeだけど。
こんな感じで設定しなおしました。
# zonecfg -z hoge zonecfg:hoge> remove net zonecfg:hoge> add net zonecfg:hoge:net> set physical=e1000g1 zonecfg:hoge:net> set address=10.1.100.1 zonecfg:hoge:net> set defrouter=10.1.200.1 zonecfg:hoge:net> end
親のzone上でデフォルトルートを確認すると、上記zonecfgで設定したルーティング情報がみえる。
# netstat -r Routing Table: IPv4 Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ---------- --------- default XXX.XXX.XXX.XXX UG 1 2449 default 10.1.200.1 UG 1 2172 e1000g1 arpanet 10.1.200.1 UG 1 8924
一行目にあるdefault routeは、e1000g0のインタフェイスから参照されるもの。じゃあということで、zonecfghじゃなくて親zone上でroute addでルーティングを追加してあげると、ネットワーク的によくない状況が発生する。現象としてはe1000g0,e1000g1の両方ともときどき通じなくなったり、遅延がおきたり。
現象確認してすぐなおしちゃったので、実際にどのような現象がおきていたかは検証できていません。