All posts by htajima

iPhone のIPv6アドレスを確認する

iPhone5 (au版) のLTEでIPv6接続する の記事にてLTE網側からiPhone に付与されたIPv6アドレスの確認はhttp://test-ipv6.com/ 等の外部のWebサイトにアクセスすることで行っていました。

こんな感じにIPv4/v6のアドレスが「それぞれ1つだけ」表示されます。

 

 

IPv6アドレスはリンクローカルも含めて複数付与されることが多いですが、外部サイトにアクセスする方法ですと実際にiPhoneに付与された全てのIPv6アドレスを確認することはできません。

WiFi接続であればIPv4アドレスは表示できますが、IPv6アドレスの表示は非常に限定されてます。私が知るかぎりでは左の図のようにDHCPv6で取得できるDNSリゾルバのアドレスが表示されますが、端末のアドレスはIPv4だけです。

セルラー網(LTE や 3G)についてはiOS標準機能ではIPv4/IPv6ともにできなそうです。

 

 

iPhoneに付与されたIPv4/v6アドレスを表示できるアプリがいくつかあるようです。

ShowAddress

iOSデバイスが持っているインターフェース一覧と付与されているIPアドレスが表示されます。セルラー網のインターフェースはpdp_ip0、WiFiは en0 です。

一覧性に優れているのですぐ確認したいときに便利です。

 

 

 

 

 

Ip6config

こちらもIPv4/v6共に表示できます。一覧性はShowAddressのほうがよいですが、こちらはインターフェースのGPRS等の詳細な情報が表示できるようです。


USB接続のディスプレイアダプタをOS X 10.9 Mavericks で使う

Macbookに外部ディスプレイをつなげて複数モニタを使いたい場合、Apple純正のディスプレイアダプタをつかうことがあります。

しかし Macbook AirなどはアダプタをつなげるThunderbolt(または Mini display)ポートが1つしかないので、複数枚の外部ディスプレイをつかうことが出来ません。(Macbook Proは2つありますが、それでも3つ以上のディスプレイはムリ)

より多くの外部ディスプレイを使うには、空いているUSBポートが活用できればよさそうです。

探してみたところ、USB接続アダプタはApple純正には無いようですが、IO-DATA製USB-RGB/D2 があります。

http://www.iodata.jp/product/av/ga/usb-rgbd2/

上記ページによると”Mac OS X 10.4~10.6″ に対応とありますので、10.9 のMarvericks は対応外です。

しかし、Display Link社のチップを使っているようなので、同社サイトから入手できるドライバで Marvericks でも使えました。

http://www.displaylink.com/support/mac_downloads.php

ただし、確認した11/8 時点(OS X 10.9 (13A603))では幾つか制限事項があるようです。

http://www.displaylink.com/support/ticket.php?id=354

手元では以下を確認しました。

  • Safari はブリンク(ちらつき)がはげしい
  • ウィンドウがディスプレイをまたぐ表示はできない (例:USB-RGB/D2 のディスプレイとThunderboldのディスプレイにまたがるウィンド表示は不可)

私の使い方では上記は気にならない範囲でしたので、そのままで使っています。

 

iPhone5 (au版) のLTEでIPv6接続する

auのiPhone5 のLTEでIPv6接続ができるときいて、試してみました。iPhone5s,iPhone5cもできるらしいが未確認です。

10/23追記: iPhone5s でも動作確認済との情報をいただきました。matsuhiraさんthx!

10/23追記: iPad mini でも動作確認済との情報をいただきました。tcshさんthx!

確認環境: iPhone5(au版) iOS7.0.2
確認日:2013/10/3 , 10/23

■LTE NET for DATA を契約する

LTEでのIPv6接続を使うには LTE NET for DATA を追加契約する必要があります。

http://www.au.kddi.com/mobile/charge/list/ltenet-for-data/

もちろんiPhoneから申し込みできます。残念ながら申し込み後に即使えるわけでなく、翌日以降に利用可能になるようです。
私の場合は夕方に申し込んだら翌々日に開通連絡がきました。

この契約はすこし料金表示が紛らわしくて、上記ページには

