<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">14 мая 2018 г., 15:04 пользователь Ruslan Ermilov <span dir="ltr"><<a href="mailto:ru@nginx.com" target="_blank">ru@nginx.com</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Mon, May 14, 2018 at 12:14:28PM +0500, Илья Шипицин wrote:<br>
> на днях зарелизился centos-7.5, в нем, к сожалению, все по прежнему<br>
> <br>
> завел тикет<br>
> <br>
> <a href="https://trac.nginx.org/nginx/ticket/1553" rel="noreferrer" target="_blank">https://trac.nginx.org/nginx/<wbr>ticket/1553</a><br>
> <br>
> посмотрите ?<br>
> <br>
> 29 апреля 2018 г., 3:40 пользователь Валентин Бартенев <<a href="mailto:vbart@nginx.com">vbart@nginx.com</a>><br>
> написал:<br>
> <br>
> > On Saturday, 28 April 2018 15:03:49 MSK Илья Шипицин wrote:<br>
> > > привет!<br>
> > ><br>
> > > поддержка IP_BIND_ADDRESS_NO_PORT официально началась в ядре 4.2, но ...<br>
> > > ее портировали в 3.10 на CentOS-7.4<br>
> > ><br>
> > > однако, портировали не очень качественно. константа определена не в том<br>
> > > файле, в котором должна (и в котором ищет nginx)<br>
> > ><br>
> > > [root@xxx ~]# grep -r IP_BIND_ADDRESS_NO_PORT /usr/include/<br>
> > > /usr/include/linux/in.h:#<wbr>define IP_BIND_ADDRESS_NO_PORT    24<br>
> > > [root@xxx ~]#<br>
> > ><br>
> > ><br>
> > > т.е. если пакет собирать, как он собирается обычно, то поддержка<br>
> > > IP_BIND_ADDRESS_NO_PORT не включается (хотя могла бы).<br>
> > ><br>
> > > скажите, вы официальные пакеты собираете каким образом ? кажется, имеет<br>
> > > смысл поправить эту процедуру и дать эту крутую фичу пользователям<br>
> > > CentOS-7.4<br>
> > ><br>
> ><br>
> > Дело же не в ядре (не только в нем).  На линуксах интерфейс обеспечивает<br>
> > glibc и именно туда смотрит nginx.<br>
<br>
</span><linux/in.h> - это заголовочный файл ядра.  <netinet/in.h> - это<br>
заголовочный файл glibc.  Приложения используют <netinet/in.h>.<br>
В норме макрос IP_BIND_ADDRESS_NO_PORT есть в обоих файлах, что<br>
означает, что поддержка есть и в ядре, и в glibc.  Утверждение о<br>
том, что "константа определена не в том файле", ошибочное.<br>
<br>
Как Вам уже пытался ранее объяснять Валентин, проблема заключается<br>
в том, что в установленной версии glibc нет поддержки этого макроса.<br>
<br>
Для себя Вы можете проблему решить так:<br>
<br>
        configure --with-cc-opt=-DIP_BIND_<wbr>ADDRESS_NO_PORT=24<br></blockquote><div><br><br></div><div>для себя я, конечно, решу.<br><br></div><div>первоначально мы попали в неочевидную ловушку<br></div><div>1) читаем про IP_BIND_<wbr>ADDRESS_NO_PORT<br></div><div>2) читаем, что начиная с centos-7.4 должно работать<br></div><div>3) ставим официальный пакет<br></div><div>4) не работает (но чтобы это понять, пришлось залезть в отладочный лог и попрыгать с strace)<br><br></div><div>в официальном пакете поправите ?<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">______________________________<wbr>_________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/<wbr>mailman/listinfo/nginx-ru</a></div></div></blockquote></div><br></div></div>