SEIL/x86の新バージョンが出た。
知る人ぞ知るIIJのネットワークルーター、SEILシリーズ。その中でも有名なのは仮想版で激安販売されている「SEIL/x86 Fuji」という製品。今回その後継製品となる「SEIL/x86 Ayame」という製品がリリースされました。
今までのFujiはIIJのオンラインショップの一つであるLaIT(ライト)で販売されていましたが、今回Ayameは2つのEditionに分けて販売され、
- Standard:個人用途にも使えるリーズナブルなもの
- Enterprise:商用システム用途を想定した高性能版
と言う風になっています。違いとしては、Standardはシングルコア動作に制限される点、SR-IOVが使えない点など、制約があり、Enterpriseに関してはこれらの制約がすっかり取っ払われて、より大きなトラフィックにもめげないと言う特性があります。
とは言え、Standard版もVMXNET3のNICで10GbEリンクさせることが可能で、性能面でFujiを上回るのではないかと予想したり。ちなみにStandardが税抜き5,000円、Enterpriseは税抜き250,000円ぐらい・・・だったかな?かなーり値段としては上昇してます。
加えて、Standardはなんとまぁ、Amazonで販売されていると言うね・・・
てなわけで、早速買って試してみることにしました。今回、これまでFujiで対応してたIPv6コアルーター部分をそのままAyameに置き換えようと思います。
注文した。
そして注文した翌々日ぐらいにブツが来ました。

