前々から気になっていたのですが、android端末のブラウザからニフティのメールが読めなくなってしまいました。
メールが読めなくなったというか、より正確にはメールを読むためのWEBページにアクセス出来なくなりました。
これまで全くアクセス出来なかったのかというとそんなことは無く、何度か繋がっていたときもあります。ですが、今はまず間違いなく繋がりません。
繋ごうとすると、
となります。
どうも『HTTPS』なページにアクセス出来なくなってる気がするなぁ、とgoogleで検索してみたところこのようなページをみつけました。
http://code.google.com/p/android/issues/detail?id=5756#makechanges
まさにここで議論されていることが私のところでも起きているような気がします。
内容としては、
・証明書の形式がマッチしてないんじゃないか。
・DNS情報が更新されてないんじゃないか。
みたいな感じでしょうか。
ここにも書かれているように、
・android標準のブラウザ
・Dolphine browser
では繋がりませんが、
・Opera mini
では繋がります。
ここに書かれている通りなのかなぁ、と思いつつも、何か今一つしっくりこないのでちょっと挙動を調べてみました。
こちらが「Opera mini」の通信状況、
「opera_ok」をダウンロード
そしてこちらが「Dolphine browser」の通信状況です。
「dolphine_ng」をダウンロード
www.nifty.com のトップページから右の欄の中ほどにある「メール」(https://mail.nifty.com/mailer/)をクリックした辺りからのログなのですが、
OperaとDolphineのどちらも、最初はclink.nifty.com [202.248.20.243]に対して通信を行っています。
dolphineが送信したclient hello:
「dolphine_hello」をダウンロード
と、operaが送信したclient hello:
「opera_hello」をダウンロード
とで提示しているCipherアルゴリズムのリストが多少違いますが、どちらの場合もserverからは、
「じゃ、Cipher Suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA (0x0039) でよろしく。」
と応答があるので、「非サポート形式の暗号の証明書が使われているのでは?」という指摘は当たりません。
「server_hello」をダウンロード
ちゃんとSSLのセッションは成立しています。
dolphineの方ではアルゴリズム交換が終わった後、「Encrypted Alert」が出てますが、operaの状況や、dolphineのその後の流れを見るに、このAlertの中身は「close_notify」でしょう。ということで、ここまではどちらも状況は同じです。
問題はclink.nifty.com [202.248.20.243]とのセッションを終了した後の挙動です。
operaはmail.nifty.com [202.248.175.134]と通信を始めるのに対して、
dolphineは [184.72.178.119]と通信を始めています。
「何だこのアドレスは?」ということでnslookupしてみたところ、
名前: ec2-184-72-178-119.compute-1.amazonaws.com
Address: 184.72.178.119
と出てきました。amazonのクラウドサービスのサーバーっぽいです。
dolphineはこのサーバーに対して「メールを下さいな」と言っているので、サーバーからは「そんなもの知らねえよっ!」と悲しい結果になってしまってます。
どうもdolphineはHTMLの解析かJavaスクリプトだかなんかのスクリプトの実行結果が、サーバー側が期待している結果と異なったものになっているのではなかろうかという気がします。
おそらくandroid標準のブラウザもdolphineと同じ挙動をしているのでしょう。
う~ん、、、メール読むときはoperaを使うか…
最近のコメント