<div dir="ltr"><div>Руками пересчитал количество bind в выводе strace, да, их стало меньше.</div><div>Да, этот вариант действительно не рабочий.</div><div>Пока что сделано через fake bind, загружаемый через LD_PRELOAD. Костыль, конечно.</div></div><br><div class="gmail_quote"><div dir="ltr">чт, 15 нояб. 2018 г. в 16:55, Maxim Dounin <<a href="mailto:mdounin@mdounin.ru">mdounin@mdounin.ru</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello!<br>
<br>
On Thu, Nov 15, 2018 at 12:42:51PM +0300, kpoxa wrote:<br>
<br>
> Добрый день.<br>
> <br>
> Не помогает такой вариант:<br>
> <br>
> http {<br>
>  server {<br>
>   server_name bind_only;<br>
>   listen 80;<br>
>   listen 443 ssl;<br>
>   location / { return 200;}<br>
>  }<br>
>  server {<br>
>   listen ip10:443;<br>
>  }<br>
>  server {<br>
>   listen ip11:443;<br>
>  }<br>
> }<br>
> stream {<br>
>  server {<br>
>   listen ip1:443;<br>
>  }<br>
>  server {<br>
>   listen ip2:443;<br>
>  }<br>
>  server {<br>
>   listen ip3:443;<br>
>  }<br>
> }<br>
> <br>
> Всё равно nginx при проверке синтаксиса делает bind ко всем адресам,<br>
> которые указаны в listen;<br>
<br>
Как я уже писал ранее, если один и тот же порт пытаться <br>
использовать в разных модулях - будут проблемы.<br>
<br>
В приведённой конфигурации - в http-модуле будет создан <br>
listen-сокет на *:443, а в stream-модуле - сокеты на ip1:443, <br>
ip2:443, ip3:443.  Вероятно, именно попытки bind'а на ip1:443, <br>
ip2:443 и ip3:443 вы приняли за "делает bind ко всем адресам".  На <br>
самом деле не ко всем, а только к тем, что указаны в <br>
stream-модуле.<br>
<br>
Однако проблема не в этом, а в том, что на Линуксе такая <br>
конфигурация банально не заработает, так как открыть сокет на <br>
ip:443 при имеющемся открытом сокете на *:443 - на Линуксе <br>
нельзя.<br>
<br>
-- <br>
Maxim Dounin<br>
<a href="http://mdounin.ru/" rel="noreferrer" target="_blank">http://mdounin.ru/</a><br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></blockquote></div>