SmallStyle


2012-08-01

_ 日記を IPv6アドレスからでも閲覧できるようにしてみた

利用しているプロバイダーで今日から IPv6アドレスが割り当てられるようになったので,せっかくなのでこの日記も IPv6アドレスからでもアクセスできるようにしてみた.

さくらの VPS では「さくらの6rd(トライアル)」として,IPv6接続サービスを提供されているのでサーバー側はこの手順の通りに設定しています.

割り当てられた IPv6アドレスで Web サーバーにアクセスできるように設定します.ここでは Nginx を利用していて,以下の定義を追加しました.

server {
  listen [2001:e41:31d4:9423::1]:80;
  ...

その後,上記のターゲットとホスト名を DNS 情報に登録してしばらく待って,以下のように確認.

$ dig -t AAAA www.smallstyle.com
...
;; ANSWER SECTION:
www.smallstyle.com.	3536	IN	AAAA	2001:e41:31d4:9423::1

ブラウザでも指定したサーバー名でアクセスすると問題なく表示され,Nginx の AccessLog にも IPv6アドレスでアクセスされたログが記録されていたので,ひとまず IPv6アドレスでのアクセスは問題ないことが確認できた.

せっかく IPv6アドレス対応したのでIPv6アクセスを Google Analytics で計測するを参考にして,この日記でも同様の設定してみた.IPv6アドレスかどうかの判断は以下のようなプラグインで判定している.

require "resolv"
def ipv6?
   Resolv::IPv6::Regex =~ @cgi.env_table_rack['HTTP_X_REAL_IP']
end

このプラグインで接続元の IP アドレスが IPv6アドレスかどうかを判定するようにしている.Rack 環境だと remote_addr からではなくて,上記のように取得しないと接続先の IP アドレスは取得できない.ひとまずついさっき仕込んだばかりなので,Google Analytics での計測がうまく動作しているかどうかはまた今度.

つづき: 2012-08-08

about me

いろいろと興味を持ったことを書いてます.ちょっとしたことは hb(@smallstyle) on Twitter で書いてます.

Archive

2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|12|