月額使用料      525円 (税込)
通信料      0.63円 (税込)/KB (注2)

と書いてあります。 ええっ、従量課金なの? パケ死にはいやだなーとブルってしまいましたが、コールセンターに電話して確認したところ、オプションの 「LTEフラット」 に入っていれば従量でなく定額課金になるそうです。
通常はiPhone5契約時にLTEフラットに入っているので定額課金になるはずです(もちろん自己責任で!)。

■プロファイルのインストール

上記のLTE NET for DATA を使うためにプロファイルをインストールします。

http://www.au.kddi.com/iphone/support/guide/lte-net-data.html

■iPhoneでニヤニヤする

iPhoneでipv6接続できることを確認してニヤニヤしましょう。

■テザリングでニヤニヤする

なんとデザリングでもPC側にIPv6グローバルアドレスが降ってきます。
これまたニヤニヤしましょう。

bash-3.2$ ifconfig
lo0: flags=8049 mtu 16384
     options=3
     inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
     inet 127.0.0.1 netmask 0xff000000
     inet6 ::1 prefixlen 128
gif0: flags=8010 mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863 mtu 1500
     ether 20:c9:d0:7a:01:5f
     inet6 fe80::22c9:****:****:15f%en0 prefixlen 64 scopeid 0x4
     inet 172.20.10.3 netmask 0xfffffff0 broadcast 172.20.10.15
     inet6 2001:268:d005:d3c1:22c9:****:****:15f prefixlen 64 autoconf
     inet6 2001:268:d005:d3c1:cc20:744d:4dd3:2e9d prefixlen 64 autoconf temporary
     media: autoselect
     status: active

PCでIPv6接続性を確認する

PCにリンクローカルなIPv6アドレスのリゾルバが付与されます。

bash-3.2$ cat /etc/resolv.conf
#
# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.
#
# This file is automatically generated.
#
nameserver 172.20.10.1
nameserver fe80::1820:494d:afe3:6f18

が、このリゾルバは動かないようです。そもそも到達性もない。


bash-3.2$ dig www.apnic.net aaaa @fe80::1820:494d:afe3:6f18

; <<>> DiG 9.8.5-P1 <<>> www.apnic.net aaaa @fe80::1820:494d:afe3:6f18
;; global options: +cmd
;; connection timed out; no servers could be reached

bash-3.2$ ping6 fe80::1820:494d:afe3:6f18
PING6(56=40+8+8 bytes) fe80::22c9:d0ff:fe7a:15f%en0 --> fe80::1820:494d:afe3:6f18
ping6: sendmsg: No route to host
ping6: wrote fe80::1820:494d:afe3:6f18 16 chars, ret=-1
ping6: sendmsg: No route to host
ping6: wrote fe80::1820:494d:afe3:6f18 16 chars, ret=-1
^C
--- fe80::1820:494d:afe3:6f18 ping6 statistics ---
2 packets transmitted, 0 packets received, 100.0% packet loss

IPv4のリゾルバはもちろんいけます。

bash-3.2$ dig www.apnic.net aaaa @172.20.10.1

; <<>> DiG 9.8.5-P1 <<>> www.apnic.net aaaa @172.20.10.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16548
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.apnic.net.               IN     AAAA

;; ANSWER SECTION:
www.apnic.net.          4189     IN     AAAA     2001:dc0:2001:11::211
www.apnic.net.          4189     IN     AAAA     2001:dc0:2001:11::194

;; Query time: 52 msec
;; SERVER: 172.20.10.1#53(172.20.10.1)
;; WHEN: Wed Oct 23 10:16:35 JST 2013
;; MSG SIZE  rcvd: 87

bash-3.2$

■iPhoneのIPv6を無効化する

切り替え設定はなさそうなので、単純にプロファイルを削除します。
設定>一般>プロファイル から、LTE NET for DATA のプロファイルを削除しましょう。

再度IPv6を有効化するにはプロファイルを再インストールします。頻繁にOn/Off したい方は冒頭のプロファイル置き場のURLをブックマークをしておくとよいでしょう。

カンファレンスカンファレンス いってきました

ITコミュニティのイベント運営を語り合うカンファレンスカンファレンス に行って来ました

