#техничка
Сегодня я хочу поделиться своей первой технической статьей на этом канале. Когда я начал переносить docker контейнеры с centos 6 на centos 7, то столкнулся с ошибками в приложении связанными с resolve IP адресов вебсервером (nginx). Вопреки ожиданиям, хостнейм в upstream nginx резолвился в IPv4 и IPv6 адреса, а этого не ожидал сам сервис: он слушал только IPv4. Но фишка в том, что host, dig и т.п. определяли только IPv4 адрес, а IPv6 не было в списке. В /etc/hosts тоже не было информации. Это вынудило меня провести детальное исследование с результатами которого и делюсь.
Из статьи вы узнаете:
1️⃣ какой алгоритм в Linux для резолва хостнеймов;
2️⃣ как переопределить логику определения хостнеймов;
3️⃣ какие функции и библиотеки использует ОС;
4️⃣ какие ловушки существуют при конфигурировании и как их не допускать.
https://dmenshikov.com/2018-03-16-hostname-resolving-on-linux/
Сегодня я хочу поделиться своей первой технической статьей на этом канале. Когда я начал переносить docker контейнеры с centos 6 на centos 7, то столкнулся с ошибками в приложении связанными с resolve IP адресов вебсервером (nginx). Вопреки ожиданиям, хостнейм в upstream nginx резолвился в IPv4 и IPv6 адреса, а этого не ожидал сам сервис: он слушал только IPv4. Но фишка в том, что host, dig и т.п. определяли только IPv4 адрес, а IPv6 не было в списке. В /etc/hosts тоже не было информации. Это вынудило меня провести детальное исследование с результатами которого и делюсь.
Из статьи вы узнаете:
1️⃣ какой алгоритм в Linux для резолва хостнеймов;
2️⃣ как переопределить логику определения хостнеймов;
3️⃣ какие функции и библиотеки использует ОС;
4️⃣ какие ловушки существуют при конфигурировании и как их не допускать.
https://dmenshikov.com/2018-03-16-hostname-resolving-on-linux/