[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:56571] Re: squeezeで、ポート80及びポート443において、ipv4とipv6との両方のtcpをListenする方法について



楠根です。

(2012/09/29 10:24), Satoru Otsubo wrote:
> (1)
> 「# apache2 -V
>   -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)」
> が、「起動すると、必ず上記(i)が起きる」という意味ならば、
> (ii) tcp4及びtcp6の80及び443が表示されたり、
> (iii) tcp4の80及び443のみが表示されたりも
> しますので、apache2にはバグがあるということでしょうか ?

設定の中で IPv4 と IPv6 それぞれ待つように書いてあったりしませんか?
両方書いてあって起動時にそれぞれの処理が並列で開始され、
起動ごとに早く処理が進んだ方のみが動くような状況になっているのでは?
というのが私の推測です。

mapped address を使う設定でなければ両方別々に LISTEN 状態になりますが、
mapped address を使う設定であればいずれか先に LISTEN した方のみが動作し、
後から LISTEN した方はアドレス重複でエラーとなります。
この場合、Apache のログに何か残っているかもしれません。

> (2)
> 「# apache2 -V
>   -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)」
> が、「apache2を起動すると、上記(i)~(iii)のいずれが起きるか分からないが、(i)が起きた場合は、
> IPV6 socket で IPv6 address のみならず、IPv4-mapped IPv6 address も扱える」という
> 意味ならば、
> どういう場合に(i)や(ii)が起きるのか
>   (例えば、/etc/hosts、/etc/resolv.conf 或いは
> /etc/apache2/sites-availableの内容次第で、(i)や(ii)が起きるのか)
> を知りたいと思います。

前述の推測があっているとするとタイミング問題のような気がします。
単に両方対応できればよいなら IPv4 側の設定を消すとよいかと。
--
Takeshi Kusune <kusune@xxxxxxxxxxxxxx>