ハッシュタグ #conconja

本企画を開催運営していただいた関係者の皆様、会場を提供していただいたマイクロソフトさん、スピーカやお話してくださったみなさんに感謝します。
自分が協力しているイベントで生かせるお話が沢山きけて大変有意義でした。

書きなぐりのメモですが死蔵するよりマシかなということで貼り付けておきます。
コメント歓迎です。

—-

Q1.なんのためにカンファレンスをやるのか
ープログラマーへの恩返し
ー20年前だったらオープンソースなしではやっていけなかった。恩返し
ーNode が趣味で面白いから、それだけ。

Q.仕事との兼ね合いはどうやってるの?イベントの追い込みだとつらいよね。
ー仕事と並行。リリースと調整しながら。土日と深夜にやる。
ー在宅なので柔軟にこなせる
ー自分が主催すれば自分が空いてる日にできる。hack!

Q2.参加者の話(参加者数の想定、キャンセル率等)
ーキャンセル率15~40%と幅あり。
ー交流出来る場を提供
ーキャンセル率は年々増えてきている。

Q3.予算
ーLL 500人、200万
ーYAPC 1000人、1200万
ーPHP 1500,80万円+NW費用
ーnode 500人、入場無料
ーPy 480人、470万
ーー会場は大学とかで無料。足は出ない。3000円/人。価値として見てもらう。
ーRuby会議
ーーYAPCとおなじくらい
最近値上げした理由は2つ
ーー数千円だと安すぎて来場おおすぎる。高くしても来たい人に来てほしい。
ーー海外Rubyカンファレンスの価格に合わせている

ーphp でランチ待ち合わせ場所を作っている。出会い系?

Q4.会場
ーNW問題にはみんな困っている
ーLLはNOCチームがいて頑張っている。
ーRuby kaigiは人力でなんとかしている

飲食問題
ー費用をかけると結婚式メニューがでてくけど、炭水化物とビールがあればいい。
ー海外だと会場ロビーで飲食できて、交流ができる。日本だと飲食禁止が多い。
ーー屋外にテントをかりて飲食できるようにした。
ー懇親会会場の場所確保に失敗した

Q5.スポンサー
ースタッフ、関係者とのコネクションが大きい
ー最初は正攻法で問い合わせ窓口に。徐々に声もらえるようになった
ースポンサー的にはセッションを持たせて貰える、アンケートができるといい。
ーー規模感、来場者の属性があると通りやすい。
ーLLはスポンサー原則なし。スポンサー回れる(ほどやるきのある人)はいない。
ーー昨年はLL10周年なので懇親会スポンサーを公募した。3社頂いた。

Q6.スタッフ、運営
ーLL 40名
ーphp 世代交代は活発
ーpy 15名+当日スタッフ20名
ーYAPC 主催2名、コアスタッフ4名、当日30~40名
ータスクの属人性が高くて、新しいスタッフに仕事が触れない

■ビアハッシュのトーク
Q.ノウハウの継承はどうしているの?
ードキュメント化
ーーツールは様々。google docs,なんかの商用ツール(ごめん名前失念)
ー経験者と新人のペアで動いている

Q.イベント運営のプロから見ると素人すぎる。それに対するコメント
ー費用をどこまで掛けられる次第では
ー素人さというのは大事なのでは

(他いっぱいあったけど割愛)

LL Decade のトラヒック解析について

LL decadeに参加してきました。

LL Decade

LLには以前観客として参加したことはありますが、今回はネットワークチーム(LLNOC)として参加しました。前回のLLで手がまわらなかったネットワーク監視系でのお手伝いということで声をかけていただいて、sFlowを集めてのトラヒック解析を担当しました。

sFlow周りのネットワーク構成はこんな感じ。実際のNW構成よりかなり簡略化して書いてます。

トラヒック情報のsFlowはセンタースイッチのAX3640S と PoEスイッチの X600(2台)からだしています。sFlowを集めてトラヒック解析するフローコレクタ(今回はGenieATM)は同じ会場内に置くのが常套手段ですが、なにせ今回はNW設置作業に許された時間は1時間だけ。その短時間のうちに設定調整作業をするのは厳しいので、今回はコレクタを会場に持ち込まずにリモートサイトに置き、会場とリモートサイト間をVPNでつないで、sFlowはVPNを経由して送ることにしました。

