매뉴얼 페이지에는 다음과 같이 나와 있습니다.
getaddrinfo(3) 함수는 IPv4 소켓 주소 구조 생성에만 국한되지 않습니다. IPv6 지원이 가능하다면 IPv6 소켓 주소 구조를 생성할 수 있습니다. 이러한 소켓 주소 구조는 클라이언트 또는 서버 소켓을 준비하기 위해 바인드(2) 또는 connect(2)에서 직접 사용할 수 있습니다.
getaddrinfo
억지로 하려면 어떻게 해야 할까요?아니요IPv6 소켓 주소 구조를 만드시겠습니까?
답변1
재미있게,내가 물어본 첫 번째 질문은이 웹사이트에는 귀하에게 유용할 수 있는 답변이 있습니다.
요약하자면, /etc/gai.conf
getaddrinfo() 시스템 호출은 이 파일을 사용하여 응답 방법을 결정합니다. 특정 사례의 경우 다음을 추가하십시오.
precedence ::ffff:0:0/96 100
구성 파일의 끝까지 도달하는 데 충분해야 합니다.
답변2
맨페이지에 따르면 getaddrinfo()
매개변수에 주소 계열을 전달할 수 있으므로 hints
다음과 같습니다.
struct addrinfo 프롬프트, *result; 정수; memset(&힌트, 0, sizeof(힌트)); Tip.ai_family = AF_INET; /* 또는 ipv6 주소의 경우 AF_INET6*/ s = getaddrinfo(NULL, "ftp", &hints, &result); ...
나는 그것을 시도하지 않았지만 이 접근 방식이 올바른 것 같습니다.