主要なサーバアプリの設定例:これから始めるIPv6(4)(2/2 ページ)
IPv4アドレス在庫の枯渇やWorld IPv6 Dayの実施に伴い、「そういえば昔IPv6について読んだけれど、いまはどうなっているんだろう?」と感じている人も多いのではないでしょうか。最新状況を踏まえたIPv6の「基礎」を改めて紹介します。(編集部)
非常に容易なpostfixのIPv6対応
メールサーバとしてさまざまなOSに標準で採用されているPostfixは、IPv6への対応が非常に容易です。
PostfixをIPv6に対応させるには、以下の設定をmain.cfに追加するだけです。
・main.cfの設定
inet_protocols = all # もしくは、 # inet_protocols = ipv4, ipv6
これで、PostfixはIPv4でもIPv6でも接続を受け付けるようになります。なお、IPv4での接続は受け付けず、IPv6でのみ受け付けるように設定するならば、
inet_protocols = ipv6
としてください。
今回のネットワークでは、メールサーバには2001:db8::25:1、2001:db8::110:1、2001:db8::143:1が割り当てられています。このようなケースで、2001:db8::25:1と::1のみでメールを受け付けたい場合には、main.cfに以下のような設定を入れる必要があります。
inet_interfaces = [::1], [2001:db8::25:1]
IPv6アドレスを記載する場合には、[ ]で囲む必要があるので注意が必要です。
メールを受けるアドレスだけでなく、メールを送り出す際のアドレスも固定したいことがあります。このような場合には、やはりmain.cfに
smtp_bind_address6 = 2001:db8::25:1
のように設定してください。
Postfixの設定では、IPv4アドレスを記載できるところには、IPv6アドレスも記載できます。ただし、IPv6アドレスを記載する場合に、[ ]でくくる必要がある場所と、くくってはいけない場所があります。
この区別は非常に分かりにくいのですが、マッチリストを設定できるところ(例えばmynetworksなど)では[ ]でIPv6アドレスをくくり、そうでない場所ではくくらないようにしてください。
この辺の詳細はマニュアルを参照してください。また、postfixに設定を投入する際には、まずpostfix checkコマンドを用いるようにすると、文法チェックができます。
メール配送エージェント、dovecotのIPv6対応
dovecotはPOP3およびIMAP4に対応したメール配送エージェント(MDA)です。また、Postfixと連動させてSMTP AUTHを行わせることもできるため、非常に便利なMDAサーバアプリケーションとなっています。そのため、近年利用者も増えつつあります。
dovecotをIPv4、IPv6の両方に対応させるには、dovecot.confにて以下のように設定をする必要があります。
・dovecot.confの設定例
listen = *,[::]
以前(例えばCentOS 5に付属のものなど)は、listen = [::]と記載するだけでIPv4もIPv6も利用できるようになっていましたが、dovecot 1.1から記載方法が変わったので注意してください。
IMAP通信やPOP通信をするIPv6アドレスを制限したい場合には、Postfixの設定と同様、dovecot.confを以下のように設定してください。
imap_listen = 192.0.2.4,[2001:db8::143:1] pop3_listen = 192.0.2.4,[2001:db8::110:1]
dovecotにおいても、設定ファイル中のIPv4アドレスを記載できる個所にはすべて、IPv6アドレスも記載できます。その際には、IPv6アドレスを[ ]でくくってください。
古くからIPv6に対応しているApache 2
Apache 2は、非常に古くからIPv6に対応しているサーバアプリケーションの1つです。現在では、Apache 2をインストールして起動すれば、それだけでIPv6での接続を受け付けるようになっています。つまり、特別なことは何も必要ありません。
Apache 2の設定の際に唯一注意すべき部分は、
・IPv6アドレスを記載する場合、[ ]でくくる
ということだけです。これさえ覚えておけば、IPv4アドレスを記載できる場所には、原則、IPv6アドレスも記載できますので、望む挙動をさせることができるでしょう。
・IPv6アドレス記載の例
Listen 192.0.2.2:80 ←IPv4の場合 Listen [2001:db8::80:1]:80 ←IPv6の場合
これでIPv6対応のWebサーバを立ち上げることができます。
なお、Apache2では、接続してきた端末のIPアドレスを逆引きして、そのドメインを利用したアクセス制御を行う場合があります。この機能はIPv6でも動作しますが、IPv6では個々の端末のIPv6アドレスが逆引きできるとは限りません。つまりIPv6を利用する場合、「接続元のアドレスの逆引きを利用した接続制限」は、望むように動作しない可能性があります。従って、この機能を利用する場合には十分に注意してください。
また、Apache2に限りませんが、WebサーバがIPv6に対応したとしても、その上で動作するWebアプリケーション(ブログシステムやeコマースシステムなど)がIPv6で正常に動作するとは限りません。また、Webシステムでしばしば利用されているシングルサインオン(SSO)などの認証機構に関しても、IPv6環境で正しく望むような動作をするかは不明です。
このようにWebサーバをIPv6対応とする場合には、Webサーバだけでなく、Webアプリケーションに関しても十分に注意を払う必要があります。
試して手軽さを実感!
サーバ自体をIPv6に対応させることは、非常に容易です。特に、一般に利用されているサーバアプリケーションは、大半がIPv6に対応しています。その意味では、IPv6対応サーバを構築することは大変簡単になりました。
皆さんも、IPv6サーバを立ち上げて、いろいろ試してみることをお勧めします。そうすれば、IPv6サーバの構築はそれほど難しいものではないことを実感していただけるのではないかと思います。
Copyright © ITmedia, Inc. All Rights Reserved.