https://bugs.centos.org/view.php?id=14828
до RHEL-овских дистрибутивов доступа нет, у CentOS сейчас 4000+ неназначенных багов. шансы на то, что RedHat бросится это чинить, думаю, дай бог, чтобы к 7.6 поправили пересоберете пакет с поддержкой опции ? 15 мая 2018 г., 16:18 пользователь Konstantin Pavlov <[email protected]> написал: > Здравствуйте, Илья, > > 14.05.2018 13:30, Илья Шипицин wrot> 14 мая 2018 г., 15:04 пользователь > Ruslan Ermilov <[email protected] > > <mailto:[email protected]>> написал: > > > > On Mon, May 14, 2018 at 12:14:28PM +0500, Илья Шипицин wrote: > > > на днях зарелизился centos-7.5, в нем, к сожалению, все по прежнему > > > > > > завел тикет > > > > > > https://trac.nginx.org/nginx/ticket/1553 > > <https://trac.nginx.org/nginx/ticket/1553> > > > > > > посмотрите ? > > > > > > 29 апреля 2018 г., 3:40 пользователь Валентин Бартенев < > [email protected] <mailto:[email protected]>> > > > написал: > > > > > > > On Saturday, 28 April 2018 15:03:49 MSK Илья Шипицин wrote: > > > > > привет! > > > > > > > > > > поддержка IP_BIND_ADDRESS_NO_PORT официально началась в ядре > 4.2, но ... > > > > > ее портировали в 3.10 на CentOS-7.4 > > > > > > > > > > однако, портировали не очень качественно. константа определена > не в том > > > > > файле, в котором должна (и в котором ищет nginx) > > > > > > > > > > [root@xxx ~]# grep -r IP_BIND_ADDRESS_NO_PORT /usr/include/ > > > > > /usr/include/linux/in.h:#define IP_BIND_ADDRESS_NO_PORT 24 > > > > > [root@xxx ~]# > > > > > > > > > > > > > > > т.е. если пакет собирать, как он собирается обычно, то > поддержка > > > > > IP_BIND_ADDRESS_NO_PORT не включается (хотя могла бы). > > > > > > > > > > скажите, вы официальные пакеты собираете каким образом ? > кажется, имеет > > > > > смысл поправить эту процедуру и дать эту крутую фичу > пользователям > > > > > CentOS-7.4 > > > > > > > > > > > > > Дело же не в ядре (не только в нем). На линуксах интерфейс > обеспечивает > > > > glibc и именно туда смотрит nginx. > > > > <linux/in.h> - это заголовочный файл ядра. <netinet/in.h> - это > > заголовочный файл glibc. Приложения используют <netinet/in.h>. > > В норме макрос IP_BIND_ADDRESS_NO_PORT есть в обоих файлах, что > > означает, что поддержка есть и в ядре, и в glibc. Утверждение о > > том, что "константа определена не в том файле", ошибочное. > > > > Как Вам уже пытался ранее объяснять Валентин, проблема заключается > > в том, что в установленной версии glibc нет поддержки этого макроса. > > > > Для себя Вы можете проблему решить так: > > > > configure --with-cc-opt=-DIP_BIND_ADDRESS_NO_PORT=24 > > > > > > > > для себя я, конечно, решу. > > > > первоначально мы попали в неочевидную ловушку > > 1) читаем про IP_BIND_ADDRESS_NO_PORT > > 2) читаем, что начиная с centos-7.4 должно работать > > 3) ставим официальный пакет > > 4) не работает (но чтобы это понять, пришлось залезть в отладочный лог и > > попрыгать с strace) > > > > в официальном пакете поправите ? > > Нам усиленно кажется, что исправлять это надо в RHEL/CentOS. Повесьте > им багу о несоответствии интерфейсов ядра и glibc, это наилучший выход > из этой ситуации. > > -- > Konstantin Pavlov > https://www.nginx.com/ >
_______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
