IPv6を喋れるサーバは今では簡単に持てるようになった。
DTIのVPSなんかだと標準でIPv6アドレスが付いてくる。↓
この日記のサーバはさくらのVPSを使っててIPv6対応済み。
さくらのVPSでIPv6を使うには以下のようにする。
Ubuntu 10.04 LTS から Ubuntu 12.04 LTS へのアップグレード --> [2012-05-07-3]
Ubuntu 12.04 環境で IPv6 アドレスを使う方法 --> [2012-05-08-8]
ところが、クライアント環境のほうでは、IPv6アドレスが
配られてない環境はまだまだ多いと思うんだ。
せめてウェブだけでも、IPv6でアクセスしたいのが人情。
ということで、IPv6のアドレスを持ったサーバ上に、
squidを使ったプロキシサーバを作ってみた。
用意するもの:
IPv6とIPv4アドレスを持っている Ubuntu 12.04 のサーバ
方針:
手軽に apt で入る Squid3 を使う。
オープンプロキシになりにくいようにポート番号は変える。
オープンプロキシになりにくいようにユーザ認証する。
ufwでは使うポートのみ開ける。
1. squid の設定
---
apt でインストール。
sudo apt-get install squid
認証用ファイル作成。
sudo htpasswd -c /etc/squid3/passwd <proxyユーザ>
設定ファイルをバックアップ
sudo cp -p /etc/squid3/squid.conf /etc/squid3/squid.conf.dist
設定ファイルを修正
sudo vi /etc/squid3/squid.conf
ポート番号を変更
http_port <変更したポート番号>
末尾にベーシック認証用の設定を追加。
auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/passwd
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
acl proxyuser proxy_auth REQUIRED
http_access allow proxyuser
以下の全部拒否の設定を行末に移動。
# And finally deny all other access to this proxy
http_access deny all
Squidを再起動。
sudo /etc/init.d/squid3 restart
2. ufw の設定
---
ポート番号を変更したsquid用の設定ファイル作成。
開けるポートは1つにする。
cd /etc/ufw/applications.d
sudo cp -p squid3 squid3-another
sudo vi squid3-another
cat /etc/ufw/applications.d/squid3-another
[Squid another]
title=Squid proxy cache another
description=Internet object cache (WWW proxy cache)
ports=<変更したポート番号>/tcp
ufw でアクセス許可。
sudo ufw allow 'Squid another'
確認。
sudo ufw status
3. 使ってみる
---
適当なブラウザで、プロキシ設定。
以下を眺めてにっこりする。
The KAME project ~ IPv6でアクセスすると亀が動く
http://www.kame.net/
IPv6@2ch掲示板 ~ IPv6でアクセスするとひろゆきが踊る
http://ipv6.2ch.net/
The NeGi project 2011 ~ IPv6でアクセスすると初音ミクがネギを振る
http://negi.ipv6labs.jp/
4. 雑感
---
Squid3 は、特になにもしなくても IPv6 が使えて便利。
設定ファイルを見ると、IPv6用の設定もあれこれできるようになってる。
以下の項目とか便利そう。
# dns_v4_fallback on
# dns_v4_first off
ってことで、ウェブアクセスのIPv6化も、
今の時代はそんなに難しくないでござるよ。
もっとIPv6に親しんで、World IPv6 Launch に参加しましょ。
今は日本企業少なすぎ。--> [2012-05-12-2]
先日、World IPv6 Launch に参加したんだけど --> [2012-05-08-8]
昨日の飲み会で、中の人に怒られた。
いたずらすんなよー。
「business websites」って書いてあるんだけど。
なんだよ個人名で登録って。
ごめんよー!!!
なんで見付かったかっていうと、参加日本企業を調べてたからとのこと。
http://www.worldipv6launch.org/participants/?q=1
このページで、サーチキーワードに、japan、を入れると、
参加している日本企業がわかる。
5/12時点での参加企業を見ると、
citydog http://www.citydog.me
LinodeClub http://www.linodeclub.com
BeaconNC Inc. http://www.benc.jp/
allbsd.org http://www.allbsd.org
SASAKI Ken http://www.pochi.cc/
KEYTEC http://www.kits.ne.jp/
SOUM Corporation http://www.soum.co.jp/
NextHop Co. Ltd. http://www.nexthop.jp
2KHz.net http://www.levistone.net/
haisaihiroki.com http://haisaihiroki.com
haisaihiroki.com http://haisaihiroki.com
HOGE SE Japan http://hoge.se/
KEYTEC Japan http://www.keytec.jp/
KEYTEC Japan http://www.keytec.gr.jp/
uso8000k http://www.uso8000k.net/
今のところ15サイトしかない。
2社ほど重複があるので、実際には13サイトか。
トータルエントリ数は、1,471 サイトほどなので、
日本からの参加は、全体の1%にも満たない。
NETWORK OPERATORS でも日本からの参加は今のところ KDDI だけ。
ちょっとひどすぎないか???
追記)
5/18時点では、21サイトに増えていた。
追記)
5/29時点では、59サイトに増えていた。
追記)
6/6(World IPv6 Launch開始)時点では、94サイト。増えたねえ。
ホームルータベンダで、NECアクセステクニカとYamahaがあるのが
なんか嬉しい。
http://nagaoka.techtalk.jp/ipv6-hackathon
やりたい、ってのは聞いてたけど、やるのか!!
廣海さんと小山さんの話が聞けるだけで参加する価値あると思う。
ハッカソンって楽しいんだよねえ。
LL Planets の時の IPv6ハッカソン
http://ll.jus.or.jp/2011/program/ipv6hackathon.html
そのときの公開資料
http://ll.jus.or.jp/2011/slide.html
ただ、LLのときは裏方だったのであんまりみんなのハックには
参加できなかったのよね。
どっちかというと、gihyo.jpに記事を書くにあたって、
takano32さんの調査の追試をしたり、あれこれ調べたりしてたときのほうが、
IPv6と戯れられたかも。
でもそういう調べものもみんながいるときにやったほうが楽しいと思う。
gihyo.jp に書いた紹介記事「IPv6をハックしよう~IPv6ハッカソン~」
http://gihyo.jp/dev/serial/01/llplanets/0002
サーバ側で、IPv6遊びをするなら、DTIのVPSを借りるのが一番楽だと思う。
標準でIPv6アドレスが付いてくる。
LLのときも提供してもらった。
アフェリエイトタグでも貼っておく。
ちなみにこの日記のサーバはさくらのVPSを使っててIPv6対応済み。
さくらのVPSの Ubuntu 12.04 環境で IPv6 アドレスを使う方法と、
World IPv6 Launch への参加方法はこの辺に書いた --> [2012-05-08-8]
さくらのVPSのアフェリエイトタグも貼っとく。
さくらでは 6rd を提供してるので IPv6 アドレスをさくっと付けられる。
さくらの6rd(トライアル)
http://research.sakura.ad.jp/6rd-trial/
Ubuntu 12.04 の場合も Ubuntu 10.10 の設定と同じようにできる。
6rd設定方法(Ubuntu10.10編)
http://research.sakura.ad.jp/6rd-trial/6rd-trial-ubuntu1010/
まずアドレスの計算。
% printf "2001:e41:%02x%02x:%02x%02x::1\n" 49 212 151 165
2001:e41:31d4:97a5::1
6rdインターフェイスの作成。
設定ファイルに追記。
sudo vi /etc/network/interfaces
以下を追加
↓↓↓
# 6rd
auto tun6rd
iface tun6rd inet6 v4tunnel
address 2001:e41:31d4:97a5::1
netmask 32
local 49.212.151.165
endpoint any
gateway ::61.211.224.125
ttl 64
up ip tunnel 6rd dev tun6rd 6rd-prefix 2001:e41::/32
up ip link set mtu 1280 dev tun6rd
サーバ再起動。
% sudo reboot
インターフェイスが付いてることを確認
% ifconfig tun6rd
tun6rd Link encap:IPv6-in-IPv4
inet6 addr: ::49.212.151.165/128 Scope:Compat
inet6 addr: 2001:e41:31d4:97a5::1/32 Scope:Global
UP RUNNING NOARP MTU:1280 Metric:1
RX packets:49 errors:0 dropped:0 overruns:0 frame:0
TX packets:52 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:18640 (18.6 KB) TX bytes:5132 (5.1 KB)
ping6 とか打ってみる。
% ping6 ipv6-test.net
PING ipv6-test.net(2607:f128:42:73::2) 56 data bytes
64 bytes from 2607:f128:42:73::2: icmp_seq=1 ttl=52 time=206 ms
64 bytes from 2607:f128:42:73::2: icmp_seq=2 ttl=52 time=206 ms
AAAA も付けてみる。
DNSのコントロールパネルから追加。
dig で確認。
% dig -t AAAA www.pochi.cc
...
www.pochi.cc. 3600 IN AAAA 2001:e41:31d4:97a5::1
IPv6でアクセスしてみるよ。
% w3m -6 http://www.pochi.cc/~sasaki/chalow/
IPv6でアクセスできるなら、World IPv6 Launch に参加しとくのがマナーよね。
World IPv6 Launch の日本語の説明
http://test-ipv6.jp/ipv6launch.html
ここから辿って、Website Operators 向けのとこ↓からJOIN。
http://www.worldipv6launch.org/form/?q=1
入力項目は以下にしといた
Name --> 個人名でいいのかな?まあフルネーム書いたった。
Country --> Japan
E-mail --> いつも使ってるの
URL --> http://www.pochi.cc/
IPv6 information page --> 空で
Submit するとメールが届くのでそのメールに書かれたURLをクリックするして登録完了。
World IPv6 Launch のロゴもはっておこー♪。
さくらのVPSのアフェリエイトタグも貼っておこー♪。
何もしなくてもIPv6が付く、DTIのVPSのアフェリエイトタグもついでに。
http://tools.ietf.org/html/draft-sakura-6rd-datacenter-00
大久保さんと獅子生さんが書いたもの。
すげー。