LoginSignup
5
4

More than 5 years have passed since last update.

さくらのVPSでIPv6に対応する(ubuntu16.04)

Posted at

さくらのVPSにおいて、IPv6はデフォルトでは無効化されているようです。
それを知らずにAAAAレコードを登録してしまい、通信不良を起こしてしまっていました。
(コンパネにIPv6アドレス書いてあったからなんだいけるのか、と思ってしまった)
対応内容を備忘録として残しておきます。
内容が間違っている場合やマズい場合は、ご指摘いただけると大変助かります。

IPv6を有効にする

とはいえ、公式サイトに有効化の方法が書いてあったので、この通りに操作すればひとまずIPv6の通信が可能になります。
https://help.sakura.ad.jp/hc/ja/articles/115000066021-IPv6有効化手順-Ubuntu-16-04-

iptables

IPv6での通信を受けるようになったので、ip6tablesを確認しておきます。

ip6tables -L

もしガバガバだった場合、iptablesと同様に使うポート以外は制限しておきましょう。

もしufwを使う場合

ufwを使うのが楽ですが、さくらのVPSの場合、デフォルトの設定として/etc/iptables/iptables.rulesが適用されます。
こいつがあるとufwをenableしてサーバを再起動したとしても、この設定が有効になり、ufwはinactiveにされちゃいます。
なので、適当なディレクトリに移しちゃいましょう。

参考:http://blog.mogmet.com/how-to-enable-ufw-on-sakura-vps/

mv /etc/iptables/iptables.rules /home/ubuntu/

あと、ufwがIPV6=yesになっているか確認を忘れずにしておきます。

vi /etc/default/ufw
/etc/default/ufw
# Set to yes to apply rules to support IPv6 (no means only IPv6 on loopback
# accepted). You will need to 'disable' and then 'enable' the firewall for
# the changes to take affect.
IPV6=yes

あとは普通にufwで設定できます。

webサーバの設定確認

ApacheやnginxなどのWebサーバの設定を確認し、IPv6をlistenするように設定を変更しておきます。

nginxの場合はこんな感じです。
nginx -V--with-ipv6があるか確認しておいたほうがいいですが、最近のnginxならデフォルトでONのはず。

server {
  listen 80;
  listen [::]:80; #←これを追加
  ~
}

AAAAレコードを設定する

DNSのAAAAレコードにさくらのVPSコントロールパネルより確認できるサーバのIPv6アドレスを設定します。

IPv6で接続できるか確認

最後にIPv6で接続できるか確認します。
http://ipv6-test.com/validate.php

最後に

こんな感じでIPv6に対応することができました。
CentOSでも大体同じ対応でいけるかと思います。
インフラ周りはよくわからなくてよくわからないですけど、いい勉強になりました。

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4