IPv6 enabled Nginx default bind port

Igor Sysoev is at rambler-co.ru
Sun Sep 6 16:07:18 MSD 2009


On Sun, Sep 06, 2009 at 04:24:31AM -0400, zobo wrote:

> Hi.
> Many thanks for your reply.
> 
> I do not want it to be ipv6only - I did however find the option in ru docs and source. I want it to be 6 and 4. As it is in case I put listen [::]:80. What I am suggesting is that if nginx is compiled --with-ipv6 that listen is by default [::]:80 instead of 80.
> 
> To be even more descriptive: If I have an ipv6 enabled nginx and put this in configuration
> 
> server {
>   root /var/www;
> }
> 
> This will listen on IPv4 port 80 and it will not be accessible over ipv6. I have to put:
> 
> server {
>   listen [::]:80;
>   root /var/www;
> }
> 
> If I then add another server declaration and forget to add listen [::]:80, nginx will fail to start up.
> 
> I'm just saying, if ipv6 is enabled, it is desired, and default listen should be [::]:80 instead od 80.
> 
> Hope I was able to explain better what I meant now.

Well, I understand your point.
I think that now IPv6 is still used occasionally and many people may
built nginx --with-ipv6 just in store or may use a package built --with-ipv6,
i.e. they do not really want ipv6.

And if nginx will bind() to "[::]:80" by default, ulimate result will
depend on OS IPv6ONLY settings: on FreeBSD nginx will bind to "[::]:80" only
while on Linux nginx will bind to both "*:80" and "[::]:80".


-- 
Igor Sysoev
http://sysoev.ru/en/





More information about the nginx mailing list