当日のトラヒック例。googleが多いですね。

VPNはVyattaのOpenVPNを使いました。Vyattaのコンフィグはこんなかんじです。ポイントは2つ。

1.VPNのエンドポイントのうち会場側vyattaがグローバルアドレスを持っていないので、会場側VyattaからVPNを張りに行く形になります。リモート側のVyattaはVPN開始を待ち受けています。
2.MTUサイズを小さめにしておく。デフォルトだと大きめパケットを通過しないことがあったので、今回はopenvpn-option で調整。あまり厳密にかんがえずにえいっで1280にしてます。

Vyattaのコンフィグ。

■会場側Vyatta(vyatta-site)

 interfaces {
     ethernet eth0 {
         address 10.3.2.1/24
         duplex auto
         speed auto
     }
     openvpn vtun0 {
         description LL2012
         local-address 10.0.0.2
         mode site-to-site
         openvpn-option "--fragment 1280 --mssfix"
         remote-address 10.0.0.1
         remote-host 61.x.y.z
         shared-secret-key-file /etc/openvpn/key.psk
     }
 }
 protocols {
     static {
         interface-route 192.168.253.0/24 {
             next-hop-interface vtun0 {
             }
         }
     }
}

■リモートサイト側(vyatta-remote)のVyatta設定。

interfaces {
     ethernet eth4 {
         address 61.x.y.z/28
         duplex auto
         smp_affinity auto
         speed auto
     }
     ethernet eth5 {
         address 192.168.253.1/24
         duplex auto
         smp_affinity auto
         speed auto
     }
     openvpn vtun0 {
         description LL2012
         local-address 10.0.0.1
         mode site-to-site
         openvpn-option "--fragment 1280 --mssfix"
         remote-address 10.0.0.2
         shared-secret-key-file /etc/openvpn/key.psk
     }
 }
 protocols {
     static {
        interface-route 10.3.0.0/16 {
             next-hop-interface vtun0 {
             }
         }
     }
}

JANOG30 のUSTREAM中継について

ここ最近のJANOG MeetingではUSTREAMによる中継を行っています。
JANOG30の中継をご覧になったかたはお気づきかと思いますが、過去の中継とは段違いの高画質で配信できました。

これは今回のホスト企業である倉敷ケーブルテレビ(KCT)さんのご協力と多くのスタッフの尽力により実現しました。

忘備録として中継システムといくつかのトピックスを書いてみます。

day1開始~15:45頃までの構成

構成図の上半分がKCTさんの担当範囲、下半分がJANOGスタッフの担当範囲です。
今回の中継はKCTさんにご提供いただいた高品質な映像に尽きます。従来はカメラ部分も含めて基本的に自前でアレコレとやってきましたが、今回学んだのは高品質な映像ソースにかなうものはないということです。

HDなカメラ3台構成+プロのカメラマンさんによる撮影です。

撮影した映像は会場裏手に配備された中継車に行きます。ここで画像調整とスイッチングをしてもらい、再び会場内に戻してプロジェクタ画面とミックス&エンコードしてUSTREAMに流します。ちなみにHD編集が可能な中継車は岡山県でこの1台だけだそうです。内部もみせて貰いましたが、うひゃーでした。中の機材を含めるとこれ一台でウン億円。これで作った絵をどうやっても画質が落ちるUSTREAM中継にするだけじゃもったいないなー。

day1 16:00頃~day2endまでの構成

初日の途中で中継が途切れました。じつは配信PCが突然落ちてしまい、PC再起動後にUSTREAM PRODUCE PROが起動しなくなるトラブルがありました。復旧を試みてプロジェクタは出せたもののカメラ映像が出てこない。どうもHDMIまわりがおかしいようでしたが切り分けする時間は無いので急遽バックアップの機器一式に総取り替えしました。休憩時間の15分間でバックアップPCほか一式をごっそり置き換えて再開にこぎつけました。