メールベースでキーを貰えたFujiとは異なり、まさかの物納でした。この紙には、インストールに必要となるプロダクトキーが記録されています。
OVFテンプレートをゲットする
OVFテンプレートはSEIL/x86のサイトからダウンロードする形をとります。
KVM用のものとVMware用のもの、2種類が提供されているようです。私はこれをダウンロード・解凍した上で、VMware用イメージのOVFテンプレートをインポートしました。
1vCPU/1GB RAM/120MB VHD/1NIC構成のVMが誕生します。必要に応じてNICを追加してPowerOnすることでセットアップを開始することが出来ます。
インタフェースはge0,ge1,ge2・・・という感じのインタフェースになりました(Fujiだとlan0,lan1,lan2・・・)
初期セットアップの流れ
セットアップの流れとしては以下の通りです。
ログインID:admin/初期パスワードは無し->これを用いてまずはログイン。
プロダクトキーの入力を行います。プロダクトキーは送付されてきたパンフレットの中に記載されており、ハイフンは自動で入力されます。ライセンスキーが登録されると一度リブートを行います。
続いて起動すると、adminユーザのパスワード変更を求められます。
パスワード変更が完了すると、
<hostname>#
と言う形式でプロンプトが出ます。これで設定準備が完了となります。
コマンドラインの特性
コマンドラインの基本的な流れとしては以下の通りです。
- パラメタの設定は「set文」を使用する
- パラメータの取り消しは「delete文」を使用する
- 設定パラメータはKey-Value形式で保存される
具体的には以下のような感じです。
■set文
値は以下のような形式で保存される
interface.ge0.ipv4.address: 192.168.100.25/24
設定するには、set文を入力して、定義を行う。
set interface ge0 ipv4 address 192.168.100.25/24
■delete文
値を削除したい場合は、setの代わりにdelete文を使用する
delete interface ge0 ipv4 address
要は、正式なパラメータはドットをデリミタとする設定項目と、コロンで挟んだ設定値の対応漬けで決まります。set文/delete文はデリミタを空白文字で区切る方式で記載をする形になります。
これを繰り返して設定を実装していく感じになっています。
Commitで確定
Fujiでは設定した時点でその設定が即時反映されていましたが、AyameではCommitコマンドを実行した段階で設定が確定します。
設定の保存は以下のコマンドで行います。
save-to flashrom
showコマンドも少し変わってる
showコマンドを実行する際ですが、通常は「 show <パラメータ> 」と言う形で記述することが多いんですが、Ayameは「 show status <パラメータ> 」という書き方をします。また、そのパラメータはKeyを指定する形になるので、パラメータ項目はドット区切り形式で指定する形になります。
show statusコマンドで後に続くパラメータ値を以下の通り列挙します。
KAEDE# show status
admission-control interface.pppac[0-7] ospf6.interface.bridge[0-31]
arp interface.pppoe* ospf6.interface.detail
bgp.ipv4.route interface.pppoe[0-7] ospf6.interface.ge[0-1]
bgp.ipv4.summary interface.tunnel* ospf6.interface.ipsec[0-511]
bgp.neighbor interface.tunnel[0-511] ospf6.interface.tunnel[0-511]
bgp.neighbor.password interface.vlan* ospf6.interface.vlan[0-31]
dhcp interface.vlan[0-31] ospf6.neighbor
dhcp.external ipsec ospf6.neighbor.detail
dhcp6 ipsec.anonymous ospf6.protocol
dns-forwarder ipsec.security-policy ospf6.route
filter.hostname led ospf6.route.detail
filter.ipv4 lldp pppac
filter.ipv4.keepalive mac-address-table radius-server
filter.ipv6 macfilter radius-server.statistics
filter.summary nat.ipv4 resolver
filter.table nat.ipv6 rip.protocol
floatlink nat.summary rip.route
floatlink.interface ndp ripng.protocol
floatlink.interface.ipsec[0-511] netflow ripng.route
floatlink.interface.l2tp[0-255] ntp route.ipv4
floatlink.interface.tunnel[0-511] option route.ipv4.keepalive
floatlink.summary ospf.database route.ipv6
ike ospf.database.detail route.ipv6.keepalive
interface ospf.interface router-advertisement
interface.bridge* ospf.interface.detail sensor
interface.bridge[0-31] ospf.neighbor snmp
interface.ge* ospf.neighbor.detail sshd
interface.ge[0-1] ospf.route storage
interface.ipsec* ospf.route.detail syslog
interface.ipsec[0-511] ospf6.database telnetd
interface.l2tp* ospf6.database.detail upnp
interface.l2tp[0-255] ospf6.interface vrrp
interface.pppac*
面白いのは、ワイルドカードが指定できることではないかなーと思います。ワイルドカードを指定することによって全てのインタフェースや設定項目の表示をさせることが可能になります。
フィルタリング構文
フィルタリング設定ももちろん「set文/delete文」で設定をしていったりするわけですが、KeyValue形式で設定されるが故に少し面倒です。Fujiでは1行で定義できたフィルタリングルールですが、例として以下の通りになります。
set filter ipv6 800 direction in
set filter ipv6 800 interface ge1
set filter ipv6 800 action block
set filter ipv6 800 logging on
set filter ipv6 800 state enable
↑個別にパラメータを設定する必要がある。
順序を間違うと設定を拒否されることがあるので注意。
direction->interface->action->その他って感じ
複数行で指定する形になります。また、設定項目間には依存関係があり、依存関係が満たされない場合、ケースによっては設定が受け付けられないケースもあります。
フィルタリングログの内容をFujiのそれと見比べましたが、こちらは細かい差異はあるものの、特に大きな違いまではなさそうです・・
【Fujiのログ】
Feb 9 14:37:28 kaede
filter.info
lan1 @0:0[OUTGOING]
p
fe80::250:56ff:fea7:af64 -> fe80::2c1:64ff:fed1:4962
PR ipv6-icmp type 136 code 0 len 64 40/24 OUT
【Ayameのログ】
Feb 9 19:56:41 192.168.100.25
system[-]: ipf.info
ge1 @2:9[ipv6.600-00000520]
p
2403:bd80:c102:221:9d4d:89a6:e4bb:c963,55868 -> 2600:1408:5c00:6::17c8:9347,80
PR tcp len 61 40/21 OUT
多分、ぱっと見た感じだと理解が難しいので
Fujiでゴリゴリやってた人は以下のようなツールで一度部分的な変換などを行ってみた方がわかりやすいんじゃないかと思います。
どういうKeyが存在しているかというのを、以下のサイトのドキュメントを参照しながら、理解を含めていくというのも重要かなと思います。
意外とSEILシリーズは色んな所でコンフィグ例が載っていたりするような代物で、知る人ぞ知るなのに広くこっそり出回ってるルーターなので、まずは触れてみて、おもしろそーだなーと感じられるものがあったらなぁと感じる次第です。
取り敢えず私の環境では無事リプレイスできたわけですが、コンフィグ変換ツールはかなり役に立ちました。
現状の負荷状況
AYAME# show system
SEIL/x86 Ayame Ver. 2.01 (Release)
SEIL/x86 Ayame BIOS Phoenix Technologies LTD Ver. 6.00 (20181212)
CPU : Intel(R) Xeon(R) CPU E5-2420 0 @ 1.90GHz
DistID :
Host : "AYAME"
Bootdev : dk1
Date : 2020/02/09 21:47:47 (JST)
Uptime : 07:55 (since 2020/02/09 13:52:42)
Users : 1 user
Loadavg : 0.08 (1min) 0.08 (5min) 0.03 (15min)
CPU0stat : User 21.9%, Nice 0.0%, System 11.9%, Interrupt 0.3%, Idle 65.9%
Memory : Total 1023.56MB, Used 496.12MB (48.47%), Avail 527.44MB (51.53%)
Comments are closed