<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ref="http://purl.org/rss/1.0/modules/reference/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/">
	<channel rdf:about="http://xmms.jp/blog/rss.rdf">
		<title>PC Junkie Rev3.0</title>
		<link>http://xmms.jp/blog/index.php</link>
		<description><![CDATA[<a href=static.php?page=about_copyright>about copyright</a>]]></description>
		<items>
			<rdf:Seq>
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry220325-204409" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry200817-003557" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry200812-194208" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry181226-010651" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry170309-210000" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry161126-232435" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry160919-174552" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry140505-235851" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry140204-003021" />
				<rdf:li resource="http://xmms.jp/blog/index.php?entry=entry130924-025005" />
			</rdf:Seq>
		</items>
	</channel>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry220325-204409">
		<title>【HW/NW】SAXA SS3000で遊ぶ</title>
		<link>http://xmms.jp/blog/index.php?entry=entry220325-204409</link>
		<description><![CDATA[<a href=images/SS3k-1.jpg class=lb><img src=images/SS3k-1.jpg width=500px></a><br><br /><br />　 随分前にとある場所で「鉄(マテリアル)として廃棄する」というSAXA SS3000が大量にあり、試しに一つもらって遊んでみたところ、なかなか面白かったので鉄くずにするには惜しいと思い、更にいくつか買ってみました。(粗鉄として)　ハードウェア的にも超今更感ありますが、用途によってはまあまあ使えるので情報をまとめてみます。<br />　なにげにかなり更新をサボっていたので久々の更新になりました。WFHが始まってから文字を打つことが多くて、Blogを書く気力がわかなかったです…。<br /><br /><h2>ハードウェア構成について</h2><br /> CPUにはAtom C2338 が搭載され、そこにSoCから3本のGbEとPCIEから2本のNICが生えているファンレス構成です。MBは「CASwell, Inc. COB-H500」とありますが、CASwellのページには該当するような箱は見つかりませんでした。この手の箱は大体ホワイトボックスを作ってるメーカーから似たようなものが見つかるのですが、今回は該当しなかったので、箱の削り出しとカスタマイズをしているのかもしれません。強いて言うなら<a href="https://www.caso.co.jp/product/caf-1020.html" >CAF-1020</a>がどことなく似ていますが、構成は全く違います。箱の質感も結構お金かかってる感じがします。<br /><br />　ACは12Vで、もとは大きめの4Aのものを使うようですが、消費電力的には2-3Aくらい流せれば十分だと思います。ACアダプタは抜けどめを気にしなければ外形5.5mmで内径3.3mmの汎用的なものが使えます。内径が2.2mmではないので注意が必要です。<br /><br />　Linux上の認識は以下のようになります。<br /><blockquote><br />owner@SS3K-VPN:~$ lscpu<br />Architecture:        x86_64<br />CPU op-mode(s):      32-bit, 64-bit<br />Byte Order:          Little Endian<br />Address sizes:       36 bits physical, 48 bits virtual<br />CPU(s):              2<br />On-line CPU(s) list: 0,1<br />Thread(s) per core:  1<br />Core(s) per socket:  2<br />Socket(s):           1<br />NUMA node(s):        1<br />Vendor ID:           GenuineIntel<br />CPU family:          6<br />Model:               77<br />Model name:          Intel(R) Atom(TM) CPU  C2338  @ 1.74GHz<br />Stepping:            8<br />CPU MHz:             1750.071<br />BogoMIPS:            3500.14<br />Virtualization:      VT-x<br />L1d cache:           24K<br />L1i cache:           32K<br />L2 cache:            1024K<br />NUMA node0 CPU(s):   0,1<br />Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms dtherm arat<br /><br />owner@SS3K-VPN:~$ lspci<br />00:00.0 Host bridge: Intel Corporation Atom processor C2000 SoC Transaction Router (rev 02)<br />00:01.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root Port 1 (rev 02)<br />00:02.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root Port 2 (rev 02)<br />00:03.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root Port 3 (rev 02)<br />00:04.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root Port 4 (rev 02)<br />00:0e.0 Host bridge: Intel Corporation Atom processor C2000 RAS (rev 02)<br />00:0f.0 IOMMU: Intel Corporation Atom processor C2000 RCEC (rev 02)<br />00:13.0 System peripheral: Intel Corporation Atom processor C2000 SMBus 2.0 (rev 02)<br />00:14.0 Ethernet controller: Intel Corporation Ethernet Connection I354 (rev 03)<br />00:14.1 Ethernet controller: Intel Corporation Ethernet Connection I354 (rev 03)<br />00:14.2 Ethernet controller: Intel Corporation Ethernet Connection I354 (rev 03)<br />00:16.0 USB controller: Intel Corporation Atom processor C2000 USB Enhanced Host Controller (rev 02)<br />00:18.0 SATA controller: Intel Corporation Atom processor C2000 AHCI SATA3 Controller (rev 02)<br />00:1f.0 ISA bridge: Intel Corporation Atom processor C2000 PCU (rev 02)<br />00:1f.3 SMBus: Intel Corporation Atom processor C2000 PCU SMBus (rev 02)<br />01:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03)<br />02:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03)<br /></blockquote><br /><br /> 腑分けするとこんな感じです。<br /><br /><a href=images/IMG_20220323_211250_505.jpg ><img src=images/IMG_20220323_211250_505.jpg width=500px></a><br><br /><br /><a href=images/IMG_20220323_210137_192.jpg ><img src=images/IMG_20220323_210137_192.jpg width=500px></a><br><br /><br /><h2>シリアルピンについて</h2><br />　シリアルについては変態^H^H先駆者より情報をいただきました。このピンがシリアルピンです。白ポチより横にシリアルの1-5ピンに相当するので(3.3Vではない)通常のシリアルを適当なジャンプワイヤーなどでつなぐとOS上のttyS0にアクセスできます。<br /><br /><a href=images/IMG_20220323_232829_208.jpg class=lb><img src=images/IMG_20220323_232829_208.jpg width=500px></a><br><br /><br />　ただし、uEFIへのアクセスはファームウェアにパスワードがハードコートされているため、通常はアクセスできません。<br /><br /><a href=images/SS3k-uefi.png class=lb><img src=images/SS3k-uefi.png width=500px></a><br><br /><br />　先駆者がEEPROMをダンプしてパスワード解析をしていましたが、Boot方式をBIOS/MBRからEFIにできること、無効になってるTurboを有効化できる(300MHzあがる)こと、PXEなどを有効化できること以外は特にいじるところはない気がしました。まあ、TBも(排熱などの)理由があって無効化されているはずですし、有効化しても上がり幅が300MHzだと違いがほぼないので、uEFIに入る理由はほぼないです。。<br /><br />　あとはSATAはコネクタを実装すれば使えるそうです。どれだけアンペアが引けるのか不明ですが、シリアルピンの並びにあるPROにちょうど5Vが来ているのでSSDの電源ソースにいい感じに使えそうです。SATAの横の未実装スルーホールは15Vと3Vだったので微妙にそのまま使えそうにはありませんでした。USBのピンヘッダもあるので、そっちから5Vを引けるかもしれません(こちらでは電圧を確認できませんでしたが…)<br /><br /><a href=images/IMG_20220323_232934_679.jpg class=lb><img src=images/IMG_20220323_232934_679.jpg width=500px></a><br><br /><br />　それ以外にも色々ピンが生えているのですが、自分の知識では何がどれにつながっているのかまでは解析できませんでした。実はパスワードバイパスピンがあるのではないかといろいろテスタを当てながらショートさせてみたりしたのですが、結局謎でした。<br /><br /><h2>各シリーズについて</h2><br />　SS3kには無印/II/Proとそれぞれありますが、ハード的にはほぼ違いはなく、ProのみMiniPCIEより11nのWLANが生えているので、そのアンテナのためのSMA端子があります。また、搭載されているSSDにも何種類かあり、8GBモデルと16GBモデル、及びTranscend製MSM610シリーズとInnodisk製3ME2シリーズがあるようです。SSDの中身については完全に消去されてしまっていたため、OSの違いについては不明です。SSDについてはInnodiskのほうがデータシート上の耐久値は高いのですが、ddコマンドなどで連続書き込みすると途中でバッファ切れで失速するような動きをするので、Transcendのほうが動きは素直でした。まあ、どちらにしても期待するようなIOPSや帯域は出ませんが。ただ、後述のCPUエラッタがあるのでリカバリ観点からUSBからの起動を推奨します。<br /><br /><h2>NIC周りについて</h2><br />　かなりクソ^H^H混乱を招く構成になっています。ハードウェア的には、SoCから2本Marvellの88E6320に伸びており、それがそれぞれLAN2、LAN3となっています。88E6320をSoCのPHYを取り出すために使っていると予測しますが、その間が常に接続済みとなり、ケーブルを刺していなくてもLAN2とLAN3は常にUP扱いになります。そのため、ケーブルが抜けたことを検知できません。そして残りの1本が88E6176と接続されており、88E6176からハードウェアスイッチとしてLAN4-7があります。<br /><br /><a href=images/IMG_20220323_210324_859.jpg class=lb><img src=images/IMG_20220323_210324_859.jpg width=500px></a><br><br /><br />　LAN4-7はNECのIXシリーズのように分割して扱うことはできず、Linuxであればenp0s20f1の下にぶら下がります。イメージとしてはBuffaloの小さいGbスイッチに繋がれている感じです。小さい構成だと時としてこの構成は使いやすいですが、VLANタグなどを一切使えないアクセスポートとして使う以上のことはできません。幸い、VLANを喋れる独立したポートが他にあるのでなんとかなりますが…。<br /><br />　WANとLAN1についてはSoCとは別にPCIEにI211が生えている構成になります。注意しないといけないのはこのポートはバイパスポートになっており、SS3kの電源が切れるとリレーにより内部で結線されます。Softetherのtap/ブリッジのVPN専用ポートとして使うときなど、WANとLAN1を同じLANにつなぐようなことになるとループが発生するので注意してください。(1敗)　また、そのような構成のため、pfsenseなどを入れるときにはWANとLAN1を使うと思わぬ接続になりかねないので、バイパスされないWANとLAN2以降を使うことをおすすめします。LAN1/LAN2をOS上でブリッジさせ、そこにtcpdump/tsharkなどをかませてこっそりパケットキャプチャする、LAN1とLAN2でブリッジした上でNICごとに違うパケットフィルタルールを仕掛けて透過FWを作る、など、アイディア次第では色々できそうです。<br /><br />　上記の構成をさらに混乱させる一番の問題は、OS上の認識順とポートの並び順がメチャクチャなことです。もともと他で使われることを想定していないので、勝手に蓋を開けられた上に想定外のOSをぶち込んでる外野にとやかく言われるのはいい迷惑だと認識した上でも、それにしてもどうしてこうなったのかという思いが強いです。特にLAN2-7はOSから見て常にLink Up扱いのためそれに気がつくまで無駄にあれやこれやとやってしまいました。<br /><br />　初期値を画像にするとこうなります。見事に何一つ順番に並んでいません。どうしてこうなった…どうしてもこの<strike>クソ</strike>構成が気になる人はudevなどをいじって合わせてください。<br /><br /><a href=images/SS3k-ether.jpg class=lb><img src=images/SS3k-ether.jpg width=500px></a><br><br /><br /><h2>Mini PCIEについて</h2><br />　ProであればWPEA-121N/WというAtheros AR9382を搭載した11nのチップが乗っていますが、それ以外は空いています。シリアルの存在に気が付かなかったときは、mPCIEをPCIE x1に変換するアダプタと何故か転がっていたPCIE x1のMatrox G200を組み合わせて画面出力をしてアレコレしていました。<br /><br /><a href=images/IMG_20220323_215119_424.jpg class=lb><img src=images/IMG_20220323_215119_424.jpg width=500px></a>　<a href=images/IMG_20220323_215157_428.jpg class=lb><img src=images/IMG_20220323_215157_428.jpg width=500px></a><br><br /><br /><blockquote class="twitter-tweet"><p lang="ja" dir="ltr">ちょくちょくMiniPCIE からVGAを引きたいと思うことがあるので変換アダプタを買ってみたけど、そうなるものとわかっていてもなかなかアレ。そしてこいつ、BIOSに入るのにnvramにSVパスワード持ってやがるのか… <a href="https://t.co/rrfher5w01">pic.twitter.com/rrfher5w01</a></p>— MX (@xmms) <a href="https://twitter.com/xmms/status/1297930621243674626?ref_src=twsrc%5Etfw">August 24, 2020</a></blockquote> <script async src="js/widgets.js" charset="utf-8"></script> <br /><br />　ハーフmPCIEな拡張カードなら搭載できるので、なにかに使えそうではあります。<br /><br /><h3>WLANについて</h3><br />　WLANもせめて11acに対応できれば面白いとmPCIEな11acに対応した物を探したのですが、そもそも11ac(VHT)で5GHz帯にSSIDを吹こうとするとIntel系のチップはno-IR (no initiate radiation) フラグがファームウェアに書き込まれているため電波を発信することができず、Broadcomの場合はhost-apdに対応したx86向けドライバがプロプライエタリとして配布されているためSTAにしかなれず、Realtekの場合もno-IRが入っているようです。<br /><br />　唯一の希望がAtheros/QualcommのQCA95xx, QCA98xx, QCA6300系チップを使ったものらしく、海外のフォーラムによるとMikrotik の<a href="https://mikrotik.com/product/R11e-5HacD" >R11e-5HacD</a>がOpenWRTなどで使えるらしいです。まあ、ハーフサイズではないのでSS3kには入りませんが…。QCA系でも書き込まれているファームによってはW52帯でしかAPになれないものもあるようなので、組み合わせを探すのがなかなかに大変そうです。また、海外にはno-IRフラグを無視したドライバをビルドして使う方法もあるようで、その場合はIntel系チップでもAPになれるらしいです。<br /><br />　個人的にはopen/dd dwrtでお手軽に作れればいいなくらいにしか思ってなかったのであまり詳しくは追ってませんが、どうしても11acのAPをx86で作りたい人は追ってみてもいいのではないでしょうか。<br /><br /><blockquote class="twitter-tweet"><p lang="und" dir="ltr"><a href="https://t.co/rH9eOygjO3">pic.twitter.com/rH9eOygjO3</a></p>— えぬかね📡 (@n_kane) <a href="https://twitter.com/n_kane/status/1505035032049909762?ref_src=twsrc%5Etfw">March 19, 2022</a></blockquote> <script async src="js/widgets.js" charset="utf-8"></script><br /><br /><br /><h2>性能について</h2><br />　2コアの1.7GHzプロセッサなので、そこまで高くはありませんが、LANの検証環境でOpn/pf senseでNATしてPPPoE接続した限り、1Gbpsくらいはさばくことができました。ただ、ntop-ngを動かすとFlowが少なくても全体の70%くらいを持っていかれてしまったので、あまり凝ったことはできません。それをしたいなら(Atom C3558+6GB RAMを搭載した)Sophos XG135あたりが性能的に必要になってくると思います。<br /><br />　DebianとSoftetherを組み合わせ、電源入れるとおうちのLANをL2伸長する君をつくったときは、AES-NIが有効な状態でTLS_AES_256_GCM_SHA384アルゴリズムでレイテンシの低い環境なら大体400Mbpsくらいまでは出たので、ちょっとしたところで使う分には十分かなと思います。ファンレスなのでおうちのDS-Lite終端ルーターや、オークションでも安く出ていることがあるので複数買って雑にばらまくような使い方にはいいかと思います。<br /><br /><h2>CPUのエラッタについて</h2><br />　Atom　C2000シリーズと言うと誰しも頭に浮かぶAVR54バグですが、SS3kもエラッタ持ちのCPUリビジョンが使われています。というか、エラッタ持ちのCPUは2013年から製造され、解消リビジョンは2017年からの供給になるので、一部の長期供給メーカー以外には出回ってないと思われます。その間にC3000シリーズも出てるので、多くの場合は2017年の段階でこちらにシフトしているのではないかと思います。また、調べた限りリビジョンを調べるにはCPUIDが同じため実際にヒートシンクを外して刻印を見る以外の方法がないようです。<br /><br />　実際に問題が出るかというと、この時期まで生き残っている筐体についてはかなり淘汰されたあとなような気がします。実際に来た筐体に関してはサンプル数は数十ですがほとんど問題がなく、1台だけ起動するとLEDがアンバーになりシリアルコンソールに何も出力されない(しかしOSは起動している)という物がありましたが、それ以外は特に問題がありませんでした。しかし、実際に問題が起きている筐体もあるという報告もあるので、なんとも言えません。<br /><br />　いつ死ぬかはわからないので、死んだら他の筐体に入れ替えて継続できるように、いま動かしているものについてはUSBメモリで起動するようにしています。遠隔地においてあるので、死んだらケーブルとUSBメモリを差し替えて使ってくれ、と現地にコールドスタンバイをおいて運用しています。<br /><br /><br /><h2>まとめ</h2><br />　信頼性がない状態からスタートなので壊れたらすぐに交換できるような予備機が必要ですが、ネットワーク系のおもちゃとして遊ぶにはいい箱だと思います。それ以外の用途だと、ストレージの搭載が限られるので、使い所が難しい気がします。NICはたくさんあるのでNFSなどでNASなどに逃がせればいいですが、単体で使う場合はせめてUSB3.0くらいは欲しくなります。mPCIEからUSB3を引き出せればまだ可能性はありそうですが…。あとはメモリを少し多めに搭載してk8sのクラスタなどを作ってもいいかもしれません。CPUがCPUなので、KVMを動かすのは厳しいと思います。<br />　全く無いようで少しだけあるハードの拡張性とその制限を考えながら、何かを作るためのおもちゃとしては面白いので、安価に転がっていたら手を出してみるのはありかな、と思いました。以上。]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry200817-003557">
		<title>【Network】pfsenseでDS-Lite/transix 固定IP1を使う</title>
		<link>http://xmms.jp/blog/index.php?entry=entry200817-003557</link>
		<description><![CDATA[　<a href="index.php?entry=【Network】InterlinkのZOOT-NATIVE-IPv4固定IP1個をDebianから使う" >前回</a>の記事でpfsenseではDS-Liteが使えないと言いましたが、誤りでした。コメント内のアドバイスにより無事に接続ができたのでメモとして残します。通りすがりのどなたか、ありがとうございました。自分の理解のなさを改めて思いしりました。<br />　ただ、<br />・dhcp6cで受け取るDNSがシステムに登録されない<br />・Interface IDを指定できない(一度Preifxを確認してから決め打ちでVIPを作らないといけない)<br />　の2点がまだ解決できていないので、完璧ではないのですが…。<br /><br />　環境:pfsenseCE 2.4.5-RELEASE-p1<br />　インストール自体は終わりWebUIに接続でき、WANアドレスにv6が割り振られている段階からの説明とします。ある程度pfSenseを扱った人を対象としているので一般的なお作法的な部分は省いています。<br /><br /><h2>DNSの設定</h2><br />　DHCPv6からDNSをもらっても何故かシステムに登録されないので、System→General SetupのDNS Serversに以下のホストを登録しておきます。<br /><br /><blockquote>2404:1a8:7f01:b::3<br />2404:1a8:7f01:a::3</blockquote><br /><br /><a href=images/ipv6-pf-dns.png class=lb><img src=images/ipv6-pf-dns.png width=500px></a><br><br /><br />　dhcp6cコマンドを打つと帰ってくることは確認しているので、これについては設定次第でどうにかなる気がするのですが、今の所未解決なので決め打ちです。v4トンネル確立後なら通常の8.8.8.8なども使えるのでそちらでもいいのですが、外部DNSだとupdate.transix.jpが引けないので網内のDNSを使うのがいいと思います。<br />　ローカルコンソールに落ちて dhcp6c -i &lt;WAN NIC&gt;としてDNSアドレスが変わってないことを確認してから設定したほうがいいかもしれません。<br /><br /><h2>DS-Liteの接続をする場合</h2><br /> DS-Liteで接続する場合は例のIP固定が不要なのでかんたんでした。Interfaces→AssignmentsからGIFを選択します。<br /><br /><a href=images/pf-dslite1.png class=lb><img src=images/pf-dslite1.png width=500px></a><br><br /><br />　そして、以下のように入力します。例によってgw.transix.jpというドメイン名は指定できないので、 2404:8e00::feed:100もしくは 2404:8e00::feed:101を入れます。<br />　以前できないと思っていたのは、 GIF tunnel local addressというのが親になるNICのIPv6アドレスを入力するのだと思っていたからでしたが、これはトンネル内で使うIPを指定するところでした。<br /><br />　ただ、結局カプセル化されてしまうので何でもいいようです。DS-Liteの場合はトンネルのローカルに192.0.0.2を、トンネル先のアドレスに192.0.0.1を指定することになっているので、一応仕様どおりに指定します。<br /><br /><a href=images/pf-dslite2.png class=lb><img src=images/pf-dslite2.png width=500px></a><br><br /><br />　あとはInterface Assignmentsに戻り、作成したトンネルインターフェースをOPT1として割り当てます。割当後、Interfacesから作成したOPT1を選択して有効化、及び名前の変更(任意)とMTU/MSSをクランピングします。<br />　<br /><a href=images/pf-dslite3.png class=lb><img src=images/pf-dslite3.png width=500px></a><br><br /><br />　割り当てたら、System→Routingより、Gateway Monitoringの「Disable Gateway Monitoring」にチェックを入れます。(arpingが届かないので、常にGWがDownと判定されてGWが使えなくなってしまうのを防ぐため)<br /><br /><a href=images/pf-dslite4.png class=lb><img src=images/pf-dslite4.png width=500px></a><br><br /><br />　ローカルコンソールに落ちてping 1.1.1.1など、適当なところに疎通確認をして外との通信ができることを確認したら完了です。<br /><br /><br /><h2>Zoot Native固定IP1などのTransix固定IPを使う場合</h2><br />　DS-Liteとほぼ同じなのですが、VIPの割当をするという一部だけ異なります。DUIDなどの調整によりPrefixをもとにホスト部をfeedにできるのではないかとそこそこ調べたのですが、解決できませんでした。IPv6は自分にはまだ早すぎた…。まあv6Prefixについてはそうそう変わらないはずなので、決め打ちで指定してもあまり問題にはならないとは思うのですが、納得できないです…。<br /><br />　まず、WANにIPv6が割り振られていることを確認したら、そのv6のPrefixを確認します。そのPrefixをコピーしたら、Firewall→Virtual IPsに移動し、IP Aliasとして&lt;Prefix&gt;::feedというVIPを作成します。<br /><br /><a href=images/pf-ZootnativeIP1.png class=lb><img src=images/pf-ZootnativeIP1.png width=500px></a><br><br /><br />　そして、DS-Liteと同じようにInterfaces→AssignmentsからGIFを選択します。VIPを作成したあとであれば、Parent InterfaceにVIPを指定できるので、こちらを指定します。GIF tunnel local addressにはもらったアドレスを、 GIF tunnel remote addressは適当に埋めます。何でもいいようなので、割り振られた固定IPを指定しています。(謝辞:通りすがりのpfSenseユーザーさま)<br /><br /><a href=images/pf-ZootnativeIP2.png class=lb><img src=images/pf-ZootnativeIP2.png width=500px></a><br><br /><br />　最後に、コンソールに落ちて以下のコマンドを実行します。<br /><br /><blockquote> curl &quot;http://update.transix.jp/request?username=&lt;もらったユーザーID&gt;&amp;password=&lt;もらったパスワード&gt;&quot; --interface &lt;作成したVIP&gt;</blockquote><br /><br />　これでトンネルはとりあえずつながるはずなので、あとは、DS-Liteの設定と同じように、<br />・System→RoutingのGateway Monitoringの「Disable Gateway Monitoring」にチェックを入れる<br />・InterfacesからMTU/MSSを調整<br />　をすることによって接続できるようになるはずです。ちなみにDS-Liteと固定IPトンネルは共存できるので、1つのpfsenseで用途によって外に出るGWの選択(PBR)ができます。Rulesの各ルールの中のAdvancedから選べます。便利ですね。速度についてはDebianで接続してもpfで接続しても変化はありませんでした。<br /><br /><h2>まとめ</h2><br />　今の環境は、ネットワークについては最終的にでかくて複雑なpfsenseのVMで制御しているので、既存環境に設定追加で済むのは新しい管理対象を作らなくて済むのでありがたいです。方法を教えてくれた方に感謝しかありません。ありがとうございました。<br /><br />　おわり]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry200812-194208">
		<title>【Network】InterlinkのZOOT NATIVE IPv4固定IP1個をDebianから使う</title>
		<link>http://xmms.jp/blog/index.php?entry=entry200812-194208</link>
		<description><![CDATA[　現在この環境にはNuroや今まで通りのPPPoE接続やZOOT NATIVEによるDS-Lite接続など、複数のネットワークを利用しているのですが、固定IPのためのPPPoEセッションがまともに使えるような速度でなくなってきたため、<a href="https://www.interlink.or.jp/service/zootnative/koteiip.html" >ZOOT NATIVE IPv4固定IP1個</a>というサービスが開始されたのでこちらのサービスに変更しようと思っていました。<br />　しかし、いまいち使っているトンネルなどの仕様がよくわからず、動作対象外のOSで接続するにはどうすればいいのかがはっきりしなかったため二の足を踏んでいたのですが、人柱になろうと覚悟を決めて契約してみました。<br /><br /><h2>tr;dr</h2><br />・トンネルとしてはipip6トンネルを利用している<br />・oepnwrt、<strike>pfsense、opensense</strike>といったメジャーどころは現状トンネル形式がipip6に対応していないっぽい<br />→pfは行けました<br />・vyarttaは多分イケそうだけど検証してない<br />・トンネルを張る前にv6網内のWebサーバにcurlなどでクエリを飛ばす必要がある<br />・ip token set ::feed dev ens192など、Interface IDを指定する必要がある<br />・Debianだと/etc/network/interfacesの中で完結できないため、いくつかスクリプトをかませる必要があった<br />・IPv6の再配布やルーティングは今回は考慮していない<br /><a href="#spoiler" >設定方法まとめまで飛ぶ</a><br /><br /><h2>何故保証外のOSを使いたかったのか</h2><br />　そもそも何故おとなしく動作検証済みの機器を使わなかったかというと、OpenWRTやpfsense/OpenSenseなど、仮想環境で動くOSを利用したかったのです。<br />　仮想環境で動くものについては、CPUやNICなどの物理HWで殴ればそれに応じてネットワークを速くできること、物理的なネットワーク機器より安価にある程度の性能は達成できること、ハードウェアに縛られないので様々な入れ替えが効くといったメリットが大きく、昔は色々物理ネットワーク機器が動いていましたが、今はすべて仮想環境に集約してしまいました。<br /><br />　そのため、今は動いているネットワーク機器というとスイッチとAPくらいしかありません。頑張って物理を減らしたのにその逆行をしたくなかったのです。<br /><br /><h2>契約してみた</h2><br />　契約するとこのような情報がきます。<br /><br /><a href=images/zootnativeip1.png class=lb><img src=images/zootnativeip1.png width=500px></a><br><br />　さて、この情報だけだとなかなかどうしたらいいかわかりません。なんもわからんので色々調べてみます。<br /><br /><h2>そもそもどうすればつながるのかを調べる</h2><br />　<a href="https://jpn.nec.com/univerge/ix/Support/ipv6/transix-static/index.html#dhcpv6pd" >Univerge IXシリーズの設定例</a>を見ると、どうやら4-over-6というトンネル形式を使っているようなので、これをサポートしているか色々調べてみました。トンネルにIPv4を設定するのにデフォゲアドレスを設定せずにデバイスを指定するのがなんとも違和感がありましたが、そういうものみたいです。DS-Liteの場合は192.0.0.2がB4(ルーターのトンネル内v4IP)で192.0.0.1がAFTER(トンネル先のIP)アドレスとして振られるので何となく分かるのですが、これでいいのかちょっと不安でした。<br /><br />　<a href="https://www.mfeed.ad.jp/transix/staticip/" >transixのページ</a>を見てみると、こちらにはIPIPトンネルを利用しているという記述があるので、これらのキーワードで色々調べてみます。<br /><h3>pfsenseの対応</h3><br />　<strike>pfsenseにはgreやgifトンネルを張る機能があるので僅かな可能性ながら行けるかと思いましたが、どうやらできないようです。DS-Liteを使おうとしたときも同じだったのでうっすらわかっていましたが。。いつか対応してくれると嬉しいのですが。</strike><br />　→pfsenseについては接続できたので<a href="index.php?entry=%E3%80%90Network%E3%80%91pfsense%E3%81%A7DS-Lite/transix-%E5%9B%BA%E5%AE%9AIP1%E3%82%92%E4%BD%BF%E3%81%86" >訂正</a>します。<br /><h3>OpenWrtの対応</h3><br />　OpenWrtはDS-Liteのトンネルを張るのに一番かんたんなOSでしたが、それ以外にも色々対応しているので行けるだろうと思っていました。しかし、<a href="https://openwrt.org/docs/guide-user/network/ipv6_ipv4_transitioning" >対応するプロトコル</a>には4-over-6はありませんでした。 6to4(IPv6-in-IPv4Tunnel)はあるのですが、欲しいのは逆なんだよなあ…。。IPIPトンネルもあるのですが、これはv4アドレス同士のトンネルを張るためのプロトコルで、v6アドレスを設定することはできませんでした。<br />　調べてみると<a href="https://thenybble.de/projects/ipip6.html" >Debianでのチュートリアル</a>があったのでip -6 tunで設定できるかと思いましたが、どうやら入っているのはiproute2ではなくiproute1(もしくはBusybox的な何か?)が入っているようで、ip -6 tun addネームスペースは実装されていませんでした。Linux自体は対応しているので、需要が増えてくれば対応してくれる気もしますが、現状どうやってもトンネルは作れませんでした。<br /><h3>Vyattaの対応</h3><br />　<a href="https://wiki.vyos.net/wiki/IP_tunneling" >対応しているトンネル方式一覧</a>にはあるので、多分問題なく行ける気がします。しかし、コントリビューター以外がダウンロードできるのは<a href="https://downloads.vyos.io/?dir=rolling/current/amd64" >dailyのバッチビルド</a>のOSのみで、個人的な経験ですがdd-wrtやpfsenseなどでdailyビルドについてはあまりいい思い出がないので導入をためらってしまいました。<br /><br />　どれも微妙な状況だったので、どうしようかなあと思いましたが、<a href="https://thenybble.de/projects/ipip6.html" >Debianでのチュートリアル</a>があるので、一旦素のDebianでまず接続ができるかどうかを試してみることにしました。iptablesはよく忘れるので、できればWebUI持ってるOSが良かったのですが。CentOS?なんで家でまで社畜しないといけないんですか…。<br /><br /><h2>Debianで接続を試してみる</h2><br />　チュートリアルにあるように、まずは割り振られたIPをそのまま使って接続を試してみます。<br /><br /><blockquote>ip l add link ens224 name vlan1000 type vlan id 1000<br />ip -6 tun add sit1 mode ipip6 local &lt;自動でもらったIPv6&gt; remote 2404:8e00::feed:140  dev vlan1000<br />ip link set dev sit1 up<br />ip a add dev sit1 &lt;割り振られたIPv4&gt;<br />ip route add default dev sit1</blockquote><br />　さて、これでping 1.1.1.1などを試してみますが、案の定通信できません。<br /><br /><h3>いろいろ調べてみる</h3><br />　調べてみると、先駆者の方がいたので色々参考にしました。<br /><a href="https://y2lab.org/blog/inet/now-available-fixed-ipv4-service-in-interlink-8229/" >https://y2web.net/blog/inet/now-available-fixed-ipv4-service-in-interlink-8229/</a><br />　こちらの方が調べたように、特定のURLに対してクエリを飛ばす必要があるようです。試しにcurlで突っついてみます。ここでやっとユーザーとパスワードの出番が来ます。<br /><br /><blockquote> curl &quot;http://update.transix.jp/request?username=&lt;もらったユーザーID&gt;&amp;password=&lt;もらったパスワード&gt;&quot;</blockquote><br />　しかし、RAだけだとDNSまでもらえないので、update.transix.jpが引けませんでした。DS-Lite で接続しているOpenWrtでは引けたので、そちらでDNSを引いて直接IPにして実行しました。IPは変わる可能性があるので直接指定はおすすめしませんが、まずは接続を確立したいので一旦直接指定で進めます。<br /><br /><blockquote> curl &quot;http://[2404:8e00::feed:400]request?username=&lt;もらったユーザーID&gt;&amp;password=&lt;もらったパスワード&gt;&quot;<br />→OK</blockquote><br />　OKが帰ってきたので行けるだろうと思いましたが、まだ駄目でした。上記ブログにあるように、どうやらアドレスを::feedにしないといけないようです。インターフェースIDってそういうことか…なんでそういう事するの…<br /><br /><blockquote> ip -6 add add &lt;割り振られたPrefix&gt;::feed/64 dev vlan1000<br />ip -6  add  del &lt;RAでもらったIPv6&gt; dev vlan1000<br />curl &quot;http://[2404:8e00::feed:400]request?username=&lt;もらったユーザーID&gt;&amp;password=&lt;もらったパスワード&gt;&quot;<br />→OK</blockquote><br />　この状態でping 1.1.1.1などを実行すると、ようやく応答が帰ってきました。やったぜ。<br /><br /><h3>再起動後にも自動接続をするようにしたい</h3><br />　接続は確立できたので、今回手でやった部分をうまくOSの仕組みに組み込んでいきます。　まずはDNSが引けないところとIPv6を手打ち指定しているところがイケてないので、これらをどうにかします。シェルスクリプトで組んでしまえばなんとでもなりますが、できればそれを避けてOSの標準機構で処理させていきたいと思うので更にいろいろ調べます。<br /><br />　DNSをもらうためにはDHCPを受ける必要がありますが、inet6 dhcpを指定するとSLAACではなくステートフルDHCPv6で受けようとしているのか、ifupのときに永遠に何かを待ち続けてしまうので、<a href="https://wiki.debian.org/IPv6PrefixDelegation" >公式マニュアル</a>を参考にSLAACを受けるために以下の設定が必要でした。<br /><br /><blockquote>#---/etc/network/interfaces---<br />auto ens224.1000<br />  iface ens224.1000 inet6 auto<br />  dhcp 1<br />  accept_ra 1</blockquote><br />　この設定でifup時に/etc/resolv.conに必要な情報が更新されるようになったので多分合ってる気がするのですが、正直あっているのかいまいち自信がありません…。しかし、これだけではアドレスがfeedにならないので、疎通時にホスト部を指定するためにはどうすればいいかと調べてみると、ip token set ::feed dev &lt;IPv6を受けるインターフェース名&gt;と指定すればいけるようでした。<br /><br />　ただ、これを標準のオプションで指定する方法はないようなので、pre-upで指定するしかありませんでした。<br /><br /><blockquote>#---/etc/network/interfaces---<br />auto ens224.1000<br /> iface ens224.1000 inet6 auto<br /> dhcp 1<br /> accept_ra 1<br /> pre-up /sbin/ip token set ::feed dev ens224.1000</blockquote><br />　とりあえずこの設定でIPv6周りの設定は再起動後も要件を満たすようになりました。ちなみに受け取ったDNSは以下でした。<br /><br /><blockquote>#---/etc/resolv.conf---<br />search flets-east.jp. iptvf.jp.<br />nameserver 2404:1a8:7f01:b::3<br />nameserver 2404:1a8:7f01:a::3</blockquote><br /><br />　次にトンネルの部分ですが、これが問題でした。Debian 10に入っているifupではインターフェース種類にinet6 tunnelを指定できなかったため、ifup2パッケージを入れ以下の設定をしましたがだめでした。<br /><br /><blockquote>auto sit0<br />iface sit0 inet6 tunnel<br /> mode ipip6<br /> dev ens224.1000<br /> local &lt;割り振られたPrefix&gt;::feed<br /> remote 2404:8e00::feed:140<br /> address &lt;割り振られたIPv4&gt;<br /> post-up /sbin/ip route add default dev sit0<br /> post-down /sbin/ip li del sit0 </blockquote><br />　トンネルはできるのですが、元になるインターフェース(dev ens224.1000の部分)がうまく入らないため、sit0@NONEというインターフェースが出来上がり、またlocalのIPも指定したものが入りませんでした。<br /><br />　そもそもPrefixが変わってもip tokenで対応できるようにしたのに、localを直接指定するのがイケてないですね…。いろいろ調べたのですが結局解決できなかったなめ、ifup2を消してifupを入れ直し、以下のスクリプトで対応することにしてしまいました。<br /><br /><blockquote># --- mkv6tun.sh ---<br />#!/bin/bash<br />PATH=$PATH:/usr/sbin/<br />DEV=&quot;$1&quot;<br />TUN=&quot;$2&quot;<br />REMOTE=&quot;2404:8e00::feed:140&quot;<br />IPADDR=&quot;&lt;もらったIPv4&gt;&quot;<br />LOCAL=`ip -6 a s dev $DEV|sed -nr &quot;s/^\s+inet6 ([^(fe80)][0-9a-f:]*)\/.*/\1/p&quot;`<br />USER=&quot;&lt;もらったユーザーID&gt;&quot;<br />PASS=&quot;&lt;もらったパスワード&gt;&quot;<br /><br />ip -6 tun add $TUN mode ipip6 local $LOCAL remote $REMOTE dev $DEV<br />ip l se up $TUN<br />ip l se mtu 1460 dev $TUN<br />ip a ad dev $TUN $IPADDR<br />ip r add default dev $TUN<br /><br /> while :; do<br />                 ping -c1 -w1000 update.transix.jp<br />                 if [ $? -ne 0 ] ; then<br />                                   sleep 1<br />                 else<br />                                  logger update url: `/usr/bin/curl -s &quot;http://update.transix.jp/request?username=${USER}&amp;password=${PASS}&quot;`<br />                                  break<br />                 fi<br /> done&amp;</blockquote><br /><br />　このスクリプトは引数に &quot;元になるインターフェース&quot; &quot;作りたいトンネル名&quot;を指定するとよしなにやってくれます。curlのところは実際に通信が通るようになるまでちょと時間がかかるので、それをバックグラウンドでやるための処理です。それをしないとsystemdがいつまでもその処理を待ってしまうのでそれの対応です。<br /><br />　まあ、割り振られるPrefixが変わることはそうそうないので、一度実行すればしばらくは不要な気もしますが、念の為実行するようにしました。思いつきで5分くらいで作ったスクリプトなので雑ですが、とりあえず動いているので大丈夫そうです。これをinterfacesのpost-upに組み込みます。<br /><br /><blockquote>#---/etc/network/interfaces---<br />auto ens224.1000<br /> iface ens224.1000 inet6 auto<br /> dhcp 1<br /> accept_ra 1<br /> pre-up /sbin/ip token set ::feed dev ens224.1000<br /> post-up /opt/script/mkv6tun.sh ens224.1000 sit0</blockquote><br />　再起動後、curl checkip.amazonaws.comなどで指定したIPが返答されることを確認したら、無事に自動起動の設定が完了です。ここにくるまでに2日かかってしまいましたが。<br /><br /><h2>iptablesを書く</h2><br />　そのままではルーターにならないので、NATをするためのiptabesを書きます。/etc/sysctl.confにnet.ipv4.ip_forward=1を追記した後、sysctl -pで反映させる必要があります。iptablesについては一般教養だと思うのであまり深く書きませんが、参考設定としてiptables-saveの出力をおいておきます。ens192というのが内部のLANインターフェースという想定で、内部からの接続はガバガバに受け付けます。<br /><br /><blockquote>#---/etc/iptables.up.rules---<br />*nat<br />:PREROUTING ACCEPT [889:57084]<br />:INPUT ACCEPT [60:10005]<br />:POSTROUTING ACCEPT [0:0]<br />:OUTPUT ACCEPT [0:0]<br />-A POSTROUTING -j MASQUERADE<br />COMMIT<br />*mangle<br />:PREROUTING ACCEPT [0:0]<br />:INPUT ACCEPT [0:0]<br />:FORWARD ACCEPT [0:0]<br />:OUTPUT ACCEPT [0:0]<br />:POSTROUTING ACCEPT [0:0]<br />-A POSTROUTING -o sit0 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu<br />COMMIT<br />*filter<br />:INPUT DROP [32:1744]<br />:FORWARD ACCEPT [1643:1853819]<br />:OUTPUT ACCEPT [360:64590]<br />-A INPUT -i lo -j ACCEPT<br />-A INPUT -m state --state ESTABLISHED -j ACCEPT<br />-A INPUT -i ens192 -j ACCEPT<br />-A INPUT -p icmp -j ACCEPT<br />-A FORWARD -i ens192 -j ACCEPT<br />COMMIT</blockquote><br />　-A POSTROUTING -o sit0 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtuが重要で、これをしないとMTU不整合で見えないページが出てきたりします。iptables &lt; /etc/iptables.up.rulesで設定を反映させます。<br /><br />　v6の方もガバガバなので多少締めます。 2404:8e00::feed(Transixのトンネル先)からの接続はガバガバに受け付けます。必要最低限に絞る作業に疲れました。<br /><br /><blockquote>#---/etc/ip6tables.up.rules---<br />*filter<br />:INPUT DROP [0:0]<br />:FORWARD DROP [0:0]<br />:OUTPUT ACCEPT [1570:205385]<br />-A INPUT -i lo -j ACCEPT<br />-A INPUT -m state --state ESTABLISHED -j ACCEPT<br />-A INPUT -s fe80::/10 -d fe80::/10 -p udp -m state --state NEW -m udp --sport 547 --dport 546 -j ACCEPT<br />-A INPUT -s 2404:8e00::feed:140/128 -j ACCEPT<br />-A INPUT -p icmp6 -j ACCEPT<br />COMMIT</blockquote><br />　-A INPUT -s fe80::/10 -d fe80::/10 -p udp -m state --state NEW -m udp --sport 547 --dport 546 -j ACCEPTが重要で、これを指定しないとDHCPv6を受け付けられません。ハマりました。こちらもip6tables &lt;/etc/ip6tables.up.rules で反映させます。<br /><br />　これらの設定をifup/ifdown時に反映させるために、/etc/network/if-pre-up.d/iptablesというスクリプトを作成します。+xで実行権限を付けないと反映されないので注意です。あとシバン(#!/bin/bash)も忘れず指定してください。<br /><br /><blockquote>#---/etc/network/if-pre-up.d/iptables---<br />#!/bin/bash<br /> /sbin/iptables-restore &lt; /etc/iptables.up.rules<br /> /sbin/ip6tables-restore &lt; /etc/ip6tables.up.rules</blockquote><br />　これで無事に何度再起動してもルーターとして自動起動してくるようになります。長かった。<br /><div id=spoiler></div><br /><h2>作業の要約</h2><br />　長くなってしまったのでまとめます<br /><h3>ipip6トンネルを作成するためのスクリプト作成</h3><br />/opt/script/mkv6tun.shなどとして作成します。chmod +xで実行権限を与えるのを忘れずに<br /><br /><blockquote>#!/bin/bash<br />PATH=$PATH:/usr/sbin/<br />DEV=&quot;$1&quot;<br />TUN=&quot;$2&quot;<br />REMOTE=&quot;2404:8e00::feed:140&quot;<br />IPADDR=&quot;&lt;もらったIPv4&gt;&quot;<br />LOCAL=`ip -6 a s dev $DEV|sed -nr &quot;s/^\s+inet6 ([^(fe80)][0-9a-f:]*)\/.*/\1/p&quot;`<br />USER=&quot;&lt;もらったユーザーID&gt;&quot;<br />PASS=&quot;&lt;もらったパスワード&gt;&quot;<br /><br />ip -6 tun add $TUN mode ipip6 local $LOCAL remote $REMOTE dev $DEV<br />ip l se up $TUN<br />ip l se mtu 1460 dev $TUN<br />ip a ad dev $TUN $IPADDR<br />ip r add default dev $TUN<br /><br /> while :; do<br />                 ping -c1 -w1000 update.transix.jp<br />                 if [ $? -ne 0 ] ; then<br />                                   sleep 1<br />                 else<br />                                  logger update url: `/usr/bin/curl -s &quot;http://update.transix.jp/request?username=${USER}&amp;password=${PASS}&quot;`<br />                                  break<br />                 fi<br /> done&amp;</blockquote><br /><br /><h3>/etc/network/interfacesの追記</h3><br />　今回はens224のVLAN1000がWANになるNICですが、よしなに変えてください。post-upで上のスクリプトを指定します。<br /><br /><blockquote>auto ens224.1000<br /> iface ens224.1000 inet6 auto<br /> dhcp 1<br /> accept_ra 1<br /> pre-up /sbin/ip token set ::feed dev ens224.1000<br /> post-up /opt/script/mkv6tun.sh ens224.1000 sit0<br /> post-down /sbin/ip li del sit0</blockquote><br /><br /><h3>iptables周りの設定</h3><br />　NAT/パケットフォワーディングの設定を書きます。昔ながらのiptables-save形式ですが、他にも方法があればそちらでもいいと思います。ens192がLANインターフェースという想定です。<br /> /etc/iptables.up.rules<br /><br /><blockquote><br />*nat<br />:PREROUTING ACCEPT [889:57084]<br />:INPUT ACCEPT [60:10005]<br />:POSTROUTING ACCEPT [0:0]<br />:OUTPUT ACCEPT [0:0]<br />-A POSTROUTING -j MASQUERADE<br />COMMIT<br />*mangle<br />:PREROUTING ACCEPT [0:0]<br />:INPUT ACCEPT [0:0]<br />:FORWARD ACCEPT [0:0]<br />:OUTPUT ACCEPT [0:0]<br />:POSTROUTING ACCEPT [0:0]<br />-A POSTROUTING -o sit0 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu<br />COMMIT<br />*filter<br />:INPUT DROP [32:1744]<br />:FORWARD ACCEPT [1643:1853819]<br />:OUTPUT ACCEPT [360:64590]<br />-A INPUT -i lo -j ACCEPT<br />-A INPUT -m state --state ESTABLISHED -j ACCEPT<br />-A INPUT -i ens192 -j ACCEPT<br />-A INPUT -p icmp -j ACCEPT<br />-A FORWARD -i ens192 -j ACCEPT<br />COMMIT</blockquote><br /><br /> /etc/ip6tables.up.rules<br /><br /><blockquote>*filter<br />:INPUT DROP [0:0]<br />:FORWARD DROP [0:0]<br />:OUTPUT ACCEPT [1570:205385]<br />-A INPUT -i lo -j ACCEPT<br />-A INPUT -m state --state ESTABLISHED -j ACCEPT<br />-A INPUT -s fe80::/10 -d fe80::/10 -p udp -m state --state NEW -m udp --sport 547 --dport 546 -j ACCEPT<br />-A INPUT -s 2404:8e00::feed:140/128 -j ACCEPT<br />-A INPUT -p icmp6 -j ACCEPT<br />COMMIT</blockquote><br /><br />/etc/network/if-pre-up.d/にiptablesというスクリプトを作成します。+xで実行権限を付けないと反映されないので注意です。あとシバン(#!/bin/bash)も忘れず指定してください。<br /><br />/etc/network/if-pre-up.d/iptables<br /><br /><blockquote>#!/bin/bash<br /> /sbin/iptables-restore &lt; /etc/iptables.up.rules<br /> /sbin/ip6tables-restore &lt; /etc/ip6tables.up.rules</blockquote><br /><br /><h2>測定結果</h2><br />　速度の測定結果は以下です。<br /><a href="https://beta.speedtest.net/result/9878034837" >https://beta.speedtest.net/result/9878034837</a><br /><br /><a href=images/zootnative-speed.png.jpg class=lb><img src=images/zootnative-speed.png.jpg width=500px></a><br><br />　PPPoEは下り30Mbps程度しか出ないことも多々あったのでだいぶ良くなったと思います。まあPPPoEも最初は数百Mbps出ていたので、こちらもトンネル先が詰まるまでの時間の問題かもしれませんが…。<br /><br />　測定中の負荷は、Xeon 2695v2の上で動くVM(2vCPU/2GB/vmxnet3)ですが、atopで見ている限り1コアあたり20%程度irqに持っていかれる程度で、1Gbps環境では大した負荷ではないようです。まあiptablesにルールも大したこと書いてないので、これが増えてきたらどうなるかわかりませんが、最近の高クロックなCPUなら全く問題ないと思います。組み込み向けのCel　N3000などでも物理で動かす限りは1Gbps程度なら問題ないと思います。<br /><br /><h2>まとめ</h2><br />　現状ではお手軽に、とは言えないものの、仮想環境(Linux)でもZoot Native 固定IP1を使うことは可能だとわかりました。<a href="https://www.mfeed.ad.jp/transix/staticip/" >transix IPv4接続（固定IP）</a>形式を利用しているのであればほかでも同様だと思います。10G クロスの契約をしてもこの方法は使えそうですね。<br /><br />　ただ、苦労をしたくないのであれば動作検証済みのネットワーク機器を入れるのがいいかと思います。実際途中で心が折れて中古のIX2106あたりを買おうかと思いました。あと少しで動きそうだけどなにかが足りない、という状況は、解決できないけど諦めもつかないという一番泥沼状態になりやすいですね。後半の動機は意地でした。<br /><br />　<a href="https://shorewall.org/Introduction.html" >Shorewall</a>などの検証もしてから切り替えようかと思ってるので実運用はまだできていませんが、いずれ切り替えていきたいと思います。固定IP1を契約した状態であっても(サポート的にはどちらか一方という回答をもらったものの)DS-Lite は利用できるので、併用して使っていくのはありだと思いました。<br /><br />おわり]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry181226-010651">
		<title>【HW】新しめのFortigateに使われてるACを自作する</title>
		<link>http://xmms.jp/blog/index.php?entry=entry181226-010651</link>
		<description><![CDATA[　かなり更新をサボっていたので久々の更新です｡<a href="/confluence/" >Confluence</a>もメモ書きとして契約してしまっているのでこのブログをどうしようか悩んでいるのでいるのですが、しばらくは生かしておこうかと思います。さて、ちょっと前に秋葉原で捨て値で売っていたFortigate　40Cをいくつか買ってみたのですが､ACが付いてこなかったためつくってみました｡<br /><br /><a href=images/IMG_20181226_001626_R.jpg class=lb><img src=images/IMG_20181226_001626_R.jpg width=500px></a><br><br /><br />　まず､このコネクタの名称の知識がなく調べる手がかりがなかったので､Googleの画像検索やら各レセプタの形状や名称一覧などを大量に調べました｡その結果､どうやらMolex 5557の4.2ミリピッチというコネクタがそれっぽいようでした｡<br /><br /><br />　コネクタやコンタクトピンについては､千石通商などに売っているようなのですが､SonicwallのAP(TZ-100)にも同型のコネクタが使われていて､そのACで基本的な動作確認が出来てしまったので｢急ぎでもないし、より安価なモノタロウで何か買うついでにいつか買おう｣と放置していました｡(ちなみに買った時点ではぎりぎりライセンスが生きていたのでOSのアップグレードが出来ました｡)　そして先日､諸々を買う機会があったのでついでに興味本位で買ってみました｡<br /><br /><a href=images/IMG_20181221_030807_R.jpg class=lb><img src=images/IMG_20181221_030807_R.jpg width=500px></a><br><br /><br />今回買ったコネクタとコンタクトピンは以下の二つです｡<br />Molex 5557コネクタ　5557-02R-210<br /><a href="https://www.monotaro.com/p/0856/1585/" >https://www.monotaro.com/p/0856/1585/</a><br />コンタクトピン　5556T3L<br /><a href="https://www.monotaro.com/p/7593/9272/" >https://www.monotaro.com/p/7593/9272/</a><br /><br />コネクタについてはより安いこっちでもよかった気がします｡<br /><a href="https://www.monotaro.com/p/0856/1472/" >https://www.monotaro.com/p/0856/1472/</a><br /><br />　とりあえずコネクタだけ形状が合うか確認しましたが､これであっているようでした｡<br /><br /><a href=images/IMG_20181221_004010_R.jpg class=lb><img src=images/IMG_20181221_004010_R.jpg width=500px></a><br><br /><br />　次に､起動できるACの極性を確認しましたが､爪がある方が+でその下がｰになっているようです｡<br /><br /><a href=images/IMG_20181221_004515_R.jpg class=lb><img src=images/IMG_20181221_004515_R.jpg width=500px></a><br><br /><br />　極性が分かったのでピンをかしめていこうとしたのですが､専用の圧着機がないとつらいです｡最終的にニッパーでかしめる技術を習得しましたが､何回かピンからケーブルがすっぽ抜けてブチ切れそうになったので､今回はやりませんでしたがハンダで軽くとめておくのが確実な気がします｡(圧着とは…)<br /><br />　絶縁のために(ビニールテープが見つからなかったので)養生テープで根本を軽く巻いたのですが､これが失敗でした｡ただでさえコネクタの奥までピンを押し込むのが大変なのですが､このテープのせいで余計やりづらくなりました｡電子工作になれている人やもっと几帳面な人であればこんなことをしないと思いますが､動けばいいだろ位な雑な気持ちでやった結果､無駄な苦労をしました｡<br /><br /><a href=images/IMG_20181221_024120_R.jpg class=lb><img src=images/IMG_20181221_024120_R.jpg width=250px></a><br><br /><br />　なんとかピンを奥まで押し込んでピンがロックされたことを確認したので､ちゃんとコネクタ内部のピン同士が接触していること､逆接になって爆発しないことを祈りながらACに繋いでみました｡<br /><br /><a href=images/IMG_20181221_030157_R.jpg class=lb><img src=images/IMG_20181221_030157_R.jpg width=500px></a><br><br /><br />　すると､電源の容量不足やピンの接触が甘いといったこともなく､爆発せずに無事起動してきました｡コネクタからピンのすっぽ抜け防止に紫外線硬化樹脂などで後ろを固めるのがよりよいと思いましたが､必要な物を買うと割と高くなるうえに買っても使うことは多くなさそうなので今回は見送りました｡<br /><br />　作った感想ですが､コンタクトピンの圧着器を持っていないのであればおすすめしません｡その辺の工具で済ませようとすると器用さというかコツが必要です｡ラジオペンチやニッパーで代用は可能ですが､慣れるまでピンを4本無駄にしました｡また､AC自体はオークションなどで1000円前後で売っているので､必要であればこっちを買うべきです｡<br /><br />　ただ､自分のようにジャンクでAC無しのFGをいくつか拾って､しかもACをいくつか欲しいけどACが本体より高いし12VのACは大量に余っているので自作したい､という貧乏な考えがあるのであれば作るというのも一つの手ではあります｡<br />　しかし､カシメが不十分でケーブルがすっぽ抜けたりピンがしっかり奥まで入っていないためケーブルを動かすと接触不良で電源が落ちる､という事が起こるので(実際に起きて作り直した)､作ったとしても精々検証用にとどめておくのをおすすめします｡<br /><br />　ちなみに、このFGはFlets網内のv6折返しのテストに使おうと思っていたのですが、FortiOS 5.2だとIPv6の自動設定にDHCP6-PDやSLAACが使えず、かつNP6を搭載していないためv6の通信がCPU処理になってしまい残念なことになった(LAN内のv6NAT通信で200MbpsくらいでCPUが張り付く)ので、v6関係は諦めVDOMが使えた頃の軽量な4.0MR3に戻しました。v6のSNATができたのは良かったのですが…残念。]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry170309-210000">
		<title>【Network】Nuroを試してみた が…</title>
		<link>http://xmms.jp/blog/index.php?entry=entry170309-210000</link>
		<description><![CDATA[　最近､Fletsの回線がISP(OCN､オープンサーキット､インタリンクが対象)に関わらず特に19時前後が目に見えて遅いので､Nuroに興味を持っていました｡<br /> 一応､1Gの線は引いているのですが､19時前後では<br /><a href="http://beta.speedtest.net/" >http://beta.speedtest.net/</a><br />のSoftEther社を選んでも大体3-50Mbps程度で､午前3時4時に同じく実行すると上下500Mbps程度出たりします｡1G線を引いた直後はそれなりに速かったのですが､最近になって速度低下が目立つようになってきました｡PPPoEの収容が限界に近いという話もあり､そろそろつらい感じです｡<br /><br />生活LANの午前3時頃の速度です｡<br /><a href=images/sshot-2017-03-09-1.png class=lb><img src=images/sshot-2017-03-09-1.png  width=500px></a><br><br /><br />同日の午後19時頃の速度です<br /><a href=images/sshot-2017-03-09-2.png class=lb><img src=images/sshot-2017-03-09-2.png  width=500px></a><br><br /><br />中々にひどい<br /><br />　某所でv6のIPIPトンネル張ってあれこれしようという話もあったのですが､残念ながらひかり電話が必要なため､NGN網内IPv6が受けられず､この方法は断念しました｡<br /><br />　そんなところに<a href="https://www.nuro.jp/hikari/campaign/onecoin/" >Nuroを500円で体験できるワンコイン体験キャンペーン</a>(すでに終了してます)があったので申し込んでみました｡が､開通まで1ヶ月以上要しました…｡<br /><br /><h2>開通までの苦痛</h2><br />　新規で申し込むにあたり､ページにあるように<br />1 宅外FCキャビネットから宅内へのファイバ引き込み (So-net施工)<br />2 電線からFCキャビネットへのファイバ引き込み (NTT施工)<br />という2ステップの工事があり､2回の日程調整および立ち会いが必要になります｡<br /><br />　1回目のSo-net側の工事は問題なく終わったのですが､2回目のNTT側の工事で問題が起きました｡宅内工事の際に､次回訪問日程の確認を行い､同意を得たはずだったのですが､当日19時になってもNTTが現れませんでした｡<br /><br />　19時はさすがに遅すぎると思いSo-netのサポートセンターに連絡したところ､申し込みの際に自宅の住所を｢東京都千代田区千代田1-1-1｣といった住所をハイフン抜きで入力してしまい､｢東京都千代田区千代田111｣と入力してしまったため､NTT側から｢そんな住所ねえよ｣と差し戻しを食らっていたとのことでした｡<br /><br />　1回目の訪問が(おそらく施工者がよしなに解釈してしまったが故に)問題なく行われていたため､まさか入力ミスがあるとは気がつきませんでした｡<br />　確かに自分の非ではあるのですが､そもそも何故リジェクトされた時点でこちらに連絡をしないのか､NTTも郵便番号が入ってるのだからそれくらい分かるだろこのクソ役所ども…という黒い気持ちを抑え､とりあえず内容を修正してもらい､いつ頃なら予定が取れるかという折り返しの連絡をしてもらうことにしました｡ここで1週間のロス｡<br /><br />　そして連絡を待つこと4日…未だに連絡が来なかったので､さすがに遅すぎると再度サポートセンターに電話をしたところ､｢大変申し訳ありません｡こちら予約の取得が可能となっておりました｡最短1週間後から取得可能となっておりますが､いかがなさいますか?｣との返答｡<br /><br /><b>わーーー!!御社には引き継ぎと社内コミュニケーションが苦手なフレンズ  し  か  いないんだね!!!!くそーーーーーい!!!</b>　ほんまつっかえ…<br />　こちらから連絡しなかったら永遠に来なかったのではないでしょうか…まあSo-netに多くのことを期待することがそもそもの間違えであり､経験上過去にも実績(悪い意味で)があるので､納得は出来ます｡<br />　 また､サポートセンターに繋ぐ際には非常に長くの時間｢ただ今混み合っているので少々お待ちください｣の自動音声を聞く必要がある為､スピーカーホンにしてしばらく電話を放置する必要があります｡SIPサーバやVoIP機の音声の途切れや揺れなどを確認するためのベンチマークの電話先としてはいいかもしれません｡<br />　 まあ､そのレベルで人的資源が足りていないと言う事なのでしょう｡<br /><br />　結局､宅外工事は申し込んでから1ヶ月以上経ってようやく完了しました｡<br /><br /><h2>開通後の苦痛</h2><br />　NuroではGPONがグローバルIPをもつ仕様となり､配布するのは基本的にローカルIPのみと言うことは把握していたので､前もって今のネットワークを大きく変更しないでGWを追加するためのセグメントを作成していました｡しかし箱を開けてみてびっくり､渡されたHG8045Dが思っていた以上にクズでした｡<br /><br />　 VLANが切れないとかIPインターフェースを複数持てないとかは許せないながらも仕方ないとして､スタティックルーティングすらも切れないのです｡2000円で買えるばっふぁろーのルーターやNTTから渡されるONUについているおまけルーターですらもその程度は出来るので､まさかこれができないとは思っていませんでした｡<br /><br />　はっきり言って､HGWとして渡される何かは｢でんきにつなげるとあったかくなるみどりいろにひかるゴミ｣です｡ 既存の物があり、要件にも合わず、極力無駄なことをさせたくなかったので、無線も含めDHCPやDNSプロクシなど不要な機能は全て無効にしました｡<br />　せめてもの救いとしてはDMZ機能を持っているので､この｢みどりいろにひかるゴミ｣をどうにかするために既存のVMにNATをさせ､普段はそちらのVMをDMZとし､ポートフォワードなどの必要な機能はNAT-VMでどうにかすることにしました｡pfsenseちゃんマジ天使<br />　もっとも､固定IPオプション付きの法人向けのGPONはその下にDHCPでグローバルIPを払い出してくれるので､ある程度複雑なネットワークであればそちらにするべきだとは思います｡費用的に個人で出すには少しつらいですが｡<br /><br />　ひとつNuroの肩を持つとすれば､下り2Gbpsというのは確かにでます｡2台のDell Latitude E7440(片方はCore i5 4510u/RAM16G､もう片方は4500u/8G)を｢みどりいろにひかるゴミ｣のLANポートにそれぞれ直接接続しスピードを測ったところ､タスクマネージャからみてもそれぞれで違うサーバから900Mbpsに近い速度はでていたので､たとえそれが速度測定サイトのみ加速する､いわゆる｢チートブースト｣であったとしても一応スペック通りと言えるとは思います｡<br /><a href=images/P2360880_R.JPG class=lb><img src=images/P2360880_R.JPG width=500px  width=500px></a><br><br /><br />　また､VMにNAT(宅内二重NAT)させたあとのスコアも､上りが若干落ちるものの十分な速度はでています｡ショートパケットはどうだか分かりませんが｡<br /><a href=images/sshot-2017-03-09-3.png class=lb><img src=images/sshot-2017-03-09-3.png  width=500px></a><br><br /><br />　では実際のところはどうか､となると､JAISTや理研などからDebianのISOを落とすときには大体3-400Mbps位になるので､まあそんなところです｡<br />　ただ､Flets側が腐る時間帯でもNuroでは大きな速度低下はないので､メリットはありました｡<br /><br /><h2>まとめ</h2><br />･So-netに何か確認するときには自分から積極的に進捗に関して突っつこう<br />･ある程度複雑なネットワークがあると､渡されるHGWは｢でんきにつなげるとあったかくなるみどりいろにひかるゴミ｣<br />･ネットワークに関しては､｢今のところは｣悪くない<br /><br />以上､愚痴でした｡]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry161126-232435">
		<title>【HW】RackSwitch G8124-Eのファンを交換してみた</title>
		<link>http://xmms.jp/blog/index.php?entry=entry161126-232435</link>
		<description><![CDATA[<a href=images/P2360524_R.JPG class=lb><img src=images/P2360524_R.JPG width=500px></a><br><br /><br />　3年くらい前にRackSwitch G8124-EをeBayで仕入れ、しばらく使用していたのですが、あるときにファンの一つが故障し、それまで30%くらいで回転していたファンが全て減退運転に入り、全て80%くらいで回転するようになりました。それまでは結構静かだったのですが、さすがに小型ファンの高速回転はうるさく、部屋のノイズ主成分(音的な意味で)になっていました。<br />　うるさい事と定期的にファン故障のトラップが飛ぶ以外は特に問題がないので(問題ですが)、故障後も放置してしばらく使っていましたが、運良く非常に安くApresia 130000が手に入ったので交換してしまいました。<br /><br /><br /><a href=images/P2360522_R.JPG class=lb><img src=images/P2360522_R.JPG width=500px></a><br><br /><br />　燦然と輝く真っ青なスイッチに、VLANを使った程度のL2ネットワークをさせるだけではオーバースペック感ありますが、まあそれなりに静かでいい感じです。<br />　その後、G8124は放置になっていたのですが、ふと直せるかどうか気になったのでふたを開けてみました。<br /><br />　壊れたファンはSUNONのGM1204PQV1-8Aと言うファンで、他のファンはUltraFlo W40S12BUA5-52なのですが、何故かこれだけSUNON製のものになっていました。元のオーナーが同じように手で直したのでしょうか…。<br /><br /><a href=images/sshot-2016-11-26-1.jpg class=lb><img src=images/sshot-2016-11-26-1.jpg width=500px></a><br><br /><br />　とりあえず、ファンの形状やコネクタは一般的なもののように見えたので、手元のゴミを漁ったら秋葉原でいつか役に立ちそうな気がして買った40ミリファンの連結した何かが出てきたので、それを分解して交換することにしました。<br /><br /><a href=images/P2360516_R.JPG class=lb><img src=images/P2360516_R.JPG width=500px></a><br><br /><br />　多分Supermicroの保守パーツ的な何かだと思いますが、もはやこれが何であってもどうでもいいです。<br /><br /><a href=images/P2360521_R.JPG class=lb><img src=images/P2360521_R.JPG width=500px></a><br><br /><br />　その中のファンにはSanAceの109P0412J3063が使われていました。むしろ他のも全てこれに交換してしまいたいレベルですが、とりあえず壊れた部分だけ交換します。<br /><br />　交換して、ひとまず動くか電源ON。起動しましたが、その直後異臭が立ちこめたので真顔で即座にACを引っこ抜きました。幸い、発煙や炎上はありませんでしたが、部屋がICを過電流で焼いたときの臭いで包まれました。この臭いほんとに嫌いです…(嗅ぐ羽目になったシチュエーションでは大体ああああああなことになってるので)<br /><br />　原因を確認してみると、コネクタは普通の3ピンなのですがアサインが違いました。これは死ぬ。何故確認しなかったし…。<br /><br /><a href=images/P2360517_R.JPG class=lb><img src=images/P2360517_R.JPG width=500px></a><br><br /><br />　解決策として、SUNON製のファンのコネクタを切り取り、綺麗な芋ハンダ(汚い)で直そうかと思いましたが、半田ごてをしばらく使っていなかったので引っ張り出すのがめんどくさくなり、その代わり手元にあったブレッドボード用のジャンプワイヤを使う事にしました。<br /><br /><a href=images/P2360518_R_R.JPG class=lb><img src=images/P2360518_R_R.JPG width=500px></a><br><br /><br />　その後おそるおそる起動してみると、とりあえずファンは順調に回っていたので、再び電源を落とし、ふたを戻しました。<br />　ふたを戻したあと、起動してみると、普段はファン故障でファンの回転数は落ちないのですが、今回は無事に回転数が落ちました。ファンの全回転時と比べ、20Wくらいの差がありました。<br />　コンソールに入ってみると、無事に回転数も取れていました。<br /><br /><blockquote>RS G8124-E#show sys-info<br /><br />System Information at 15:44:38 Mon Sep  5, 2016<br />Time zone: No timezone configured<br />Daylight Savings Time Status: Disabled<br /><br />IBM Networking Operating System RackSwitch G8124-E<br /><br />Switch has been up for 0 days, 0 hours, 12 minutes and 9 seconds.<br />Last boot: 15:32:42 Mon Sep  5, 2016 (power cycle)<br /><br />MAC address: xx:xx:xx:xx:xx:xx    IP (If 1) address: 0.0.0.0<br />MGMT-A Port MAC Address: xx:xx:xx:xx:xx:xx<br />MGMT-A Port IP Address (if 127): 172.20.1.6<br />MGMT-B Port MAC Address: xx:xx:xx:xx:xx:xx<br />MGMT-B Port IP Address (if 128): 192.168.51.50<br />Hardware Revision: 8<br />Board Revision: 2<br />Switch Serial No: xx:xx:xx:xx:xx:xx<br />Hardware Part No: xx:xx:xx:xx:xx:xx       Spare Part No: xx:xx:xx:xx:xx:xx<br />Manufacturing date: 10/46<br /><br /><br />Software Version 7.9.11 (FLASH image2), active configuration.<br />Boot kernel version 7.9.11<br /><br /><br /><br />Temperature Sensor 1: 21.5 C<br />Temperature Sensor 2: 27.0 C<br />Temperature Sensor 3: 26.00 C<br />Temperature Sensor 4: 43.75 C<br />Temperature Sensor 5: 35.50 C<br /><br />Warning at 85C and Failure at 100C<br /><br />Speed of Fan 1:   7964 RPM (75 PWM)<br />Speed of Fan 2:   8169 RPM (75 PWM)<br />Speed of Fan 3:   8023 RPM (75 PWM)　&lt;---故障したファン<br />Speed of Fan 4:   8503 RPM (75 PWM)<br />Speed of Fan 5:   8256 RPM (75 PWM)<br />Speed of Fan 6:   8120 RPM (75 PWM)<br /><br />System Fan Airflow: Front to Rear<br /><br />State of Power Supply 1:   On<br />State of Power Supply 2:   On</blockquote><br /><br />　自分の不確認により一つSanAceの109P0412J3063が犠牲になりましたが、最終的には無事に直すことが出来ました。直しても今後使う予定はないので微妙ですが、某所のラボネットワークの変更時に持ち込もうかなあ…。<br /><br />　ピンアサインにさえ気をつければ一般品でも交換できるので、保守のないスイッチで、もし同じようにファン故障で困っている人がいたら試す価値はあると思います。]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry160919-174552">
		<title>【HW】VR500(aka 鎖国ルーター)をゲットしたのでOpenWrtを入れて遊んでみた</title>
		<link>http://xmms.jp/blog/index.php?entry=entry160919-174552</link>
		<description><![CDATA[　SRCHACKさんが<a href="http://www.srchack.org" >VR500で面白そうな遊び</a>をしていたので、VR500はHW面で興味があったのですが、自分も筐体をゲットできたので遊んでみました。文章が長いのと長い文章に疲れて所々雑になっているのは許してヒヤシンス<br /><br /><a href=images/2016P2360457_R.JPG class=lb><img src=images/2016P2360457_R.JPG width=500px></a><br><br /><br />　色は、その昔同社のこんな色のスイッチがあったなーと言う深い青色です。金属筐体なので、テストしてるときもほんのり暖かかったですが、ちゃんと筐体全体で放熱できている証なのでしょう。<br /><h2>HWスペック</h2><br /><a href="http://www.srchack.org/article.php?story=2016091223364241" ></a>SRCHACKさんのページにもあるように、構成は MT7621A(2コア4スレッド)、RAM 256MB、Flash 64MBとなっています。このサイズのネットワーク機器としては非常にパワフルなスペックだと思います。<br /><br /><blockquote>root@OpenWrt:~# cat /proc/cpuinfo |grep -E &quot;(^core|^proc)&quot;<br />processor               : 0<br />core                    : 0<br />processor               : 1<br />core                    : 0<br />processor               : 2<br />core                    : 1<br />processor               : 3<br />core                    : 1<br /><br />root@OpenWrt:~# free<br />             total         used         free       shared      buffers<br />Mem:        256044        71896       184148          752         5436<br />-/+ buffers:              66460       189584<br />Swap:            0            0            0<br /></blockquote><br /><br />　MIPSでもSMTってあったんですね…知りませんでした。また、USB3.0も生えているので、どの程度使えるか気になるところです。ちなみに、デフォルトファームではUSB周りは使われていないようです。<br /><br /><h2>OpenWrtを入れるために</h2><br />　下記SRCHACKさんの手順にHOWTOは書いてあるので、こちらでは省略しますが、もし実際に機器をHACKする場合はパッチなど色々重要なことがいてあるので先に一読してください(重要と言いながら丸投げするスタイル)。<br /><br /><a href="http://www.srchack.org/pub/openwrt/vr500/build.txt" >手取り足取り書いてある詳しい開国手順</a><br /><br />　パッチの適用の仕方が分からないと言う事はないかもしれませんが、一応3のパッチ適用の際の補足<br /><blockquote>#gitから引っ張ってくるとデフォルトではopenwrtというディレクトリが出来るので、その下に下りてパッチ<br />dev1@debian-dev01:~/$ cd openwrt<br />dev1@debian-dev01:~/openwrt$ wget パッチ<br />dev1@debian-dev01:~/openwrt$ patch -p1 &lt;VR500_r49404.patch<br /></blockquote><br />　また、USBにメモリなどを挿す場合は <br />&gt; Kernel modules &gt; USB Support<br />の中の<br />kmod-usb-storage<br />kmod-usb-storage-extras<br />と<br /> &gt; Kernel modules &gt; Block Devices<br />にある<br />kmod-scsi-generic<br />を含める必要があったので、もしUSBをストレージ用途で利用しようと思っている人は注意してください。<br /><br />　自分はOpenWrt初心者なので、make menuconfigを実行したときにパッケージを選択したときのMと*の違いが分からず、sysupgradeのファイルを作ってもパッケージが更新されないと悩みました。<br />　*はsysupgradeのイメージに含める、Mはパッケージの個別ビルドでイメージファイルの中には含めないという意味で、Mで作っていたので無駄に5回くらいmakeしました。<br /><br />　ちなみに、OpenWrt入れた場合は基本的に元のファームには戻らないと覚悟した方がよいです。OpenWrtを入れたあと純正を入れてもWebUIはそれっぽく戻りますが、本気で戻したい場合はシリアルからあれこれして戻さないと怪しいです。<br /><br />　もっとも、似たような機能についてはpfsenseのpfBlockerNGで実装されているので、どうしても鎖国したい場合は新しくpfsenseのVM等をたててそちらでやるべきだと思います。(話がそれてしまいますがイメージとしてはこんな感じで出来ます)<br /><br /><a href=images/sshot-2016-09-19-7.png class=lb><img src=images/sshot-2016-09-19-7.png width=500px></a><br><br /><br />　今回テストに利用したe2fsprogs(mkfs.ext[2-4])やfdiskやSoftEtherやSambaなどを含めたごった煮パッケージを作成したので置いておきます。多分純正ファームのWebUIから入ると思います。入っているパッケージは.configファイルを見てください。<br /><br /><a href="data/vr500-openwrtimages-Chaos_Calmer_15.05.1_r49404.tgz" >vr500-openwrtimages-Chaos_Calmer_15.05.1_r49404.tgz</a>(17MB)<br /><br />　色々含めたらファイルサイズが大きくなってしまいましたが、VR500には64MBという広大なフラッシュ領域と何かあればUSBメモリが使えるという利点があるのであまり気にならないと思います。まあ検証用なのでもっと切り詰めたい人は自分で作るなりしてください。<br /><br />　initramfsの方だけでも色々使えるようになっていますが、squashfsの方を適用しないと再起動する度に設定が初期化されてしまうので注意してください。これで若干ハマりました。<br /><br /><h2>OpenWrtで遊ぶ</h2><br />　WebUIからInitramfsイメージを放り込んだら、そのあとOpenWrtからSquashfsの方を投げ込みます。Initramfsの方はもう少し小さくすれば良かったかなと思いつつ面倒なのでこのまま行きます。<br /><br /><br />　話がそれますが、OpenWrtの「Wrt」は、冒頭の写真の下に敷かれているWRT-G54のOSにLinuxカーネルやGPLライセンスのライブラリなどを使ってしまう→開示要求→ソース公開→公開されたソースでみんなが遊び始める、と言うのが元だったんですね…知りませんでした。WRT-G54はCiscoLinksysとLinksysのものを持っていたのですが、Linksysのものは壊してしまいました。<br /><br /><br /><h3>iperfで遊ぶ</h3><br />　話がそれてしまいましたが、まずは単体性能としてiperfがどの程度出るか試してみます。検証では、XeonE3 1220v2がのったVMホスト上にあるほぼ素のDebianマシン上でiperf -sを実行し、VR500から下記コマンドを実行しました。<br /><br /><blockquote>iperf -c IP -t 60 -i 1</blockquote><br />　VMホストは10Gネットワークにいるのですが、VR500のWAN側はアップリンク10Gスイッチに繋がったAX3630S-48T2XWに接続されています。簡単な図を書くのにGliffy使いたいのでConfluenceのBlog機能に移行しようかな…<br /><br /><a href=images/sshot-2016-09-19-1.png class=lb><img src=images/sshot-2016-09-19-1.png width=500px></a><br><br /><br />　その結果が以下です。<br /><br /><a href=images/sshot-2016-09-19-6.png class=lb><img src=images/sshot-2016-09-19-6.png width=500px></a><br><br /><br /><blockquote>[  3]  0.0-60.0 sec  6.27 GBytes   898 Mbits/sec</blockquote><br />　と、大体900Mbp出ます。グラフ上だと欠落している谷があるのですが、iperf上で極端に落ちるようなことは無かったので、グラフの表示の問題(firefoxの問題?)だと思いますが謎です。<br /><br /><br />　次に、NATされたLANにいる物理PC(Thinkpad X220 /Windows8.1)から同じVMに対してiperfした結果です。<br /><br /><a href=images/sshot-2016-09-19-2.png class=lb><img src=images/sshot-2016-09-19-2.png width=500px></a><br><br /><br />　ただし、Windowsのiperfは-w 128KなどとTCPのウィンドウサイズを大きく取らないと500Mbps程度で頭打ちになるようだったので、下記コマンドを実行しました。このオプションで、X220がVMと同じLANにいる限りはiperfで940Mbps程度出ていました。<br /><blockquote>iperf -c IP -w 128K -t 60 -i 1</blockquote><br /><br />　その結果が以下です。<br /><br /><a href=images/sshot-2016-09-19-8.png class=lb><img src=images/sshot-2016-09-19-8.png width=500px></a><br><br /><br /><blockquote>[184]  0.0-60.0 sec  6.31 GBytes   904 Mbits/sec</blockquote><br />　と、NATくらいではそこまで影響しないようです。<br /><br />　その後、VR500にWANの5001をLANのX220にフォワードさせるルールを作り、VMホストから<br /><blockquote>iperf -c IP -w 128K -t 60 -i 1</blockquote><br />　を実行してみました(FWルールはデフォルトのまま)。<br /><br /><a href=images/sshot-2016-09-19-3.png class=lb><img src=images/sshot-2016-09-19-3.png width=500px></a><br><br /><br />　その結果です。<br /><br /><a href=imagessshot-2016-09-19-9.png class=lb><img src=images/sshot-2016-09-19-9.png width=500px></a><br><br /><blockquote>[  3]  0.0-60.0 sec  3.59 GBytes   514 Mbits/sec</blockquote><br />　と、大体500Mbps程度でます。ソフトウェアルーターとしてはがんばっている方なのではないでしょうか。<br /><br />　最後に、pfsenseでDHCPの降ってこないVLANにPPPoEサーバを作成し、Untaggedな別VLANのスイッチのポートに接続したVR500のWANをPPPoEにして、pfsense上で今までiperfしていたVMに対してNATするルールを作成し、LANにいるX220からiperfした結果です。(要するにWANのエミュレーションをしたかった)<br /><br /><a href=images/sshot-2016-09-19-4.png class=lb><img src=images/sshot-2016-09-19-4.png width=500px></a><br><br /><br />　最初はpfsense自体でiperfを動かしたのですが、pfsense自体でiperfを動かすとX220から直接PPPoEを接続しても何故か500Mbps程度しかでなかったため、今までのVMにフォワードさせたところX220から930Mbps出たのでこちらにしました。手順が怪しいので参考値です。<br /><br /><br /><a href=images/sshot-2016-09-19-13.png class=lb><img src=images/sshot-2016-09-19-13.png width=500px></a><br><br />　結果は、<br /><blockquote>[184]  0.0-60.0 sec  2.73 GBytes   391 Mbits/sec</blockquote><br />　と、大体400Mbps前後です。<br /><br />　色々iperfで遊んだ結果を並べてみましたが、ラインレートまでとは行きませんが普通に多機能なルーターとしてもそれなりに使えると思います。これ取ってからデフォルトファームの動き見ておけば良かったと後悔…<br /><br /><br /><h3>USB3.0で遊ぶ</h3><br />　せっかくUSB3.0が生えているので、こちらの動きも見てみようと思います。USBのストレージを有効にする場合は、上の方で説明したkmod-usb-storage等が必要になるのでコンパイルする際には注意してください。<br /><br />　テスト機材は適当なUSBメモリがなかったので、その辺に転がっていた何かのケースのふたに750Evo(256GB)を接続してテストしました。<br /><br /><a href=images/2016P2360454_R.JPG class=lb><img src=images/2016P2360454_R.JPG width=500px></a><br><br /><br />この組み合わせはT430のUSB3.0に接続してCrystalDiskmarkをかけたところR/W共に120MB/s程度は出るので今回は十分だと思います。<br /><br /><a href=images/sshot-2016-09-19-22.PNG class=lb><img src=images/sshot-2016-09-19-22.PNG ></a><br><br /><br />　とりあえず何も考えずにさしてlsusb(デフォルトではコマンドがないのでmakeするときに選ぶ必要があります)した結果です。<br /><blockquote>root@OpenWrt:~# lsusb  -v<br /><br />Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub<br />Device Descriptor:<br />  bLength                18<br />  bDescriptorType         1<br />  bcdUSB               2.00<br />  bDeviceClass            9 Hub<br />  bDeviceSubClass         0 Unused<br />  bDeviceProtocol         1 Single TT<br />  bMaxPacketSize0        64<br />  idVendor           0x1d6b Linux Foundation<br />  idProduct          0x0002 2.0 root hub<br />  bcdDevice            3.18<br />  iManufacturer           3 Linux 3.18.36 xhci-hcd<br />  iProduct                2 xHCI Host Controller<br />  iSerial                 1 1e1c0000.xhci<br />  bNumConfigurations      1<br />  Configuration Descriptor:<br />    bLength                 9<br />    bDescriptorType         2<br />    wTotalLength           25<br />    bNumInterfaces          1<br />    bConfigurationValue     1<br />    iConfiguration          0<br />    bmAttributes         0xe0<br />      Self Powered<br />      Remote Wakeup<br />    MaxPower                0mA<br />    Interface Descriptor:<br />      bLength                 9<br />      bDescriptorType         4<br />      bInterfaceNumber        0<br />      bAlternateSetting       0<br />      bNumEndpoints           1<br />      bInterfaceClass         9 Hub<br />      bInterfaceSubClass      0 Unused<br />      bInterfaceProtocol      0 Full speed (or root) hub<br />      iInterface              0<br />      Endpoint Descriptor:<br />        bLength                 7<br />        bDescriptorType         5<br />        bEndpointAddress     0x81  EP 1 IN<br />        bmAttributes            3<br />          Transfer Type            Interrupt<br />          Synch Type               None<br />          Usage Type               Data<br />        wMaxPacketSize     0x0004  1x 4 bytes<br />        bInterval              12<br />Hub Descriptor:<br />  bLength               9<br />  bDescriptorType      41<br />  nNbrPorts             2<br />  wHubCharacteristic 0x0009<br />    Per-port power switching<br />    Per-port overcurrent protection<br />    TT think time 8 FS bits<br />  bPwrOn2PwrGood       10 * 2 milli seconds<br />  bHubContrCurrent      0 milli Ampere<br />  DeviceRemovable    0x00<br />  PortPwrCtrlMask    0xff<br /> Hub Port Status:<br />   Port 1: 0000.0100 power<br />   Port 2: 0000.0100 power<br />Device Status:     0x0001<br />  Self Powered<br /><br />Bus 002 Device 002: ID 1f75:0888 Innostor Technology Corporation IS888 SATA Storage Controller<br />Device Descriptor:<br />  bLength                18<br />  bDescriptorType         1<br />  bcdUSB               3.00<br />  bDeviceClass            0 (Defined at Interface level)<br />  bDeviceSubClass         0<br />  bDeviceProtocol         0<br />  bMaxPacketSize0         9<br />  idVendor           0x1f75 Innostor Technology Corporation<br />  idProduct          0x0888 IS888 SATA Storage Controller<br />  bcdDevice            0.15<br />  iManufacturer           1 Innostor Technology<br />  iProduct                2 IS888 USB3.0 to SATA bridge<br />  iSerial                 3 088810000000<br />  bNumConfigurations      1<br />  Configuration Descriptor:<br />    bLength                 9<br />    bDescriptorType         2<br />    wTotalLength           44<br />    bNumInterfaces          1<br />    bConfigurationValue     1<br />    iConfiguration          0<br />    bmAttributes         0xc0<br />      Self Powered<br />    MaxPower              200mA<br />    Interface Descriptor:<br />      bLength                 9<br />      bDescriptorType         4<br />      bInterfaceNumber        0<br />      bAlternateSetting       0<br />      bNumEndpoints           2<br />      bInterfaceClass         8 Mass Storage<br />      bInterfaceSubClass      6 SCSI<br />      bInterfaceProtocol     80 Bulk-Only<br />      iInterface              0<br />      Endpoint Descriptor:<br />        bLength                 7<br />        bDescriptorType         5<br />        bEndpointAddress     0x81  EP 1 IN<br />        bmAttributes            2<br />          Transfer Type            Bulk<br />          Synch Type               None<br />          Usage Type               Data<br />        wMaxPacketSize     0x0400  1x 1024 bytes<br />        bInterval               0<br />        bMaxBurst              15<br />      Endpoint Descriptor:<br />        bLength                 7<br />        bDescriptorType         5<br />        bEndpointAddress     0x02  EP 2 OUT<br />        bmAttributes            2<br />          Transfer Type            Bulk<br />          Synch Type               None<br />          Usage Type               Data<br />        wMaxPacketSize     0x0400  1x 1024 bytes<br />        bInterval               0<br />        bMaxBurst              15<br />Binary Object Store Descriptor:<br />  bLength                 5<br />  bDescriptorType        15<br />  wTotalLength           22<br />  bNumDeviceCaps          2<br />  USB 2.0 Extension Device Capability:<br />    bLength                 7<br />    bDescriptorType        16<br />    bDevCapabilityType      2<br />    bmAttributes   0x00000002<br />      Link Power Management (LPM) Supported<br />  SuperSpeed USB Device Capability:<br />    bLength                10<br />    bDescriptorType        16<br />    bDevCapabilityType      3<br />    bmAttributes         0x00<br />    wSpeedsSupported   0x000e<br />      Device can operate at Full Speed (12Mbps)<br />      Device can operate at High Speed (480Mbps)<br />      Device can operate at SuperSpeed (5Gbps)<br />    bFunctionalitySupport   1<br />      Lowest fully-functional device speed is Full Speed (12Mbps)<br />    bU1DevExitLat           1 micro seconds<br />    bU2DevExitLat         101 micro seconds<br />Device Status:     0x0001<br />  Self Powered<br /><br />Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub<br />Device Descriptor:<br />  bLength                18<br />  bDescriptorType         1<br />  bcdUSB               3.00<br />  bDeviceClass            9 Hub<br />  bDeviceSubClass         0 Unused<br />  bDeviceProtocol         3<br />  bMaxPacketSize0         9<br />  idVendor           0x1d6b Linux Foundation<br />  idProduct          0x0003 3.0 root hub<br />  bcdDevice            3.18<br />  iManufacturer           3 Linux 3.18.36 xhci-hcd<br />  iProduct                2 xHCI Host Controller<br />  iSerial                 1 1e1c0000.xhci<br />  bNumConfigurations      1<br />  Configuration Descriptor:<br />    bLength                 9<br />    bDescriptorType         2<br />    wTotalLength           31<br />    bNumInterfaces          1<br />    bConfigurationValue     1<br />    iConfiguration          0<br />    bmAttributes         0xe0<br />      Self Powered<br />      Remote Wakeup<br />    MaxPower                0mA<br />    Interface Descriptor:<br />      bLength                 9<br />      bDescriptorType         4<br />      bInterfaceNumber        0<br />      bAlternateSetting       0<br />      bNumEndpoints           1<br />      bInterfaceClass         9 Hub<br />      bInterfaceSubClass      0 Unused<br />      bInterfaceProtocol      0 Full speed (or root) hub<br />      iInterface              0<br />      Endpoint Descriptor:<br />        bLength                 7<br />        bDescriptorType         5<br />        bEndpointAddress     0x81  EP 1 IN<br />        bmAttributes            3<br />          Transfer Type            Interrupt<br />          Synch Type               None<br />          Usage Type               Data<br />        wMaxPacketSize     0x0004  1x 4 bytes<br />        bInterval              12<br />        bMaxBurst               0<br />Hub Descriptor:<br />  bLength              12<br />  bDescriptorType      42<br />  nNbrPorts             1<br />  wHubCharacteristic 0x0009<br />    Per-port power switching<br />    Per-port overcurrent protection<br />  bPwrOn2PwrGood       10 * 2 milli seconds<br />  bHubContrCurrent      0 milli Ampere<br />  bHubDecLat          0.0 micro seconds<br />  wHubDelay             0 nano seconds<br />  DeviceRemovable    0x00<br /> Hub Port Status:<br />   Port 1: 0000.0203 5Gbps power U0 enable connect<br />Binary Object Store Descriptor:<br />  bLength                 5<br />  bDescriptorType        15<br />  wTotalLength           15<br />  bNumDeviceCaps          1<br />  SuperSpeed USB Device Capability:<br />    bLength                10<br />    bDescriptorType        16<br />    bDevCapabilityType      3<br />    bmAttributes         0x00<br />    wSpeedsSupported   0x0008<br />      Device can operate at SuperSpeed (5Gbps)<br />    bFunctionalitySupport   3<br />      Lowest fully-functional device speed is SuperSpeed (5Gbps)<br />    bU1DevExitLat           1 micro seconds<br />    bU2DevExitLat           1 micro seconds<br />Device Status:     0x0001<br />  Self Powered<br />root@OpenWrt:~#&quot;<br /></blockquote><br /><br />　おお、見える見える。<br /><br />　次に、USB3.0経由で接続したSSDに対してファイルシステムを通さずにddした結果です。<br /><br /><blockquote>#書き込み<br />root@OpenWrt:~# time dd if=/dev/zero of=/dev/sda1 bs=1M count=4000<br />4000+0 records in<br />4000+0 records out<br />real    1m 1.54s<br />user    0m 0.02s<br />sys     0m 41.92s<br />(4 GB) / (61.54 s) =<br />64.998375 MB / s<br /><br />#読み込み<br />root@OpenWrt:~# time dd if=/dev/sda1 of=/dev/null bs=1M count=4000<br />4000+0 records in<br />4000+0 records out<br />real    0m 48.64s<br />user    0m 0.05s<br />sys     0m 37.02s<br />(4 GB) / (48.64 s) =<br />82.2368421 MB / s</blockquote><br /><br />　読み/書き共にUSB2.0以上の速度で動いているので、USB3.0の効果はあります。この状態で、USBストレージにext4のファイルシステムをつくり、Sambaで共有をする準備をします。<br /><br /><blockquote>root@OpenWrt:~# mkfs.ext4 /dev/sda1<br />mke2fs 1.42.12 (29-Aug-2014)<br />Creating filesystem with 61049088 4k blocks and 15269888 inodes<br />Filesystem UUID: cf655368-2b4d-4626-b7ef-9967a0a121a1<br />Superblock backups stored on blocks:<br />        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,<br />        4096000, 7962624, 11239424, 20480000, 23887872<br /><br />Allocating group tables: done<br />Writing inode tables: done<br />Creating journal (32768 blocks): done<br />Writing superblocks and filesystem accounting information: done<br /><br />root@OpenWrt:~# mount /dev/sda1 /mnt<br />root@OpenWrt:~# time dd if=/dev/zero of=/mnt/a.img bs=1M count=4000<br />4000+0 records in<br />4000+0 records out<br /></blockquote><br /><br /><h3>Sambbaで遊ぶ</h3><br />　上のUSB3.0接続のSSDをSambaで共有して遊んでみます。/etc/init.d/sambaをstop&amp;&amp;startするとそのたびに/etc/samba/smb.conf.templateから書き戻されてしまうので、/etc/samba/smb.confに下記設定を書き足し、検証中はkillコマンドでサービスを止めたあと、smbd -Fで起動するという雑手順でテストしていたので、本格的に使う場合は別途考える必要があります。<br /><blockquote><br />#/etc/samba/smb.confの一番下に追記<br />[a]<br /> path=/mnt<br /> browsable=yes<br /> read only=no<br /> writeable=yes<br /> publilc=yes<br />#<br /><br />root@OpenWrt:~# kill `ps |grep -E &quot;smbd -F$&quot;|cut -d&quot; &quot; -f2`<br />root@OpenWrt:~# smbd -F<br />root@OpenWrt:~# chmod 777 /mnt -R</blockquote><br /><br />　その結果です。<br /><br />読み込み<br /><a href=images/sshot-2016-09-19-10.png class=lb><img src=images/sshot-2016-09-19-10.png width=500px></a><br><br />大体50-60MB/s程度です。<br /><br />書き込み<br /><a href=images/sshot-2016-09-19-11.png class=lb><img src=images/sshot-2016-09-19-11.png width=500px></a><br><br /><br />大体20-30MB/s程度です。<br /><br />　そもそもこういった用途では考えられていないので若干パワー不足感がありますが、topを見ている限りだとsmbdプロセスが1コア分しか使えていないようなので、多数の接続があればもう少し合計値は速くなる気がします。<br /><br /><h3>SoftEtherで遊ぶ</h3><br />　<a href="https://twitter.com/el1n" >@el1n</a>氏が作成したOpenWrt用パッチがあるので、何も考えずに入れます。ビルドには時間がかかるので、OpenWrtに入れる場合は一旦SoftEther単体でコンパイルが通ることを確認してから追加した方が良いです。<br /><br />　また、今回は何もしていませんが、デフォルトで入るSoftEtherのバージョンが若干古いので、もし最新版を使いたいという人は適宜package/softethervpn/softethervpn/Makefileを見ながら変えてください。<br /><br /><blockquote>dev1@debian-dev01:~/openwrt$ git clone <a href="https://github.com/el1n/OpenWRT-package-softether.git" >https://github.com/el1n/OpenWRT-package-softether.git</a> package/softethervpn<br />dev1@debian-dev01:~/openwrt$ ./scripts/feeds update<br />dev1@debian-dev01:~/openwrt$ ./scripts/feeds install softethervpn<br />dev1@debian-dev01:~/openwrt$ make defconfig<br />dev1@debian-dev01:~/openwrt$ make menuconfig<br />#その後TUIの中の &gt; Network &gt; VPNのsoftethervpnをMにしてパッケージを作る<br /></blockquote><br />　パッケージが作成されたら、個別で作った人はipkgをいれ、vpnserverコマンドを実行してSoftEtherサーバを作成します。(自分の作ったイメージでは最初から起動しています。)<br /><strike>　デフォルトではvpnbridgeとvpnclientも動いているため、サーバ以外を下記コマンドで無効化します。<br /><blockquote>root@OpenWrt:~# /etc/init.d/softethervpnbridge stop<br />root@OpenWrt:~# /etc/init.d/softethervpnbridge disable<br />root@OpenWrt:~# /etc/init.d/softethervpnclient stop<br />root@OpenWrt:~# /etc/init.d/softethervpnclient disable</blockquote></strike><br /><br />　指摘されて思い出しましたが、VR500再起動後vpnsmngrから接続して仮想ハブの設定をしようとするとなぜか拠点間ブリッジとして動いてしまうことがあるので、下記コマンドで各設定を初期化し、以後拠点サーバとして動くように設定します。<br /><blockquote>＃プロセスを殺す<br />for a in `ps |grep -E &quot;/usr/bin/vpn.*&quot;|cut -d&quot; &quot; -f2`; do kill $a ; done<br />#自動起動無効化<br />for a in bridge clilent ; do /etc/init.d/softethervpn${a}  disable ; done<br />#設定ファイル初期化<br />rm /usr/bin/vpn_*<br />#VPNサーバ起動<br />/etc/init.d/softethervpnserver start</blockquote><br /><br /><br />　起動後、LANに接続されたX220からvpnsmgrで接続し、仮想ハブを作成しますが、SoftEtherの初期手順については他の人が沢山作っているので省略します。<br /><br />　仮想ハブをeth0:1(LAN)にブリッジさせ通信しようとしたのですが、eth0:1やbr-lanに対してSoftEtherからブリッジをかけても通信が出来なかったため、aというtapを作成し、sshからbrctrl addif br-lan tap_a を実行しました。<br /><br />　コマンド実行したあとにWebUIからいじれることに気がついたので、次回再起動時も有効にするためにはNetwork-&gt;Interfaces-&gt;LANのPysical settings内のブリッジに追加すれば次回起動時も勝手にbr-lanにくっついてくれます。<br /><a href=images/sshot-2016-09-19-5.png class=lb><img src=images/sshot-2016-09-19-5.png width=500px></a><br><br /><br />　その後、デフォルトで起動している5555ポートに対してポートフォワードし、WANにいるT430(Win10)からVPN越しにLANにいるX220にiperfした結果です。<br /><a href=images/sshot-2016-09-19-12.png class=lb><img src=images/sshot-2016-09-19-12.png width=500px></a><br><br /><br />　速度としては、大体50Mbps程度で安定していました。BuffaroのWZR-HP-AG300H(AR7161@680MHz 128MiB 32MiB )で10-20Mbpsだったので、このレベルの機器としてはかなり速い方だと思います。<br /><br /><h2>まとめ</h2><br />　色々試してみましたが、普通のルーターとしても、NASのヘッドとしても、SoftEtherを動かすVPNサーバとしても、何をしてもそつなくこなせるだけのパワーはあると思います。<br />　これ以上のマシンパワーが欲しいのであればXeonE3等のマシンの上で動くVMでやるか、それなりのCPUを積んだ物理x86マシンの上でやるしかない気もします。<br />　個人的にはUSB3.0接続の複数HDD積める箱でも買ってmdraid+rsyncdサーバとして使ってみようかと思いつつ、ものがないので試せませんが。。<br /><br />　ハードウェアとしてはいいので、2万円くらいでホワイトボックスルーターとして出てくれると手を出しやすいので夢が広がる気がします。以上!]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry140505-235851">
		<title>【NW】RouterBoardにおけるMTU/MRU問題</title>
		<link>http://xmms.jp/blog/index.php?entry=entry140505-235851</link>
		<description><![CDATA[　ずいぶん前に貸与されてから塩漬けになっていたRB2011ですが、裏ルータ的な何かとしていざ使ってみたところ接続が不安定だった為メモしておきます。<br />　結論から書くと、所謂MTU/MRU1454問題でした。まあこれだけ書けば分かる人には終了ですね。<br /><br /><br />　RBの仕様は、PPPoEセッション上のMTU/MRUがデフォルトで1480で設定されるのですが、NTT網内のMTU/MRUが最大1454であるため、フラグメントが起きてしまうようなページを開いてしまうと、ページが不完全のまま表示されるかタイムアウトしてしまうのです。<br />　<br />　具体的にはこのブログのTwitterプラグインで問題が起きます。なので、同様の問題があって検索した人がこのページを開けないという残念な問題が起きます。（ぇ　もしかしたら不完全ながらも表示できるかもしれませんが。<br /><br />　このページをRB2011から別のPPPoEセッションを張りWANから参照してみた際のログですが、デフォルトの設定だと、以下のように、特定のファイルだけいつまでもファイルが降ってきません。<br /><br /><a href=images/Routerboard_WrongMRU.png class=lb><img src=images/Routerboard_WrongMRU.png width=500px></a><br><br /><br />　Pingなどが途切れることはなく、なおかつ問題ないページは問題なく表示されるのですが、一部の広告表示用Javascriptが挿入されているようなページだとタイムアウト待ちをするため、ブラウジングの際にページの表示速度が非常にストレスフルな表示速度になります。<br /><br />　内側のLinuxから行ったtracepathの結果やWebFigの表示結果を見る限りは、MTUの値は1480のデフォルトでも正しく1454で受け取るようなのですが、MRUの値は1480のままであり、これが問題になるようです。<br /><br /><br /><a href=images/Routerboard_WrongMRU_2.png class=lb><img src=images/Routerboard_WrongMRU_2.png width=500px></a><br><br /><br />　解決するには、PPPoEインターフェースのMRUを変更します。<br /><br /><a href=images/Routerboard_WrongMRU_3.png class=lb><img src=images/Routerboard_WrongMRU_3.png width=500px></a><br><br /><br />　MTUは自動設定されますが、一応変えておいたほうが無難だと思われます。OK/Applyをクリックすることにより設定を反映しますが、その際にPPPoEを切ってから再度接続を行うため、ISPによってはIPが変わります。（OCNの環境だとIPが変わりました。）<br /><br />　変更後、見た限りWebページによって表示が遅い問題は解決しました。現在、2つのIFを束ねたBonding IF上に タグVLANを作成し、LANセグメントをいくつかとWANセグメントインターフェースを作成していますが、この構成でも問題なく動いています。<br /><br />　完全に接続ができないわけではなく、さらに回線速度測定ページなどでは問題なく速度が出てしまうため、この問題に気が付きませんでした。<br />　悩んでいたところ解決の糸口を享受していただいた<a href="https://twitter.com/neko6_tweet/statuses/462762740797296641" >@neko6_tweetさん</a>に感謝です。<br /><br />　しかし、1.6万前後でここまでVLANなどがいじれるルーターはなかなかないですね。ちらっと見たところポリシーベースルーティング(PBR)も当たり前のようにできるようですし、ネットワークにおける大体のやりたいことをどうにかする方法があるようです。これは魅力に取りつかれる人が多いのも納得です。<br /><br />
<iframe src="http://rcm-fe.amazon-adsystem.com/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=xmms-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00GLQ54GM" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>
]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry140204-003021">
		<title>RouterBoard RB2011UiASに触ってみた</title>
		<link>http://xmms.jp/blog/index.php?entry=entry140204-003021</link>
		<description><![CDATA[　あけましておめでとうございました(過去形)。つかもう2月ですね。久しぶりの記事です。<br /><br />　今年第一の記事は、評価用の<a href="http://routerboard.com/RB2011UiAS-RM" >RB2011UiAS-RM</a>を株式会社シー アイオープラスさんから貸していただいた（ありがとうございます！）ので、一部界隈でアツいRouterBoardについてファーストインプレッションと簡単なベンチマークをしてみました。<br /><br />　本来だと先先週の初めくらいには評価を終わらせようと思っていたのですが風邪引いたり忙しかったり現場が<strike>クソ</strike>色々大変で全く何も出来ていなかったという…。<br /><br /><a href=images/P1181177_R.JPG class=lb><img src=images/P1181177_R.JPG width=500px></a><br><br /><br /><br /><h2>外観について</h2><br /><br /><a href=images/520_l.jpg class=lb><img src=images/520_l.jpg width=500px></a><br><br /><br />　まずは全面。しかし肝心の全体像の写真を撮り損ねていたので製品イメージ画像です。まだ手元にありますが撮りなおすのがめんｄ(ry<br />　インターフェース構成は、5GiE+1SFP+5FEと言う構成です。これらのインターフェースはルーティングインターフェースにもスイッチインターフェースにもなります。6つの1GibEというのは中々強そうです。<br />　また、Port1がPoE受電、Port10がPoE給電ポートになってはいるのですが、入力電圧が30Vで48Vのaf準拠ではないので一般的なスイッチにつないでも何も起きません。ここは対応してほしかったところではあります。<br /><br /><a href=images/P1181197_R.JPG class=lb><img src=images/P1181197_R.JPG width=500px></a><br><br /><br />　そして裏面。裏面にはシスコきしめんのシリアルポートがあります。ACポートは、10-28Vの入力に対応し、口さえ合えば大体のACアダプタが使えます。最初からついてきたのは24V0.5Aだったので、大体12W前後あればよさそうな感じがします。<br /><br /><a href=images/P1181195_R.JPG class=lb><img src=images/P1181195_R.JPG width=500px></a><br><br /><br />　奥行きです。横に長いものの、奥行きはものすごく短く、大体SSDと同じくらいの大きさでした。<br /><br />　LCDを前面ではなく上面に配置し、より小型化した<a href="http://routerboard.jp/RB2011UAS-IN/" >RB2011UAS-IN</a>というモデルがあるので、自分のように19インチラックを持っていない場合はこちらの方が設置には融通が利くかもしれません。<br /><br /><a href=images/P1181179_R.JPG class=lb><img src=images/P1181179_R.JPG width=500px></a><br><br /><br />　電源を入れたところです。電源確認の青色LEDが思いの外輝度高いです。某DCの某ルーターで状態確認用青色LEDに養生テープが貼ってあったのを思い出します。丁度ネットワークラックの目の高さに置いてあったので、作業中にLEDの光が目に刺さって痛かったのでしょう。<br /><br />　そんなことはどうでもよく、1Uサイズでラックマウントキットもついているので家で使うことはあんまり考えられていない気がしますが、人によっては寝床に置くには明るすぎるというかもしれません。その際には養生マスクがおすすめです。常時足元燈にはいいかもしれません。ちなみにファンレスです。<br /><br /><a href=images/P1181178_R.JPG class=lb><img src=images/P1181178_R.JPG width=500px></a><br><br /><br />　次に、LCDです。このルーターにはLCDが搭載されていて、感圧式なもののタッチパネルなので、ぽちぽちとここから色々いじれます。<br /><br /><a href=images/P1181192_R.JPG class=lb><img src=images/P1181192_R.JPG width=500px></a><br><br /><br />　PINの認証をすると、タッチパネルからシステムインターフェースのIPの設定も出来ます。あくまで簡易的なものなので、ここからVLANの設定などは出来ません。ちなみに初期PINは1234です。<br /><br /><br /><a href=images/P1181183_R.JPG class=lb><img src=images/P1181183_R.JPG width=500px></a><br><br /><br />　実用的なのは、このスループットグラフです。タッチすることによりppsとbpsを切り替えられます。この画面から抜けるには下から上にフリックする必要があるのですが、前述の通り感圧式なのでフリック系の作業は指の腹ではつらい時があります。ですが、物珍しくて面白いです。<br />　それ以外にも、Uptime、温度、入力電圧などの情報を一定間隔で切り替えるInfomationSlideshowというものもあります。<br /><br /><br /><h2>機能について</h2><br /><br />　まだ全ての機能を検証した訳ではないので、さわりだけ紹介します。<br /><br />　RBを操作する方法として、WebFigというWebGUIを使う方法と、Winboxと言う専用アプリケーションを使う方法があります。どちらも操作できる内容としては同じなのですが、Winboxの方はIPでアクセスできなくてもシステム用ブリッジに繋がっていればMACアドレスを元にログインできるので、IPを変更したあと繋がらなくなってしまった場合につかえます。<br /><br />　それらを使いインターフェースを設定していきます。インターフェースの種類は、物理インターフェースの他に、以下のようにVLAN、Bonding、GRE、EoIP、OpenVPN…など、大体のトンネルは制覇してそうな感じに種類があります。<br /><br /><a href=images/rb_webfig_ifs.PNG class=lb><img src=images/rb_webfig_ifs.PNG width=500px></a><br><br /><br />　物理インターフェースは、デフォルトではeth1だけが別扱いで、それ以外はbridge-localというブリッジに繋がっていてL2として動きます。<br /><br /><a href=images/rb_webfig_def_brdge.PNG class=lb><img src=images/rb_webfig_def_brdge.PNG width=500px></a><br><br /><br />　デフォルトのFWは以下のようになっています。<br /><br /><a href=images/rb_webfig_def_fw.PNG class=lb><img src=images/rb_webfig_def_fw.PNG width=500px></a><br><br /><br />　NATのセクションでは以下のような設定が入っていて、デフォルトではeth1がWANインターフェースとして動いていて、内側の通信はマスカレードされて外に出て行きます。<br /><br /><a href=images/rb_webfig_def_nat.PNG class=lb><img src=images/rb_webfig_def_nat.PNG width=500px></a><br><br /><br />　機能についてはまだまださわれていませんが、ぱっと見こんな感じです。<br /><br /><br /><br /><h2>みんな大好きiperf</h2><br /><br /><br />　とりあえず、素の状態でiperfしてどの程度でるか、と言うのが気になるので、特にチューニングせずiperfしていきます。<br />　今回はいつもの構成ではなく、以下のように一つの物理マシンをESXi5.5を入れ、VMを内部で2台動かし、ポート1とポート2でそれぞれのvSwitchを作成し、VM1とVM2の通信をこのポートを使って通信するように設定してます。ほんとは別件でVMサーバとして使おうと思いつつ放置していたサーバなのですが、ついでなので使いました。<br />　RBとサーバの間に挟まってる何かは今回全く使っていないので無視してください。<br /><br /><a href=images/P1271201_R.JPG class=lb><img src=images/P1271201_R.JPG width=500px></a><br><br /><br />　HW構成<br />M/B : Supermicro X9SCL-F<br />CPU : Xeon E3-1225 V2<br />Mem : ECC UDIMM 4x4GB 1333MHz<br />NIC : Intel 1000PT/QuadPort<br />OS : VMware ESXi 5.5<br /><br />テスト環境OS<br />割り当てCPU 2CPU<br />割り当てMem 2GB<br />OS Debian 7.2/x86-64<br />NIC : vmxnet3<br /> 1を作成後、vCenterServerよりクローンを行い2を作成したため、全く同じ構成のVMです。また、VMにはvmware-toolsが入っています。<br /><br />　 まずは、ループバックを作りiperfを行い、vmwareのカーネルの限界がまだ来ていないことを確認します。<br /><br /><a href=images/P1311207_R.JPG class=lb><img src=images/P1311207_R.JPG width=500px></a><br><br /><br />　どうでも良いですが、かしめ器が有るとつい限界まで短いケーブル作ってしまいますよね。作ったあと、短すぎて自分でも何に使うか分からなかったのですが今回役に立ちました。<br /><br />　以下のコマンドを実行した結果です。そのまま貼ると長くなるので結果だけ貼ります。<br /><br /><blockquote>for a in {1,2,4,8,16,32,64,128} ; do iperf -c IP -i 1 -w ${a}K &gt;&gt;iperf_direct.txt ; done</blockquote><br /><br />　上からTCP Window sizeを1K、2K,4K、8K、16K、32K、64K、128Kと変化させました。<br /><br /><blockquote><br />[  3]  0.0-10.1 sec   159 MBytes   133 Mbits/sec<br />[  3]  0.0-10.0 sec   624 MBytes   523 Mbits/sec<br />[  3]  0.0-10.0 sec   566 MBytes   474 Mbits/sec<br />[  3]  0.0-10.0 sec   794 MBytes   666 Mbits/sec<br />[  3]  0.0-10.0 sec   996 MBytes   835 Mbits/sec<br />[  3]  0.0-10.0 sec  1.09 GBytes   939 Mbits/sec<br />[  3]  0.0-10.0 sec  1.10 GBytes   941 Mbits/sec<br />[  3]  0.0-10.0 sec  1.10 GBytes   941 Mbits/sec<br /></blockquote><br /><br />　物理マシン同士で実行してもこの程度なので、ハイパーバイザがネックになることはまだないと思われます。また、結果は1秒おきに出力しましたが大きなブレはありませんでした。<br /><br />　この値を元に、ケーブルをRBのポート2と3に繋ぎ、同じようにiperfしてみました。<br /><br /><blockquote><br />[  3]  0.0-10.0 sec   153 MBytes   128 Mbits/sec<br />[  3]  0.0-10.0 sec   520 MBytes   435 Mbits/sec<br />[  3]  0.0-10.0 sec   556 MBytes   466 Mbits/sec<br />[  3]  0.0-10.0 sec   738 MBytes   619 Mbits/sec<br />[  3]  0.0-10.0 sec   844 MBytes   707 Mbits/sec<br />[  3]  0.0-10.0 sec  1.02 GBytes   879 Mbits/sec<br />[  3]  0.0-10.0 sec  1.06 GBytes   910 Mbits/sec<br />[  3]  0.0-10.0 sec  1.06 GBytes   908 Mbits/sec<br /></blockquote><br /><br />　若干の劣化はありますが、許容の範囲内だと思います。また、通信があるとLCDのインターフェース選択部分にも反映されます。<br /><br /><a href=images/P1311208_R.JPG class=lb><img src=images/P1311208_R.JPG width=500px></a><br><br /><a href=images/P1311210_R.JPG class=lb><img src=images/P1311210_R.JPG width=500px></a><br><br /><a href=images/P1311209_R.JPG class=lb><img src=images/P1311209_R.JPG width=500px></a><br><br /><br />　このように、見てて面白いです。某店の某サービス提供時に配布される某所のOEMの某ラグビー型の某WLAN APもLCDついているならYoutube再生機能とか言う訳の分からないゴミクズバグ機能をつけないでこっちをつけた方が数百倍役に立ったのではと思います。<br /><br />　この写真を撮る途中に切れないように10分間iperfを流しましたが、フリーズや再起動などはありませんでした。<br /><br />　さて、ブリッジ同士での通信が取れたので、今度はWAN側に当たるIPマスカレード先の物理マシンにiperfしてみます。物理マシンとはL2通信時にはほぼループ時と同じ値がでていることを確認しています。<br /><br />　その結果、以下のようになりました。<br /><br /><blockquote><br />[  4]  0.0-10.1 sec  33.1 MBytes  27.6 Mbits/sec<br />[  5]  0.0-10.0 sec   272 MBytes   228 Mbits/sec<br />[  4]  0.0-10.0 sec   295 MBytes   247 Mbits/sec<br />[  5]  0.0-10.0 sec   299 MBytes   251 Mbits/sec<br />[  4]  0.0-10.0 sec   303 MBytes   254 Mbits/sec<br />[  5]  0.0-10.0 sec   307 MBytes   257 Mbits/sec<br />[  4]  0.0-10.0 sec   296 MBytes   248 Mbits/sec<br />[  5]  0.0-10.0 sec   297 MBytes   249 Mbits/sec<br /></blockquote><br /><br />　んー？これは…少し性能劣化が気になるところです。NATさせると性能が落ちる、というのはどっかの銀色のルーターを思い出しますね。それよりは数十倍早いですが。<br /><br />　<a href="http://routerboard.com/RB2011UiAS-RM" >こちら</a>ではRoutingでも最低は698Mbpsは出るような気がしていたのですが、それには及びません。そこで、FastPathとは何か、発動条件は何か、と調べてみると、以下のような制限があることに気がつきました。<br /><br /><a href="http://wiki.mikrotik.com/wiki/Manual:Fast_Path" >http://wiki.mikrotik.com/wiki/Manual:Fast_Path</a><br /><br /><blockquote><br /><br />IPv4 fast path is automatically used if following conditions are met:<br /><br />firewal rules are not configured,<br />Traffic flow is disabled /ip traffic-flow enabled=no<br />Simple and queue trees with parent=global are not configured.<br />source interface is not bridge port or bonding slave<br />destination interface queue is set to only-hw-queue and no queue tree entries with parent=&quot;dst interface&quot;<br />no mesh, metarouter interface configuration,<br />sniffer, torch and traffic generator is not running<br />connection tracking is not active<br />ip accounting is disabled (/ip accounting enabled=no);<br />VRFs are not set (/ip route vrf is empty);<br />Hotspot is not used (/ip hostspot has no interfaces);<br />IpSec policies are not configured (ROS v6.8)<br /><br /></blockquote><br /><br />　要するに、CPUがパケットを見ずに、チップ上でスイッチできる必要があると言う事みたいです。しかしfirewal rules are not configuredという制限はちょっと辛い…。。<br />　試しに、Fastpathが有効になるかどうか、全てのFWルールを削除し、ローカルブリッジからeth2とeth3を外し、単純なIPルーティングのみをさせてみました。<br />　Port2が192.168.87.1/24で、Port3が192.168.86.1/24で、それぞれを独立インターフェースとして動かし、それぞれの仮想マシンのでふぉげを変更したルーターのIPにしました。<br /><br /><blockquote><br />[  3]  0.0-10.1 sec  49.9 MBytes  41.5 Mbits/sec<br />[  3]  0.0-10.0 sec   648 MBytes   543 Mbits/sec<br />[  3]  0.0-10.0 sec   755 MBytes   633 Mbits/sec<br />[  3]  0.0-10.0 sec   789 MBytes   662 Mbits/sec<br />[  3]  0.0-10.0 sec   889 MBytes   746 Mbits/sec<br />[  3]  0.0-10.0 sec  1.01 GBytes   864 Mbits/sec<br />[  3]  0.0-10.0 sec  1.04 GBytes   889 Mbits/sec<br />[  3]  0.0-10.0 sec  1.03 GBytes   889 Mbits/sec<br /></blockquote><br /><br />　確かに、速度は戻りました。色々見てみると、やはりNATを有効にするとブリッジポートではないRoutingPort間の通信は300Mbps前後に落ち込んでしまうようです。<br /><br />　このテストをした後、<a href="http://connpass.com/event/4467/?utm_campaign=event_reminder&amp;utm_source=notifications&amp;utm_medium=email&amp;utm_content=title_link" >RB勉強会</a>があったので中の人に聞いてみたところ、「CPUでの処理はお察しください。そういった方は32コアの<a href="http://routerboard.com/CCR1036-8G-2SplusEM" >CCR1036-8G-2S+EM</a> をどうぞ」と言われたので、やはりそういう物みたいです。<br />　とはいうものの、新品実売価格1万後半のルーターでここまで遊べるルーターを見たことないので、ネットワークGeekにはとてもおすすめです。全然深いところを触れていませんが、GUIを触った感じで「ああこれは遊べるな」と思えます。<br /><br />　まだまだ機能にさわれていないので、もっと遊んできたいと思います。誰か時間ください。]]></description>
	</item>
	<item rdf:about="http://xmms.jp/blog/index.php?entry=entry130924-025005">
		<title>【NetWork】IX3010のGigaインターフェースとS5100-8P-SIがきた</title>
		<link>http://xmms.jp/blog/index.php?entry=entry130924-025005</link>
		<description><![CDATA[　特に内容はないのですが、あまりにも更新しなさすぎなので増えたおもちゃを載せてみます。<br /><br /><a href=images/P9231120_R.JPG class=lb><img src=images/P9231120_R.JPG width=500px></a><br><br /><br />　2-3年くらい前からどっかに転がってないかなあと思っていたIX3010のGbEトランシーバーが手に入りました。性能は、NATなしの2IF間ルーティングだと770-800Mbpsで、NATを有効にしてしまうと750Mbps程度です。概ねNECの測定ページに書いてあるとおりです。PPPoEを有効にした計測はしてないのでわかりません。<br />　まあ、いまさらこれにこだわるよりもIX2105とか2215とかの方が性能いい上に消費電力も低いので、今となってはコレクションアイテムですね。しかもWANが100Mなので無意味という。<br />　一応LAN内セグメントのGibE化はできますが、それはL3使うべきといわれますね。<br /><br /><a href=images/P9241127_R.JPG class=lb><img src=images/P9241127_R.JPG width=500px></a><br><br /><br />　どうでもいいのですが、3010にもUnivergeロゴが入ってるのと入ってないのがあるんですね。2015では知っていましたが、今まで全然気にしてなかったので気がつきませんでした。ロゴありが新しいほうです。<br />　違いは、使ってるNICチップの消費電力が下がっているのは把握してますが、そのほかは知らないです。<br /><br /><br /><a href=images/P9231124_R.JPG class=lb><img src=images/P9231124_R.JPG width=500px></a><br><br /><br />　次に、H3CのS5100-8P-SIです。なんでこんなものがあるかというと、今GS908Mが動いている階段裏のスイッチを（GS908Mがいろいろイケてないので）交換しようといろいろ探していたら、<a href="http://www.h3c.com/portal/Products___Solutions/Products/Switches/H3C_S5100_Series_Switches/Detail_Material_List/200906/636543_57_0.htm" >このページ </a>に 「 Noise parameter<br />None｣と書いてあるので「ああファンレスかー｣と思ってジャンク品を落としましたのですが…。現実には静かながらもファンありだったという。<a href="http://www.networld.co.jp/h3c/pdf/S5100_DS.pdf" >この取説（PDF)</a>には確かにファンありと書いてあるので事前調査が足りなかったということになるのですが、そんなのって…<br /><br />　このスイッチが手元に来た直後はログインパスワードがかかっていたものの、bootROMにはパスがかかっていなかったので、起動後Ctrl+B連打でbootmanagerへ入り、起動ファイルをデフォルトにしてなんとかなりました。残っていた設定ファイルに特に面白いところはありませんでした。<br /><br />　ちなみに、ファームウェアはH3CからHPになってからは公開されているので<a href="https://h10145.www1.hp.com/Downloads/SoftwareReleases.aspx?ProductNumber=JD357A&amp;lang=en&amp;cc=uk&amp;prodSeriesId=4236560" >この</a>ファームが使えます。自分はbootmgrからTFTPを使ってアップしました。<br /><br />　H3Cはコマンドラインの内容はまあいいとして、ネーミングセンスがいけてないと何度も思いました。system-viewというコマンドが一覧にあったとして、誰がここからvlanの設定をすると思うんでしょうか（conf t相当）。undoがCiscoのnoにあたると誰が思うでしょうか。<br />　一般的なshowがdisplayコマンドに当たるのですが、何度showと打ち込んだかわかりません。<br /><br />　数時間いじっていたらなれたものの、久しぶりにいじる度にこの思いをするのは辛いですね。中身は悪くないのですが…。<br /><br />　せっかくなので、H3Cコマンドラインで遊ぼうとstackingに参加させてGiga1/2/1とかできるかと思ったのですが、stackingは10Gインターフェースを使わないとダメな模様でした。virtual stacking的に動かないかなあと思ったのですがちがうんですね。それならclusterに参加させようと思ったのですが、よくわからずNDPでは見えるもののクラスタには誰も参加してくれませんでした。悲しい。ただ理解できてないだけですが。<br /><br />　まあ、この程度の音なら無視できる範囲な気もするので、とりあえず交換する方向で検討中です。<br /><br /><a href=images/P9231125_R.JPG class=lb><img src=images/P9231125_R.JPG width=500px></a><br><br /><br />　またおもちゃが入り次第また更新していきます。]]></description>
	</item>
</rdf:RDF>