残念ながらバックアップPCはHDMIが食えないのでHD映像はあつかえず、泣く泣く標準画質のSDを送ってもらって配信しました。それでも十分きれいで、USTREAMを視聴していた何人かに聞いたところ違いに気付かなかったということでした。やっぱり映像ソースの品質のウェイトが圧倒的に高いのでしょう。

慌ただしく機器交換をしたあとの中継席の様子。雑然としてます。。。

エンコーダー

エンコーダーはUSTREAM PRODUCER PROです。配信設定は以下のよう。最終的にビットレートは約1000kbpsにしました。

JANOGミーティングはプレゼンスタイルなので動きが少ないため、フレームレートをデフォルトの半分程度に落として、その分画質を上げてます。自分の経験ではフレームレートが高いとクライアントPCの負荷が大きいようです。

こちらは交換後の配信PCのCPU負荷とメモリの様子。4コアのAMD Athlon(2.5GHz)と8Gメモリです。CPU負荷は常時30%程度でした。複数ソースで画質をあげての長時間配信ですとノートPCでは不安があります。

保険をたくさんかける

障害時の代替手段をたくさん考えておくという意味です。上述の構成は意外とシンプルに見えますが、用意して登場しなかった機材は細かいものも含めればメイン機材の3倍はあります。今回はバックアップ機が登場しましたが、バックアップ機も壊れる可能性もあります。その場合はCEREVOのLiveShellを使う予定でした。それもダメなら手持ちのPCで、それもだめなら、、、、。また、何らかのアクシデントでKCTさんが当日来れない可能性もあるのでカメラも用意していました。
フォールバックするに従って品質は落ちますがゼロには絶対しないことを心がけてます。JANOG meetingは録画無しの一発勝負かつライブ感が大事なので、バックアップのバックアップのバックアップのそのまたバックアップくらいまでは準備していました。

ここに書いていないTipsはたくさんあるのですが、それは別途ぼちぼち書いていくつもりです。(いつになるか不明ですが)

中継の影で動いていた人たち

繰り返しになりますが今回の高画質中継はKCTさんのご好意で実現しました。ホスト企業としてフロントに立って頂いた小山さん、KCTのスタッフの皆さんに感謝します。KCTさんはカメラマンさんと中継車側含めて5名のプロで動いていただいていました。高価な設備も動かす人がいなければただの箱です。
また、JANOGスタッフの中継担当のたかたさんとどんちゃん、前日準備も含めて2.5日間ドップリと構築から操作とホントお疲れ様でした。配信操作と配信チェックをしていると、ステージ目の前の最前列に座っているのにもかかわらず全くプレゼンの内容が頭に入ってきません。スタッフをやるとミーティングに参加できないジレンマにいつも悩まされることですが、お二方とも楽しんで?やってもらいました。たかたさんにはたくさんの機材の持ち込みもしていただき、おかげで私とやまちゃん(スタッフ)はかなりラクをさせていただきました。多謝。

また、安定した会場ネットワークを作ってくれたネットワークチームにも感謝します。中継品質にとってNWは大きな要素で、今回は会場の都合上NWの代替え手段確保が難しかったのでアップロード回線が安定していて本当に助かりました。

WordPress の編集欄のテキストが見えない

WordPress 3.3.1を入れたところ、編集欄に文字を入れてもなぜか表示されない。

どうやら、フォントが白色で、かつ背景も白なので見えないだけの模様。マウスで文字部分を選択すると見える。

なんんじゃこりゃー。
テーマを変えても編集欄は変わらないし、設定でも編集画面については見当たらない。
あれこれ探してみて回避策を発見。
http://wordpress.org/support/topic/white-text-invisible-text-in-visual-editor-on-admin-panel

上記リンクページを参考に

/wp-includes/css/editor-buttons.css.
を以下のように編集

編集前
.js .tmce-active .wp-editor-area{color:white;}

編集後
.js .tmce-active .wp-editor-area{color:black; /* bwh */}

無事に以下のように表示されるようになった。

なんだろうなー。よくわからん。

補足:他のブラウザで試したところ再発しましたが、キャッシュをクリアしてみたら治りました。