IPv4 & IPv6

B.R. reallfqq-nginx at yahoo.fr
Sat Apr 6 15:01:58 UTC 2013


Add-on:

Besides, as I explained earlier, having generic 'listen' directives implies
some difficulties.

For example, I am using 2 virtual servers to serve content for the same
server_name, one listening on port 80, the other on port 443, allowing me
to serve cotnent for HTTP and HTTPS in different fashions.
Using generic 'listen' directive breaks that system and I'm stuck.

What would be an acceptable solution?
Thanks,
---
*B. R.*


On Sat, Apr 6, 2013 at 10:52 AM, B.R. <reallfqq-nginx at yahoo.fr> wrote:

> But as I noticed earlier, these configuration directives conflict with
> each other across multiple virtual servers...
> That's a huge step backwards.
>
> H
> ​aving to specify them only once across every configuration file is
> counter-intuitive.
> Why isn't nginx able to ​summarize all the needs for listening sockets
> across configuraiton files before attempting to open them?
> Having to define those listening directives in a 'generic default server'
> is awkward and looks ugly.
>
> ---
> *B. R.*
>
>
> On Sat, Apr 6, 2013 at 6:39 AM, Maxim Dounin <mdounin at mdounin.ru> wrote:
>
>> Hello!
>>
>> On Sat, Apr 06, 2013 at 02:25:54AM -0400, B.R. wrote:
>>
>> > Hello,
>> >
>> > It seems I solved the problem...
>> > It was indeed by reading a little more carefully the doc
>> > http://wiki.nginx.org/HttpCoreModule#listen, thanks @Lukas! ;o)
>> >
>> > The '*:80' syntax is used for IPv4 listening, I don't understand why it
>> > works as-is for you Ted. Maybe Maxim will be of a better help on that
>> case.
>> >
>> > It is said that the IPv6 syntax will make Nginx listen for the 6to4 IP
>> > address syntax, making the websites reachable through IPv4, even if no
>> > specific IPv4 binding exist for the listening sockets.
>> > Using:
>> > listen [::]:80;
>> >
>> > I have:
>> > $ sudo ss -lnp|grep nginx
>> > 0      128                           :::80
>> > :::*      users:(("nginx",***,11),("nginx",***,11))
>> > 0      128                           :::443
>> > :::*      users:(("nginx",***,12),("nginx",***,12))
>> >
>> > You shall *not* have 2 'listen' directive if you did not separate you
>> IPv6
>> > and IPv4 stacks (with the sysctl net.ipv6.bindv6only directive set to
>> 1).
>>
>> This is wrong aproach and it will no longer work for you after
>> 1.3.x upgrade.  As I already suggested, use
>>
>>    listen 80;
>>    listen [::]:80 ipv6only=on;
>>
>> instead as a portable solution, which doesn't depend on a system
>> configuration.  (In 1.3.x, the "ipv6only=on" part can be removed
>> as it's now the default.)
>>
>> --
>> Maxim Dounin
>> http://nginx.org/en/donation.html
>>
>> _______________________________________________
>> nginx mailing list
>> nginx at nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20130406/c8c0f5bb/attachment-0001.html>


More information about the nginx mailing list