Странные вещи какие-то. Ещё недавно, когда сокет биндился на "[::]:port", то он принимал коннекты и на IPv4 тоже. А сейчас только IPv6. Может какая-то настройка sysctl за это отвечает?
⚛️Revertron :straight:
Странные вещи какие-то. Ещё недавно, когда сокет биндился на "[::]:port", то он принимал коннекты и на IPv4 тоже. А сейчас только IPv6. Может какая-то настройка sysctl за это отвечает? 3 comments
⚛️Revertron :straight:
@grishka Кажется, как раз наоборот, надо некий ANY указывать, нет? И у меня нет к этому доступа, глубоко в недрах либы создаётся сокет :(
Григорий Клюшников
⚛️Revertron, так 0 же, ты выключаешь ipv6 only. Ну и в итоге всё равно будет приходить sockaddr_in6, там IPv4-адрес будет засунут в 4 младших байта по-моему. |
Надо вот так сделать
int flag=0;
setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, &flag, sizeof(flag));